我有一个使用自动生成的机器密钥运行的ASP.net 4.5应用程序。我需要启动另一台服务器,并希望将它的机器密钥设置为与另一台服务器相同,这样令牌和登录就可以跨两台服务器持久存在。有没有一种有效的方法来检索自动生成的机器密钥,以便在另一台服务器上使用?
为了澄清,我不能重新生成一个新的密钥并将其设置在两个服务器上,因为这将使任何现有的令牌失效。我正在尝试找到一种方法来实现这一点,而不会使任何现有的令牌失效。
发布于 2014-11-04 06:50:01
我不确定是否真的可以检索机器密钥,或者这可能是相当棘手的。你可能真的想评估一下设置新密钥有多难。
密钥存储在Windows管理的本地安全机构中,并以加密方式存储在注册表中。
下面的文章给出了一个解密存储值的示例。
http://blogs.technet.com/b/heyscriptingguy/archive/2012/07/06/use-powershell-to-decrypt-lsa-secrets-from-the-registry.aspx
它还使用相同代码的C#版本引用以下页面
http://www.pinvoke.net/default.aspx/advapi32/LSARetrievePrivateData.html
https://stackoverflow.com/questions/26705464
复制相似问题