如何将声明添加到为机器对机器应用程序类型分配有 auth0 的 JWT



我正在使用auth0作为单点登录的OIDC提供程序。

到目前为止,我尝试使用两种应用程序类型登录,一方面是本机应用程序类型,另一方面是机器对机器应用程序类型。

但是,当我登录时,我只收到一个非常简单id_token,具有以下有效负载:

{
  "https://example.com/roles": [
    "user"
  ],
  "iss": "https://my.idp.provider.com",
  "sub": "oauth2|someconnection|samlp|somecompany|someusername",
  "aud": "REMOVED",
  "iat": 1547652649,
  "exp": 1547688649
}

我想向此令牌添加一个group声明。如何配置 Auth0 租户以添加"group": "admin"作为声明?是否需要在身份验证客户端中启用特定范围才能接收groups声明?

我已经在 auth0 中安装并配置了授权扩展,但这对我的令牌中的声明没有任何影响。我知道授权扩展不支持机器对机器的应用程序。因此,我添加了本机应用程序并尝试使用它登录,但这也没有返回任何其他声明。

配置授权扩展后,可以从规则向颁发的 JWT 令牌添加自定义声明。这里有一个示例规则可以完成这项工作:https://auth0.com/docs/extensions/authorization-extension/v2/rules#add-custom-claims-to-the-issued-token

您也可以使用 Hook: https://auth0.com/docs/api-auth/tutorials/client-credentials/customize-with-hooks 自定义客户端凭据令牌

编辑:OIDC 兼容应用程序要求您定义命名空间,因为角色和组等授权数据不是 OIDC 声明。

最新更新