reactjs 使用OAuth 2.0/OpenID强制注销(完成会话)

rsaldnfx  于 2023-08-04  发布在  React
关注(0)|答案(1)|浏览(133)

我有一个基于React的单页应用程序(SPA),我想实现OAuth 2.0身份验证,特别是使用OpenID。
此应用程序在可由不同连续用户共享的设备上运行。因此,我需要确保用户在完成会话后注销。这样,下一个用户将被提示再次输入凭据。
要实现这一点,我是否应该将所有的安全性方面委托给身份验证提供者?或者OpenID提供了一种标准/通用机制来强制注销所有身份验证提供者都应该遵循的?是否有任何建议或良好做法来实现这一点?

  • 谢谢-谢谢
k10s72fa

k10s72fa1#

您的应用可以实现OpenID Connect注销,但您可能无法总是强制用户在结束会话时执行注销,例如,如果他们只是关闭应用。不过,您可以强制从应用程序中删除令牌。
一种方法是将令牌仅存储在内存中。另一种是使用HTTP仅会话cookie。您需要确保每个用户都有一个新的浏览器会话,没有任何剩余的cookie或令牌。
要注意的一个选项是OpenID Connect prompt=login参数,以强制新的登录。如果授权服务器发出持久SSO Cookie,浏览器重新启动后,这将非常有用。还应该可以转发授权服务器在使用外部身份提供者的流中发送prompt=login

相关问题