我正在学习更多有关 Oauth2 概念的知识,并且对使用 Spring Oauth2 模块非常感兴趣。在学习访问 token 时我有点迷失。我们如何防止 access_tokens 被泄露?据我所知,整个 token 交换都是使用 HTTPS 进行的,但是当客户端可以使用 HTTP 访问资源时。此外,access_token 的生命周期可能很短,但它确实有一个可能被泄露的窗口。我的理解正确吗?
如何防止这种情况发生?我看到一些提到 token_secret 可以与 access_token 一起传递,但我不确定 Spring 的 OAuth 2 实现是否使用它。
What is the Access Token vs. Access Token Secret and Consumer Key vs. Consumer Secret
如果我走错了路,请纠正我。谢谢。
最佳答案
你是对的。访问 token 可能会因多种威胁而受到损害(有关某些威胁模型,请参阅 RFC6819)。
但某些规范(或正在进行的规范)添加了防止访问 token 被泄露或帮助您限制被盗时的不良影响的方法。
- 撤销访问 token :RFC7009
- 将 token 绑定(bind)到 SSL 连接:OAuth 2.0 Token Binding
- A Method for Signing HTTP Requests for OAuth
- PoP access token type和 RFC7800
关于spring-boot - Outh2.0 access_tokens 会被泄露吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41214155/