【发布时间】:2016-01-20 20:47:59
【问题描述】:
我正在寻找最安全、最方便的方法来将一些关键参数存储到我的 ASP.NET 网站的配置文件中(使用 Visual Studio 2012 使用 C# 编写代码,并使用 IIS 发布,但我没有知道这很重要),例如连接字符串和其他参数。
根据我的发现,我有以下选择:
- web.config。这样,只有我的网站才能访问这些设置。
问题:当我从 Visual Studio 发布网站的更改时,参数可能会被覆盖(或者有没有办法在发布期间不覆盖它们?)
- machine.config => 发布不会覆盖现有参数。
问题:机器上的所有网站都可以访问配置文件(这可能是一个安全问题)
- SQL Server:易于维护
问题:需要一个连接字符串来访问数据库。我应该在哪里存储连接字符串?
注册表:平均可维护性。无法为每个类别或网站定义特定的用户权限。
一个简单的 INI 文件。非常容易维护。但这足够安全吗?
提前感谢您的回答。
【问题讨论】:
-
您确实可以阻止 Visual Studio 在发布操作期间复制 web.config。 stackoverflow.com/questions/2812905/… 我倾向于将我的应用程序的配置数据放入一个单独的 .config 文件中,该文件从 web.config 中引用,然后阻止 VS 发布它。