OAuth2 and Google API: Access token expiration time?
我们有一个独立的Java应用程序(请参阅"已安装的应用程序":https://developers.google.com/accounts/docs/OAuth2),该应用程序会定期运行并使用google API(更新来自客户数据库/ ldap / ...的一些信息) 。
要访问Google API,我们将用户名和密码存储在配置文件中,这存在安全隐患,客户不喜欢这样做。 因此,我们想改用OAuth2长寿访问令牌。
Google OAuth2访问令牌的默认到期时间是多少?
由于我们在应用程序中只有访问令牌,因此访问令牌过期时,应用程序本身无法刷新它...
我个人认为,在这种情况下,OAuth2实现不会带来任何重大好处,而是让我们关注主要问题-默认到期时间。
您不应基于访问令牌的特定生存期来设计应用程序。只是假设他们(非常)短暂。
但是,在成功完成OAuth2安装的应用程序流程后,您将获得刷新令牌。此刷新令牌永远不会过期,您可以根据需要使用它来将其交换为访问令牌。保存刷新令牌,并使用它们按需获取访问令牌(然后应立即将其用于获取用户数据)。
编辑:尽管以上我的评论,有两种简单的方法来获取访问令牌到期时间:
还有一个API返回access_token的剩余生存期:
https://www.googleapis.com/oauth2/v1/tokeninfo?access_token={accessToken}
这将返回一个包含
Google oauth2访问令牌的默认expiry_date为1小时。 expiry_date以Unix纪元时间(以毫秒为单位)。如果您想以人类可读的格式阅读它,那么只需在此处进行检查即可。.Unix时间戳为人类可读的时间
这是对Google访问令牌到期问题的进一步观察。我有一台使用Google Oauth2的服务器,它使用端点
有没有人看到仅以此方式使用的访问令牌的有效期限文档?