如何在我的项目中使用 JWT 进行身份验证?

问题描述 投票:0回答:1

我已经在我的 MERN 项目中使用 JWT 实现了注册、登录和注销功能,但问题是日志记录者正在访问同一个数据库。每个用户只能访问他/她的数据库。我怎样才能做到这一点?

authentication jwt authorization mern
1个回答
0
投票

验证 JWT 时,您必须进行两者身份验证和授权。首先,您检查 JWT 是否具有有效签名,然后您可以从 JWT 读取(并信任)信息。

JWT 可以包含您喜欢的任何内容。它通常包含一个

sub
,它是主题(用户)的 ID,您可以使用它来选择将传入请求重定向到哪个数据库。您还可以将有关特定用户应有权直接访问哪些数据库的信息放入 JWT 中,也许放在
scopes
属性中。

因此,授权是根据(有效)JWT 中的信息在代码中完成的。要么你自己编码,要么你找到一些可以帮助你的库。不过,通常只需几行代码。

© www.soinside.com 2019 - 2024. All rights reserved.