.net-core - 在应用程序之间切换时,即使访问令牌/ID 令牌有效,IdentityServer 4 也会导航到登录屏幕。有什么见解吗?
问题描述
我们面临的问题是 Identity Server 4 在应用程序之间切换时经常(每天 2-3 次)将我们扔到登录屏幕(隐式流程 - Angular)。IDSrv 日志记录中没有引发任何问题/事件。
例子:
使用客户端名称说“First_Client”登录到应用程序 1,
另一个应用程序 2 使用相同的客户端“First_Client”。
应用程序 2 应该自动登录并且不需要重新输入凭据,但 10 次中有 3 次失败并静默导航到登录屏幕而不引发任何日志事件
早些时候我们很少面对它,但现在它太频繁了。快速帮助将不胜感激
IDsrv 配置设置有什么问题吗?我的意思是 Cookie 设置、身份验证设置等。
注意:在我的例子中,Identity Server 部署在两台服务器上以实现负载平衡。
下面是配置:
Startup.cs => 配置()
解决方案
当您拥有同一服务的多个副本时,您需要确保所有这些 cookie 都可以接受。默认情况下,来自一项服务的 cookie 在另一项服务中无效。
默认情况下,会话 cookie 包含您的访问令牌。
您需要将数据保护 API 配置为在应该接受相同 cookie 的服务中使用共享私钥。
有关详细信息,请参阅此链接:
推荐阅读
- tensorflow2.0 - Tensorflow 1.3教程学习Tensorflow 2.0
- angular - 无法将变量插入到 html 中的对象中
- vue.js - 计算内部的Vue访问错误
- java - 干净的代码:使用前缀获取 java 函数名
- c - 当数组是另一个函数的形式参数时,函数参数中类型定义的常量大小数组的地址会导致指针类型不兼容
- java - 某些验证方法遇到问题
- html - 折叠菜单中的一行社交图标
- html - 图像不适合 WKWebView
- reactjs - 忽略 Promoise.all 中失败的承诺
- sql-server - 如何在 SSIS 中使用 PDF 文件作为数据源