use*_*056 1 node.js express jwt
我正在使用Node.js,MySQL和JSON Web令牌构建API。
我的JWT看起来像这样:
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJyb2xlcyI6WyJsb2dnZWRfaW4iLCJhZG1pbiJdLCJpZCI6NzEsImlhdCI6MTQ1OTQ0NjU5MCwiZXhwIjoxNDU5NTMyOTkwfQ.BBbdyFMztYkXlhcBjW6D5SsKxtaRiZJqiNShOroQmhk
Run Code Online (Sandbox Code Playgroud)
及其声明解码为:
{"roles":["logged_in","admin"],"id":71,"iat":1459446590,"exp":1459532990}
Run Code Online (Sandbox Code Playgroud)
当api端点接收到该JWT时,调用ID为71的User表以获取任何相关详细信息或使用JWT中的ID是否更安全?
理想情况下,我们将保存对User表的大量调用,但是是否存在安全威胁?恶意用户不能在调用端点之前更改该ID或角色吗?
JWT已签名。如果用户更改了有效负载上的任何内容,签名验证将失败,并且您将知道数据被篡改。
话虽如此,数据本身并未加密。您可以使用用户ID,但除了可能公开的信息外,不要添加敏感信息。
有关JWT验证和生命周期的更多信息:
https://github.com/auth0/node-jsonwebtoken#jwtverifytoken-secretorpublickey-options-callback
| 归档时间: |
|
| 查看次数: |
530 次 |
| 最近记录: |