有些事情我无法理解。 据我了解,授权代码流应该比隐式流更安全,因为 token 不是直接从授权服务器发送到客户端,而是由后端检索。 所以流程基本上是:
- 浏览器获取授权代码(作为某种 URL 参数)。
- 将其发送到公共(public)后端端点。
- 后端将代码 + 客户端 key 发送到授权服务器,检索 token 并将其存储在客户端的 Cookie/本地存储中以供进一步使用。
在此流程中,所有教程都将授权代码描述为对黑客来说毫无用处,这是为什么?黑客是否不能使用 Postman 或其他客户端并直接访问您的(公共(public))API,使其完成步骤 3,从而同样检索 token ?
我在这里缺少什么?
最佳答案
代码
仅使用一次。在许多情况下,攻击者可能会访问代码
,但它已被交换为访问 token ,因此毫无用处。
authorization_code
是一次性 token 。
关于OAuth授权码流程安全问题(授权码被黑客截获),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67812472/