我有两台服务器,在服务器之间的通信中,我检查了IIS级别的机器密钥。现在我在net core中有一个新项目,我想像 Asp.net 项目一样检查机器密钥。我搜索这个但找不到解决方案
2 回答
达令说
TA贡献1821条经验 获得超6个赞
嗯,这有点取决于你在做什么。如果您的项目使用 Microsoft Identity,则 Identity 默认使用机器密钥作为哈希的一部分。因此,就我而言,我的网站会发送一封电子邮件,要求用户验证他们的电子邮件。该链接包括基本上是加密的密码哈希 - 部分 - 使用来自它的服务器的机器密钥。
因此,如果用户单击该链接,然后在场中的另一台服务器上结束,则验证检查将失败,除非在负载均衡器后面的各个服务器上将机器密钥设置为相同。
所以在这一点上我还没有找到在发布到 IIS 时设置机器密钥的好方法。web.config 是在从我的 ASP.NET 核心项目发布期间自动生成的。此时我找到的唯一解决方案是在发布项目后手动打开 web.config 并在部署到场中的服务器之前插入机器密钥部分。
- 2 回答
- 0 关注
- 130 浏览
添加回答
举报
0/150
提交
取消