我们有使用“NT Authority\Network Service”的网站。
Response.Write(WindowsIdentity.GetCurrent().Name);
我们目前正在使用以下命令来加密配置文件。
aspnet_regiis -pc "NetFrameworkConfigurationKey"
aspnet_regiis -pa "NetFrameworkConfigurationKey" "NT Authority\Network Service"
aspnet_regiis.exe -pef "connectionStrings" "C:\WebAppLocation\Folder"
注意:我们没有使用“-exp”。当我们使用“-exp”时,它不会创建 RSA 密钥容器。
如您所见,我们使用的是默认密钥——NetFrameworkConfigurationKey。我们的网站有一个负载均衡器。Webserver1(W1) 和 WebServer2 (W2) 可用。
如果我遵循上述命令,我们将在 W1 和 W2 上使用单独的键。但是,该网站使用这种方法。
这种方法是否足够?它有任何缺点或安全漏洞吗?在任何情况下都会失败吗?
注意:机器密钥已添加到我们的 web.config 中。两种配置都是一样的。但是,我们的 configProtectedData 不在 Web.Config 中。另外,我认为两台服务器的 NetFrameworkConfigurationKey 会有所不同。
我已阅读以下有关 Web Farm 场景中的加密的 msdn 文章。 http://msdn.microsoft.com/en-us/library/ff650304.aspx