负载均衡IdentityServer4

时间:2020-09-29 12:28:32

标签: asp.net-core nginx https load-balancing identityserver4

我正在尝试使用docker容器设置本地nginx负载平衡IDS(使用混合模型和HTTPS)。

如果将IDS缩放为1,我可以成功登录。

当我使用循环样式平衡缩放到2或更大时,尝试登录时将重定向到登录页面。

最初的登录尝试击中IDS1,然后登录的第二个请求部分击中IDS2,这将返回以下错误:未找到请求路径的端点条目:/ Account / Login [IdentityServer4.Hosting.EndpointRouter] < / strong>

我已经验证了两个IDS都已启动并且正在运行,如果我点击了发现文档,我可以看到nginx对其进行了循环,并且每次都获得成功的结果。

编辑:我不再遇到错误,但是当我尝试登录到IDS2的登录的第二个请求部分时,仍然表现出我不是登录中过程,而是将我带到登录页面。

>

1 个答案:

答案 0 :(得分:1)

您需要配置Data Protection API并在两个服务中设置相同的密钥,因为否则ASP.NET将不接受来自其他服务的cookie。该密钥用于保护和加密Cookie。

为了了解数据保护API,我最近编写了此参考项目

  • AzureKeyVaultKeyRingRepository 目的是演示并显示如何在Azure Key Vault中存储ASP.NET Core数据保护API密钥环。 (博客即将发布)

详细了解数据保护API here