Google Oauth2:在客户端刷新id_token



我正在开发一个angularjs web应用。

访问服务器端api,我需要添加一个id_token头和我收到一个id_token,通过使用https://accounts.google.com/o/oauth2/auth endpoint

问题的关键在于——id_token有一个到期日期。在访问服务器API之前,我需要确保id_token还没有过期,但如果过期了,显然的选择是刷新它

我是否可以刷新id_token?

我知道我可以将access_type更改为offline,并接收refresh_token,但是请求离线访问似乎很奇怪,当基本上在我的情况下,用户仅在他实际在线使用web应用程序时与服务器交互。

忘掉刷新令牌和脱机访问吧。此方法仅适用于服务器和桌面应用程序。在浏览器中使用刷新令牌将是一个巨大的安全漏洞。

如果你阅读了Google JS OAuth库的文档,你会发现,一旦当前的访问令牌过期,很容易获得新的访问令牌。请参阅gapi.auth.authorize(),并注意immediate=true的注释。注意,尽管这种方法有效,但已弃用。你需要的一切都在https://developers.google.com/api-client-library/javascript/reference/referencedocs

当id_token过期时,客户端从服务器请求新的令牌服务器,这样用户就不需要再次授权。

从为OPENID连接隐式流在ANGULAR中实现静默令牌更新

相关内容

  • 没有找到相关文章

最新更新