ORY目前是否有一个功能可以验证客户端是否通过OpenID连接登录?我注意到有一个API到通过前通道登出。
然而,当用户重新访问身份提供者时,我无法知道他们目前是否登录。他们可以删除他们的客户端HTTP cookie,然后我就与九头蛇失去了同步。意思:九头蛇有他们的登录,但我现在有他们的注销。此外,在出现反向通道注销的情况下,我希望能够查询此状态。
是否有我正在忽略的API允许我知道客户端当前是否有通过Hydra的活动OpenID连接登录?
现在看来,唯一能做的事情就是将用户重定向到授权端点,因为我们无法知道他们是否被授权。
与Hydra一起提供的以下两个表似乎是我所追求的数据的真实来源:hydra_oauth2_access和hydra_oauth2_authentication_session。如果没有现成的受支持的HTTP来查看用户是否有活动的身份验证会话,那么直接查询这些内容是否有意义?
发布于 2020-12-15 21:12:07
通过重定向向提供者发送身份验证请求(包括prompt=none地址):如果提供程序中有正在进行的SSO会话,它将静默登录并返回新令牌,否则将返回错误代码login_required。
注意,在这两种情况下都不会有显式的用户交互,所以这很方便(并且意味着)在隐藏的iframe中运行。
发布于 2020-12-15 21:07:49
登录状态
OAuth客户端通常是具有多个用户的UI应用程序。每个用户的登录状态由应用程序或用户都无法访问的授权服务器会话cookie表示:
授权重定向
当OAuth UI重定向用户时,通常不知道:
对于Web,可以使用prompt=none参数在隐藏的iframe上发送授权重定向。如果用户需要在login_required中签名,将返回错误代码。有关详细信息,请参阅我的静默令牌更新页。
然而,这并不完全可靠,而且有一些2020年浏览器问题。此外,如果您使用的是不同类型的客户端,则可能不合适。
联邦登录
在一些设置中,AS将进一步重定向到标识提供者( IDP ),并且用户的登录状态进一步受到IDP会话cookie的影响。
应用程序无法获得用户的IDP登录状态,因为应用程序只与AS交互。
有可用性问题吗?
如果是的话,回发然后我们可以进一步讨论..。
https://stackoverflow.com/questions/65203280
复制相似问题