Authentication OpenID连接服务器是否应该提供两次相同的令牌?

Authentication OpenID连接服务器是否应该提供两次相同的令牌?,authentication,oauth-2.0,openid,openid-connect,Authentication,Oauth 2.0,Openid,Openid Connect,这个问题可能被认为是“过于宽泛”或“良好做法”,但我想可能有一些RFC可以回答这个问题 我目前正在开发我的OIDC服务器,我面临着一种不确定如何处理的情况 用户一直在使用web应用程序执行常规授权代码流。最后,web应用程序拥有一个有效的ID令牌。现在,由于某些原因,web应用程序很快就会忘记此令牌,并且用户再次运行身份验证流: OP是否应该提供上一个ID令牌,因为它仍然有效?或者这里有一些安全问题 如果不是,OP应该再次请求用户同意,还是认为它已经有了? 我想你可以在这里找到答案:。还要注意

这个问题可能被认为是“过于宽泛”或“良好做法”,但我想可能有一些RFC可以回答这个问题

我目前正在开发我的OIDC服务器,我面临着一种不确定如何处理的情况

用户一直在使用web应用程序执行常规授权代码流。最后,web应用程序拥有一个有效的ID令牌。现在,由于某些原因,web应用程序很快就会忘记此令牌,并且用户再次运行身份验证流:

  • OP是否应该提供上一个ID令牌,因为它仍然有效?或者这里有一些安全问题
  • 如果不是,OP应该再次请求用户同意,还是认为它已经有了?

    • 我想你可以在这里找到答案:。还要注意此处的措辞:,即“与经过身份验证的会话相关联的ID令牌值”

      我的解释是:可以看到ID令牌与OP可能拥有的经过身份验证的会话相关联,具体取决于实现。因此,是的,OP可以提供相同的ID令牌,除非身份验证请求的提示参数需要重新身份验证或同意。
      如果客户端总是希望/需要明确的身份验证和/或同意,则可以使用prompt参数来实现此目的。

      我想您可以在此处找到答案:。还要注意此处的措辞:,即“与经过身份验证的会话相关联的ID令牌值”

      我的解释是:可以看到ID令牌与OP可能拥有的经过身份验证的会话相关联,具体取决于实现。因此,是的,OP可以提供相同的ID令牌,除非身份验证请求的提示参数需要重新身份验证或同意。 如果客户端总是希望/需要明确的身份验证和/或同意,则可以使用prompt参数来实现此目的