我不太了解OAuth2.0 / OIDC特殊化中 response_type 和 grant_type 之间的区别。
我的猜测是,在与令牌端点进行交互(以获取 access 和/或 refresh令牌)时,在URL中指定了 grant_type ,并且在与授权端点进行交互时使用 response_type 来获取身份令牌和授权码。是吗?
如果是这样,在使用 hybrid 流程时,我们应该如何使用 gant_type ?
任何帮助都会被重视
答案 0 :(得分:2)
response_type 和 grant_type 两个必需参数。因此,OpenID Connect建立在OAuth 2.0之上,这两个参数也在OpenID Connect中使用。
response_type 用于授权端点。此参数定义授权响应中必须包含的内容。例如,使用授权码授予时的code
(类似OpenID Connect中的授权码流)。
grant_type 用于令牌端点。它定义用于令牌请求的 grant 。例如,authorization_code
是用于授权代码授权的授权(类似于OpenID Connect中的授权代码流)。
对于混合流, response_type 已扩展为具有多个细分。这是通过OAuth 2.0 Multiple Response Type Encoding Practices完成的。这使您可以使用诸如 response_type=id_token%20token
之类的response_type。并且 grant_type 将与您使用授权代码流相同。将会是code
。这是在规范的hybrid token request