OpenID Connect 范围可以包含空格吗?
Can OpenID Connect Scopes Contain Spaces?
OpenID Connect 是否支持范围引用?
例如,请求 openid
范围与请求 "openid"
范围是否相同?
如果是,这是否意味着允许范围包含空格?
我试过this specification,但在这个问题上模棱两可。
见原文oauth2 rfc:
The value of the scope parameter is expressed as a list of space-
delimited, case-sensitive strings. The strings are defined by the
authorization server. If the value contains multiple space-delimited
strings, their order does not matter, and each string adds an
additional access range to the requested scope.
scope = scope-token *( SP scope-token )
scope-token = 1*( %x21 / %x23-5B / %x5D-7E )
据此,openid
和"openid"
是不同的范围,space分隔范围名称(因此不允许作为[=24=的一部分] 作用域名称)。
更新
请注意,尽管在 scope-token 中,它明确省略了 %x22,即双引号。所以 "openid"
不是有效的范围名称。顺便说一句,它还删除了 %x5C,这是一个反斜杠,大概是为了使授权服务器实现中的验证更容易。
OpenID Connect 是否支持范围引用?
例如,请求 openid
范围与请求 "openid"
范围是否相同?
如果是,这是否意味着允许范围包含空格?
我试过this specification,但在这个问题上模棱两可。
见原文oauth2 rfc:
The value of the scope parameter is expressed as a list of space-
delimited, case-sensitive strings. The strings are defined by the
authorization server. If the value contains multiple space-delimited
strings, their order does not matter, and each string adds an
additional access range to the requested scope.
scope = scope-token *( SP scope-token )
scope-token = 1*( %x21 / %x23-5B / %x5D-7E )
据此,openid
和"openid"
是不同的范围,space分隔范围名称(因此不允许作为[=24=的一部分] 作用域名称)。
更新
请注意,尽管在 scope-token 中,它明确省略了 %x22,即双引号。所以 "openid"
不是有效的范围名称。顺便说一句,它还删除了 %x5C,这是一个反斜杠,大概是为了使授权服务器实现中的验证更容易。