gpt4 book ai didi

oauth-2.0 - 在 userinfo 端点使用 ID token 或访问 token ?

转载 作者:行者123 更新时间:2023-12-04 17:52:00 26 4
gpt4 key购买 nike

我有一个客户端 API,它是一个 secret 客户端。当我使用开放 ID 提供程序进行身份验证时,我将被重定向到带有授权代码的回调,该代码会立即交换以接收刷新 token 、访问 token 和 ID token 。

现在,我为经过身份验证的用户创建一个具有 uuid 的 session cookie。当用户提出请求时,我是否...

  1. 使用我的访问 token 调用提供商 userinfo 端点以获取用户信息。
  2. 读取经过验证的 ID token 以获取用户信息。

在使用刷新 token 时,我看到了 2 个选项:

  1. 在请求期间读取有效的 ID token 或访问 token 后,使用刷新 token 获取新的访问 token 或 ID token 以存储在新的 uuid 中,该 uuid 与更新后的 cookie 一起返回给用户。虽然要求用户登录更多,但这意味着用户 session 在他们不活动后变得无效,等于访问或 ID token 的生命周期。这可能更安全。
  2. 使用 ID token 或访问 token 直到有效,然后刷新以获取新 token 。如果刷新永不过期,即使长时间不活动(除非 cookie 过期时间很短),用户也永远不必再次登录。安全性可能较低。

想法?

最佳答案

先做几点说明:

  • 应用程序 session 的生命周期(通常)独立于 ID token 的生命周期;后者只是对用户身份的断言,不代表 session
  • 您的第一个选项不适用于并行请求,例如当用户打开您的应用程序的多个选项卡或应用程序使用 Javascript 调用时

但最重要的是:不应使用刷新 token 来获取新的 ID token ,它应该只刷新访问 token ;用户需要在场才能获得与原始 token 具有相同语义的新 ID token 。

关于oauth-2.0 - 在 userinfo 端点使用 ID token 或访问 token ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43928947/

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