目前我有一个C#控制台应用程序,它使用Entity Framework 6连接到SQL数据库。我在app.config文件中将数据库凭据(用户名,密码,DBName等)作为连接字符串。我知道这是一个安全漏洞,所以我希望能够将Database Credentials作为用户输入。然后,我想使用用户输入的内容连接到数据库。有没有办法将参数传递到app.config?如果没有,实现这一目标的最佳方法是什么?谢谢!
答案 0 :(得分:1)
如果您需要在连接字符串中保护密码,可以考虑加密$..[?(@.code == 'DEF')]
中的connectionstrings
部分。有几种方法可以实现,但使用app.config
实用程序最简单。有关示例,请参阅here。
如果要避免在aspnet_regiis
中存储密码,则应使用运行时提供的输入在代码中构建连接字符串。 @ fuchs777评论中提到的SO帖子解释了如何做到这一点。