我正在从场中的一台服务器上建立新的 Web 服务器(扩展场)。这些是 Windows 2008 R2 服务器 (IIS 7.5)。将 applicationHost.config 从一台机器复制到新机器的部分过程是 RSA 密钥也需要复制到该机器;否则,您的应用程序池可能会出现问题,尤其是当您使用域用户作为自定义 [池] 身份时。
在我正在建模的农场机器上,我使用以下命令导出 .NET v4 密钥:
aspnet_regiis.exe -px "iisConfigurationKey" "c:\temp\iisConfigurationKey.xml" -pri
aspnet_regiis.exe -px "iisWasKey" "c:\temp\iisWasKey.xml" -pri
当我运行这些命令中的任何一个时,我都会收到错误“未找到 RSA 密钥容器”。我已经从 .NET v2 和 v4 以及 Framework 和 Framework64 尝试过这个,结果相同。
有没有办法可以确定密钥在这台机器上的存储位置,以便我可以转移它们。在我能够做到这一点并能够解密 applicationHost.config 中的数据并让应用程序池再次运行之前,我有点卡住了。
我想我的另一个问题是,有没有办法重置新机器上的密钥(或重置 applicationHost.config 文件),以便我可以在应用程序池上设置新的自定义身份?
确保当您以Administrator身份打开 cmd 窗口时。
aspnet_iisreg 命令仍将在没有管理员身份的情况下运行,但您将无法访问密钥容器。
如果您无权访问该容器,也会显示 消息“未找到 RSA 密钥容器”。
一旦我以管理员身份打开 cmd 控制台(右键单击以管理员身份运行),问题中的命令就会按预期工作。