受限路由 JWT

Posted

技术标签:

【中文标题】受限路由 JWT【英文标题】:Restricted routes JWT 【发布时间】:2021-06-18 14:04:16 【问题描述】:

我正在尝试构建一个应用程序,您必须在其中登录并且用户可以在其中加入私人组。我了解使用 JWT 的登录部分,但我不知道如何限制用户加入私有组,直到他们被组管理员接受。在小组中时,他们可以访问各种功能,例如在小组内发布问题,但前提是他们被接受。

您可以指出我的任何资源将不胜感激

【问题讨论】:

创建一个注册端点来请求组访问。然后管理员必须将特定角色添加到您的 jwt 提供商(例如 AWS Cognito),这些角色存在于令牌中,可用于保护您的应用程序中的路由。 【参考方案1】:

这真的取决于。但一般来说,任何用户都可以是多个组的成员,每个组可以有多个成员(用户)。所以这两个实体之间的关系是多对多的。

在 SQL 上下文中,您可以创建表并保存 (userId, groupdId) 记录。然后当用户请求访问组时,您可以在此表上运行查询并检查他们是否有资格加入组。

我猜你也可以在 NOSQL 数据库中做类似的事情。

【讨论】:

以上是关于受限路由 JWT的主要内容,如果未能解决你的问题,请参考以下文章

订阅者中间件路由允许公众查看所有受限页面

无法在 Node JS 中使用 JWT 访问受保护的路由

路由前的 Express-jwt 控制令牌

JWT 身份验证令牌在非 /api 路由中无效

如何使用 passport-jwt 验证路由?

自定义路由组件,Django的admin后台管理,DRF的三大认证,jwt认证