在 ASP.NET Core 2.1 中,为什么 SSO(使用 OpenID 连接)不能与 2 pods 一起工作。然而,它适用于一个 pod
In ASP.NET Core 2.1, why SSO (using OpenID connect) not working with 2 pods. However it works fine with one pod
在对 OpenID Connect 机制(包括 .NET Core 中的身份验证 DLL 会话和 cookie)进行了大量研究之后,在此提出这个问题。希望像您这样的专家能够帮助我解决长期悬而未决的问题。
当我 运行 我的应用程序有多个 pod 时,我无法登录到应用程序并出现以下异常。使用单个 pod,它工作正常。
Exception: The oauth state was missing or invalid. (Unknown location)
Exception: An error was encountered while handling the remote login.
我在 Visual Studio 2017 年使用 ASP.NET Core 2.1,并使用 OpenId Connect 机制实现了 SSO。使用 Ping 作为身份提供者。
应用部署在ICP(IBM Cloud)环境,使用Kubernetes创建pods。
获取异常后,如果我一直打开浏览器不点击,异常变为:
Exception: OAuth Token Endpoint Failure: Status:BadRequestHeader
我尝试了一些操作,例如为应用程序启用 SQL 服务器会话状态(考虑到它是一个分布式会话场景,并且 cud 是会话值在其他 pod 上不可用),启动文件中的 Samesite 配置,实施 ITicket会话存储和其他一些存储,但运气不好。
在对 OpenID Connect 机制(包括 .NET Core 中的身份验证 DLL 会话和 cookie)进行了大量研究之后,在此提出这个问题。希望像您这样的专家能够帮助我解决长期悬而未决的问题。
当我 运行 我的应用程序有多个 pod 时,我无法登录到应用程序并出现以下异常。使用单个 pod,它工作正常。
Exception: The oauth state was missing or invalid. (Unknown location)
Exception: An error was encountered while handling the remote login.
我在 Visual Studio 2017 年使用 ASP.NET Core 2.1,并使用 OpenId Connect 机制实现了 SSO。使用 Ping 作为身份提供者。
应用部署在ICP(IBM Cloud)环境,使用Kubernetes创建pods。
获取异常后,如果我一直打开浏览器不点击,异常变为:
Exception: OAuth Token Endpoint Failure: Status:BadRequestHeader
我尝试了一些操作,例如为应用程序启用 SQL 服务器会话状态(考虑到它是一个分布式会话场景,并且 cud 是会话值在其他 pod 上不可用),启动文件中的 Samesite 配置,实施 ITicket会话存储和其他一些存储,但运气不好。