这where to store - access token and refresh token in OAuth 2.0是我正在寻找的答案,但我有些事情对我来说不清楚,或者我可能只是过度思考它。
假设我有一个调用REST api的网站X,并将刷新令牌作为HttpOnly cookie存储在浏览器中。如果恶意攻击者M进入其他已经以X登录X的计算机,M可以去寻找cookie并窃取该刷新令牌。然后M将能够检索他想要的所有令牌,他只需要该应用程序的客户端ID和客户端秘密,他可以从应用程序的任何其他用户获得,例如他自己M只是看着进行GET新访问令牌调用时标头的值。这是对的吗?
答案 0 :(得分:1)
您不应在浏览器中运行的应用程序中使用身份验证代码授权。 Implicit grant专为此类应用而设计:
/token
端点发出请求(客户端ID和客户端密钥),并且您无法在浏览器中保密。/token
端点通常不支持CORS标头 - 您无法通过JavaScript XHR调用访问它。prompt=none
/auth
请求参数。