实体框架6-用户输入数据库凭证

时间:2017-07-25 08:13:59

标签: c# entity-framework entity-framework-6

目前我有一个C#控制台应用程序,它使用Entity Framework 6连接到SQL数据库。我在app.config文件中将数据库凭据(用户名,密码,DBName等)作为连接字符串。我知道这是一个安全漏洞,所以我希望能够将Database Credentials作为用户输入。然后,我想使用用户输入的内容连接到数据库。有没有办法将参数传递到app.config?如果没有,实现这一目标的最佳方法是什么?谢谢!

1 个答案:

答案 0 :(得分:1)

如果您需要在连接字符串中保护密码,可以考虑加密$..[?(@.code == 'DEF')] 中的connectionstrings部分。有几种方法可以实现,但使用app.config实用程序最简单。有关示例,请参阅here

如果要避免在aspnet_regiis中存储密码,则应使用运行时提供的输入在代码中构建连接字符串。 @ fuchs777评论中提到的SO帖子解释了如何做到这一点。