2017-10-06 138 views
0

我已读的OAuth的不同的流,并具有关于授权码流混乱。据说,授权码流更安全,因为即使授权码,同时转移劫持,这是没用的黑客,因为黑客需要在客户端ID和客户端密钥,以获得访问令牌 - 但如果当客户端在收到授权码后请求访问令牌,黑客窃听传输并获取访问令牌? 我不知道,但它看起来像授权代码只添加一个额外的安全层,但实际上并不完全固定的访问令牌。 我对不对?请纠正我。授权码流OAuth中可以拦截访问令牌吗?

回答

0

典型的用例的授权码流是令牌请求(即交换授权代码的访问令牌之一)做了一个TLS保护的暗道,这意味着攻击者无法得到它 - 除非他能够打破SSL,在这种情况下会出现更大的问题。

但前路使用的情况下,即在一个浏览器的JavaScript应用程序或单页应用程序你是对的:黑客可能几乎一样容易拦截令牌请求的重定向。这也是为什么这个用例不能使用一个机密的客户端,因为这个秘密太容易被暴露。

+0

你好,你说的“授权码流是令牌请求(即交换授权代码的访问令牌之一)通过TLS保护暗道完成”但如果这个流用于通过TLS保护的反向通道,为什么auth服务器在用户认证应用时不能返回访问令牌而不是认证码? –

+0

因为这将是与授权码流中的前声道,通过定义 –

+0

@HansZ您好。我不同意你答案的第二部分。 RFC6749不阻止公共客户端使用授权码流程。 防止使用截取的身份验证发出访问令牌。代码与这种客户端类型,RFC7636引入了一个代码验证器。草案https://tools.ietf.org/html/draft-ietf-oauth-security-topics-03#section-5.1.1表明它是原生应用的首选方式。 –

相关问题