【问题标题】:Can we request OAuth 2 scopes in OIDC?我们可以在 OIDC 中请求 OAuth 2 范围吗?
【发布时间】:2021-12-09 09:45:03
【问题描述】:

我知道 OIDC 用于联合身份验证,在 /authorize 端点中,我们可以传递标准/自定义范围,例如 openid 配置文件名称电子邮件 等。基于范围,我们在ID 令牌,以及访问令牌与这些范围一起发布,客户端可以使用访问令牌来调用 /userinfo 端点。作为响应,我们会根据 OIDC 范围返回用户信息。

类似地,在 OAuth2.0 的情况下,客户端可以请求 OAuth 范围(基于资源服务器支持的范围),例如 create-api read-api delete-api 等;并且在用户同意的情况下,使用这些范围颁发访问令牌。

我的问题是:在 OIDC 中,客户端可以同时通过 OIDC 和 OAuth 范围吗?例如。在 /authorize 端点中,客户端可以传递诸如 openid name read-api write-api admin 之类的范围,它发出 ID 令牌 和一个 具有所有这些范围的访问令牌?并且访问令牌可用于调用 /userinfo 端点和访问用户的资源?这是标准做法吗?

【问题讨论】:

    标签: oauth openid-connect scopes


    【解决方案1】:

    是的,实际上所有范围都是“OAuth 2.0”范围,因为 OpenID Connect 是 OAuth 2.0 的超集。范围实际上不绑定到 ID 令牌,它们绑定到访问令牌。生成的访问令牌可用于调用用户信息端点以及任何其他受 OAuth 2.0 保护的资源。

    【讨论】:

      猜你喜欢
      • 2021-07-25
      • 2011-08-21
      • 1970-01-01
      • 2015-02-26
      • 2015-09-20
      • 1970-01-01
      • 2023-01-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多