【问题标题】:Communication between Openid connect endpointsOpenid 连接端点之间的通信
【发布时间】:2017-02-05 01:05:47
【问题描述】:

我正在尝试了解 OAuth 2.0 和 OpenID Connect,但我有一个重要问题:OpenID Connect 端点如何相互通信?

示例:在授权代码流的情况下,如果授权端点将 access_token 提供给客户端,则此令牌会将此令牌发送到 UserInfo 端点以获取用户信息。 所以这里的问题是,UserInfo Endpoint 如何验证客户端发出的 access_token 是正确的?这两个端点之间是否有通信?

感谢您的回答。

【问题讨论】:

    标签: token openid connect oauth2 endpoints


    【解决方案1】:

    UserInfo Endpoint 必须能够解释从Authorization EndpointToken Endpoint 发出的访问令牌。

    在一个简单的实现中,所有端点都在一个服务器上实现。在这种情况下,UserInfo Endpoint 只需参考存储 Authorization Endpoint 或 Token Endpoint 颁发的访问令牌的同一个数据库表即可轻松获取有关访问令牌的信息。

    另一方面,如果 Authorization Endpoint 和 Token Endpoint 是在授权服务器上实现的,而 UserInfo Endpoint 是在资源服务器上实现的,则资源服务器必须查询授权服务器以获取有关访问令牌的信息。 RFC 7662(OAuth 2.0 Token Introspection)是定义如何从授权服务器获取访问令牌信息的标准。

    RFC 7662 是令牌自省的标准,但授权/资源服务器的实现者不一定有强烈的动机支持该规范。如果您对原因感兴趣,请参阅“4. Introspect Access Token”。

    顺便说一句,在授权代码流中,访问令牌不是从授权端点发出的,而是从令牌端点发出的。流程中授权端点发出的是授权码(不是访问令牌)。

    【讨论】:

    • 非常感谢您的解释。
    猜你喜欢
    • 1970-01-01
    • 2022-12-17
    • 2016-07-21
    • 2018-12-22
    • 1970-01-01
    • 2017-06-15
    • 2012-04-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多