gpt4 book ai didi

security - OAuth2 和 Google API : access token expiration time?

转载 作者:行者123 更新时间:2023-12-02 00:22:06 24 4
gpt4 key购买 nike

我们有一个独立的 Java 应用程序(请参阅 "Installed application" ),该应用程序定期运行并使用 Google API(更新来自客户数据库/ldap/...的一些信息)。

为了访问 Google API,我们将用户名和密码存储在配置文件中,这是一个安全风险,客户不喜欢这样。因此,我们希望使用 OAuth2 长期访问 token 来代替。

What`s default expiration time for Google OAuth2 access tokens ?

由于我们在应用程序中只有访问 token ,因此当访问 token 过期时应用程序本身无法刷新它。

我个人认为在这种情况下 OAuth2 的实现不会带来任何重大好处,但让我们关注主要问题 - 默认过期时间。

最佳答案

您不应根据访问 token 的特定生命周期来设计应用程序。假设它们的生命周期(非常)短暂。

但是,在成功完成 OAuth2 安装的应用程序流程后,您将获得刷新 token 。此刷新 token 永不过期,您可以根据需要使用它来交换访问 token 。保存刷新 token ,并使用它们按需获取访问 token (然后应立即使用该 token 来访问用户数据)。

编辑:尽管我有上述评论,但有两种简单的方法可以获取访问 token 过期时间:

  1. 当您交换刷新 token (使用/o/oauth2/token 端点)时,它是响应 (expires_in) 中的一个参数。 More details.
  2. 还有一个 API 可返回 access_token 的剩余生命周期:

    https://www.googleapis.com/oauth2/v1/tokeninfo?access_token= {访问 token }

    这将返回一个 json 数组,其中包含一个 expires_in 参数,该参数是 token 生命周期中剩余的秒数。

关于security - OAuth2 和 Google API : access token expiration time?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13851157/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com