2011-05-20 61 views
2

我会在web.config中加密的appSettings:加密Web.Config中

方法很多地方工作过,但问题是我需要加密/解密webconfig多次生产服务器上,而我不想要网络管理员,每次我们这样更改web.config权限?

有什么更好的方法来确保appsettings?如果你要这样,你需要做的是确保AppSettings的内容

+0

我看到了两个答案,但我应该使用哪一个? – Bart 2011-05-20 07:07:59

+0

我没有对web.config – Bart 2011-05-20 07:08:29

+0

的写入权限,则需要从具有权限的帐户运行命令行。您可以右键单击命令提示符,然后说“以管理员身份运行”或者以具有权限的用户身份登录,或者从命令行使用不同帐户打开记事本,例如:runas/user:whoever notepad.exe然后打开网页.config – 2011-05-30 05:11:24

回答

0
+0

请记住,这不是每个人都可以使用的。许多公司甚至不允许在他们的网络上使用开源工具,更不用说通过变更控制将其安装在生产环境中。在接受你自己的答案之前,考虑下面的选项,除了框架提供的内容之外不需要任何东西(这很容易实现) – 2011-10-14 17:30:33

3

。但是如果您想在服务器场中部署Web应用程序,可能会出现问题。在这种情况下,您可能需要查看Creating and Exporting an RSA Key Container。或者你可以将appsettings的值赋给数据库并从那里读取。

1

我建议您在应用程序启动后对其进行加密。这将确保这些值始终是加密的。

然后在您的源代码管理树或用于部署应用程序的安装程序文件中保留未加密的值。

6

aspnet_regiis -pe是我假设你所指的方法。

首先,只有当您部署到服务器(您正在计划使用的服务器)时才会发生这种情况。其次,网络管理员只需要运行管理提示来执行此操作 - 他们不需要更改文件的权限。我说说这一点在视频中的位置:http://channel9.msdn.com/Events/TechEd/NorthAmerica/2011/DEV333

1

您可以使用随.NET框架应用程序的aspnet_regiis.exe(注:每个框架具有不同ASPNET_REGIIS.EXE应用程序)

如果你的应用程序是在框架2.0中,您可以使用aspnet_regiss.exe -pef或aspnet_regiss.exe -pe来加密配置文件中选定的部分。

你可以参考链接

http://msdn.microsoft.com/en-us/library/k6h9cz8h(v=vs.80).aspx

希望的信息让你一个解决的更多信息!!!!!! :)