oAuth流中授权代码的主要目的是防止重播攻击,TLS也可以防止重播攻击。
如果仅使用TLS向启用了oAuth的服务器发出密码授予请求,那还不够吗?
答案 0 :(得分:1)
oAuth流程中授权代码的主要目的是 防止重放攻击
我认为授权码流的主要目的与防止重放攻击不同。 OAuth对此不做任何保证,无论授予如何,OAuth 2.0 suggests我们始终对所有授予使用TLS来传输访问令牌:
访问令牌凭证必须仅使用TLS作为 在1.6节中进行了描述,其中服务器身份验证由
定义 [RFC2818]。
OAuth 2.0中也有其他授权,例如;
,每个都有其自己的目的。密码流是遗留的,由于以下原因,您应该有充分的理由继续使用它:
像隐式流一样,这是必需的,但是现在根据设备和PKCE的用法,将密码和隐式流都替换为设备和PKCE。例如;如果一个应用程序使用“密码授予”的主要原因是其客户端不支持重定向,则他们现在也可以使用“设备代码授予”。