gpt4 book ai didi

oauth-2.0 - 在线申请是否需要刷新 token

转载 作者:行者123 更新时间:2023-12-03 14:56:16 24 4
gpt4 key购买 nike

根据 Google's docs似乎只有离线应用程序需要刷新 token (当用户不在时,应用程序可能会遇到过期的访问 token )。

Access tokens periodically expire. You can refresh an access token without prompting the user for permission (including when the user is not present) if you requested offline access to the scopes associated with the token.

...

Requesting offline access is a requirement for any application that needs to access a Google API when the user is not present. For example, an app that performs backup services or executes actions at predetermined times needs to be able to refresh its access token when the user is not present. The default style of access is called online.



但是, a description of refresh tokens in generalthis question in particular两者似乎都暗示在您想要请求新的访问 token 时需要刷新 token 。

我想我会同意谷歌的解释并且不使用刷新 token 。我对 OIDC 提供商的经验是,刷新工作如下:
  • 用户从客户端服务器请求 protected 资源
  • 客户端服务器确定访问 token 已过期。
  • 客户端服务器将用户重定向到 OP 身份验证端点
  • 由于存储在用户浏览器上的 cookie 与 OP 的域,OP 无需交互即可对用户进行身份验证。
  • 客户端服务器完成请求。

  • 用户可能会看到一些重定向,但除此之外,重新身份验证在没有与他们进行任何交互的情况下进行。鉴于此,如果用户将始终出现在应用程序中,是否有必要使用刷新 token ?

    最佳答案

    我对在线应用程序使用刷新 token 最大的担忧是它会带走 透明度 来自用户。

    刷新 token 有助于长期访问并应安全存储。但是它们也没有提供“退出”的自然方式,并且(最重要的是)它变得完全不透明,如常用的范围名称 offline_access 访问数据的方式、时间和地点。建议。

    OIDC 提供前 channel 机制 prompt=none这在很大程度上会导致相同的效果(即新 token ),并且如果在 iframe 内执行重新身份验证,则不需要中间重定向。

    因此,我认为您和 Google 是对的,答案必须是:不,如果用户在场,请不要使用刷新 token 。

    关于oauth-2.0 - 在线申请是否需要刷新 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43682691/

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