Oauth 2.0 执行OAuth 2身份验证作用域';堆栈';在连续授予用户时?

Oauth 2.0 执行OAuth 2身份验证作用域';堆栈';在连续授予用户时?,oauth-2.0,Oauth 2.0,例如,假设我有两个功能,一个需要谷歌联系人,另一个需要谷歌日历 我们还可以说,第一个特性被大量使用,因此请求用户授权两个auth作用域会导致显著的下降率 如果我为联系人身份验证范围已绑定的用户存储访问令牌,那么稍后我为该用户请求额外的身份验证范围日历时会发生什么情况?我是否返回仅具有日历范围凭据的新令牌 LiveConnect说,取代现有作用域的作用域会产生一个具有伞式作用域的新令牌,而旧令牌将失效。假设您讨论的是授权代码或隐式授权类型流,则新作用域需要由用户授权 用户代理将被发送到授权服务器的

例如,假设我有两个功能,一个需要谷歌联系人,另一个需要谷歌日历

我们还可以说,第一个特性被大量使用,因此请求用户授权两个auth作用域会导致显著的下降率

如果我为联系人身份验证范围已绑定的用户存储访问令牌,那么稍后我为该用户请求额外的身份验证范围日历时会发生什么情况?我是否返回仅具有日历范围凭据的新令牌


LiveConnect说,取代现有作用域的作用域会产生一个具有伞式作用域的新令牌,而旧令牌将失效。

假设您讨论的是授权代码或隐式授权类型流,则新作用域需要由用户授权

用户代理将被发送到授权服务器的授权端点,其中包含(现在)所需的作用域。所需的作用域应包括所需的全套作用域(旧的和新的)。用户将看到请求的作用域,然后对其进行授权。对于authorization_code grant type,这将导致将授权代码交换为表示用户同意作用域的新访问令牌。Implicit只需在URL片段中返回一个新的访问令牌。在任何情况下,这个新的访问令牌都将取代现有的访问令牌

如果涉及到刷新令牌-在使用刷新令牌请求新的访问令牌时,您可以指定所请求的范围。但是,该作用域必须是原始作用域的子集(请参见:)-未经用户同意,不可能对其进行扩展(假设有上述流程)