【发布时间】:2018-02-19 21:28:00
【问题描述】:
我在使用 expressjs、sequelize 和 jsonwebtoken 进行身份验证的第一个 nodejs 应用程序中实现授权时遇到问题。在我想禁止/允许不同用户的路由,我不想使用像 oauth2 这样的另一个包或为我处理授权的东西。
目前我已经创建了一个 jsonwebtoken,它具有包含在有效负载中的权限角色:
{
"userid": 1,
"name": "John Doe",
"permissions" : ["user_get", "user_post", "user_put"]
"iat": 1505142542,
"exp": 1505146142
}
不,我想在“GET /user”之类的调用中检查是否允许经过身份验证的用户调用它。
我的问题是:使用这种方法是否安全,或者我不应该在 jwt 中包含权限?另一种选择是询问数据库并检索权限,而不是检查有效负载。
此外,如果服务器使用户无效,令牌将被检查是否仍然有效。
【问题讨论】:
-
是的,它和 webtoken 一样安全。
标签: javascript node.js authorization express-jwt