繁体   English   中英

仅Oauth撤销访问令牌

[英]Oauth Revoke access token only

我正在使用OAuth 2.0登录我的网站中的用户。 就像任何类型的网站一样,例如Google,Asana等。

我想知道的是,是否有一种方法可以在用户注销时仅撤销访问令牌而不是刷新令牌。

这是我的工作:

当用户登录时,我创建一个会话并获取访问令牌(如果用户是首次登录,则获取刷新令牌)。 当用户注销时,我只是使会话无效,但访问令牌仍然有效。

当然,一段时间后或当用户再次登录Web应用程序时,访问令牌将失效,但我想知道的是在注销过程中访问令牌是否可以失效。

对于令牌撤销行为wrt的实现,没有通用的答案。 相关令牌是特定于授权服务器的。 Google会将刷新令牌和被撤消的访问令牌一起无效,其他实现可能选择不这样做。 其他实现可能甚至根本不提供撤销访问令牌的方法。

对于Google,您可以按照https://developers.google.com/accounts/docs/OAuth2WebServer#tokenrevoke中所述在注销后撤消访问令牌,但也会撤消关联的刷新令牌。 然后,您必须再次执行授权代码流程,以获取新的刷新令牌,可以将其与prompt=none一起尝试,以避免提示用户。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM