【发布时间】:2015-02-06 04:10:38
【问题描述】:
我正在构建基于令牌的身份验证(Node.js 使用护照/JWT 和 Angular 客户端)。
用户输入他的凭据后,他会获得一个访问令牌,他会在每个请求的标头中发送该令牌(标头:bearer TOKEN)。
我不想每次他的访问令牌过期时都提示登录请求(我猜是每天), 我听说过Refresh Tokens。刷新令牌永远不会过期(或很少过期)并且能够无限期地更新令牌。当访问令牌即将过期时,客户端可以通过发送他的刷新令牌来发送更新请求以获取新的访问令牌。
我不明白一些东西,我可能会遗漏一些东西:
-
长寿命/永不过期的刷新令牌如何不破坏短寿命的安全性 访问令牌。
-
Cookie 可以被盗用,直到过期。代币是短暂的,所以它们更安全, 但如果我提供一个长期存在的刷新令牌,我将失去使用令牌的优势。
注意:我知道刷新令牌是在初始登录时发送的,因此不能在每个请求中都被欺骗,但如果它们在初始请求中被欺骗,它们很容易受到攻击。
【问题讨论】:
标签: security token access-token jwt http-token-authentication