"scope"是标准声明吗?



OpenID Connect、JWT或OAuth中是否有标准的scope声明?

在IdentityServer 4文档中;"范围";它是一个间隔开的字符串。

{
"client_id": "mobile_app",
"sub": "123",
"scope": "read write delete"
}

但是从我的IdentityServer 4实例中;"范围";在作为字符串数组的访问令牌中声明。

{
// ...
"client_id": "mobile_app",
"sub": "123",
"scope": [ "openid", "profile", "email", "offline_access" ],
"amr": [ "pwd" ]
}

在OpenID Connect Core 1.0规范中;"范围";列为索赔。在RFC 7519 JSON Web令牌(JWT(规范中;"范围";列为索赔。

scope声明由令牌交换RFC标准化。根据规范,它应该是一个JSON字符串,带有空格分隔的作用域标记。

;"范围";claim是一个JSON字符串,包含与令牌关联的作用域的空格分隔列表。。。

大多数提供商都支持AT+JWT令牌类型,并且在其中指定它应该包括一个范围声明:

  • OAuth 2.0访问令牌的JSON Web令牌(JWT(配置文件

上面写着:

如果授权请求包含范围参数,则相应发布的JWT访问令牌必须包括范围声明定义见[TokenExchange]第4.2节。

作用域声明中的所有单独作用域字符串必须具有含义针对aud声明中指示的资源。

最新更新