我看到其他几个人发布了这个问题,然而,我尝试过的解决方案都没有解决这个问题。我有一个运行VS 2008的32位XP,我正在尝试加密我的web.config文件中的连接字符串。
但我收到错误: 找不到配置部分'...'。失败!
我给它的命令: C:\ Program Files \ Microsoft Visual Studio 9.0 \ VC> Aspnet_regiis.exe -pe“system.we b / AdventureWorksConnectionString2“-app”/ Documents and Settings / Admin / My Docume nts / Visual Studio 2008 / Projects / AddFileToSQL2“
另外,-app映射虚拟目录怎么办?换句话说,上面的路径是c:正下方的目录。这是正确的使用途径吗? AddFileToSQL2是我的项目的名称,虽然它是AddFileToSQL解决方案的一部分。
我将此文件夹与所有权限共享。
我的web.config文件的相关部分:
<add name="AdventureWorksConnectionString2" connectionString="Data Source=SIDEKICK;Initial Catalog=AdventureWorks;Persist Security Info=true; User ID=AdventureWorks;Password=sqlMagic"
providerName="System.Data.SqlClient" />
答案 0 :(得分:2)
使用DPAPI,据我所知,您只能加密整个部分。因此,您不能仅加密一个连接字符串,而是加密整个connectionStrings部分。其次,-app
指的是IIS服务器上应用程序的虚拟路径,它应该在其中找到给定的部分和配置文件。因此,如果您的网站看起来像这样:
root
/appFoo
并且您希望加密/ appFoo中的连接字符串
aspnet_regiis -pe "connectionStrings" -app "/appFoo"
How To: Encrypt Configuration Sections in ASP.NET 2.0 Using DPAPI