3

我正在研究如何使用 Google 的实现来实现 OpenID Connect,但我不清楚在初始收到 ID 令牌后如何处理与用户的基于令牌的请求身份验证。我的问题是 - 什么是“标准”做法?看来我至少有两个选择。

  1. 将 OIDC 提供者的 ID 令牌以标头或 cookie 的形式传递给客户端 JS,并让后续的 REST API 调用在 Bearer 标头中传递令牌(在服务器端对每个请求进行验证)。

  2. 生成一个新的 JWT 并遵循与 #1 中相同的协议。

当 JWT 到期时,最好的处理方式是什么?如果我的应用程序正在生成 JWT(选项 #2),是否是自动生成新的典型过程?如果使用 OIDC 提供程序的令牌作为身份验证令牌(选项 #1),是否通常使用 prompt=none 重复身份验证过程?

我也很好奇是否有替代方法可以在登录期间使用存储在服务器会话中的“状态”值。我想避免创建特定于服务器的会话。将 JWT 用于状态并在从客户端收到带有授权码的返回时对其进行验证是否安全?

我只对身份验证功能感兴趣,此时不需要 OAuth 提供的其他 API。

4

0 回答 0