Javascript 我们如何区分管理员和用户的路径?
我正在Javascript 我们如何区分管理员和用户的路径?,javascript,node.js,reactjs,mongodb,express,Javascript,Node.js,Reactjs,Mongodb,Express,我正在节点js中创建路由。我正在为仪表板创建路由 用户登录并获取JWT令牌 通过发送令牌,用户可以访问与用户相关的一些路由(编辑、删除、注销路由等) 但是对于管理员,我想创建可以查看用户列表、编辑或删除用户、检查用户注销时间的路由。我还设置了表中的标志来标识用户或管理员 如何在后端为管理员验证路由?您可以在JWT中设置授权标志。当用户登录时,服务器会生成相应的JWT,其中包含身份验证信息(即userId)。您可以在令牌中添加其他授权信息(即auth) 根据auth字段,服务器可以识别请求是由普通
节点js
中创建路由。我正在为仪表板创建路由
JWT令牌
如何在后端为管理员验证路由?您可以在JWT中设置授权标志。当用户登录时,服务器会生成相应的JWT,其中包含身份验证信息(即
userId
)。您可以在令牌中添加其他授权信息(即auth
)
根据
auth
字段,服务器可以识别请求是由普通用户还是管理员发送的。当然,保护JWT免遭劫持是另一回事。你可以从这个逻辑中得到启发,这里没有进一步的解释。遵循以下步骤(可能会有所帮助):
首先)将role
字段定义到DBmongoDB
或Mysql
(例如):
Second)在登录并验证jwt后,为check role(role)创建一个函数
第三个)为管理面板创建单独的路由(例如:
你的意思是说实现基本的身份验证。发送带有请求的标头。从前端发送(Authname和password)。它安全吗?用于存储jwt。我正在使用http cookie。安全吗?@Sharadkumar这些帖子-,讨论JWT/Auth令牌的安全存储。@Sharadkumar说到以明文发送密码,你应该通过HTTPS连接。
enum: ['user', 'admin']
router.route('/admin-panel').use(authController.checkRole('admin'))