node.js - Auth0 - 范围不足
问题描述
我在我的 Node.js 应用程序中使用Auth0 ,并且在尝试保护我的应用程序中的任何路由时遇到范围不足错误。
我一直在寻找一段时间,我发现了一堆类似的问题,但无法找到解决方案。
本质上,在我的节点应用程序中,我必须按如下方式保护路由:
const checkScopes = jwtAuthz(['read:flights']);
但是,在添加中间件以保护我的路由时,我总是收到Insufficient scope错误:
app.get('/api/permission', checkJwt, checkScopes, (req, res) => {
res.send({
msg: 'Your access token AND PERMISSION was successfully validated!'
});
});
请问你能帮帮我吗?
解决方案
您应该包含一个名为“customScopeKey”的第二个参数,这样 auth0 将使用权限而不是范围来验证用户凭据。
用这个:
const checkScopes = jwtAuthz(['read:flights'], { customScopeKey: "permissions" });
代替
const checkScopes = jwtAuthz(['read:flights']);
推荐阅读
- oracle - APEX 20.1 无法将 SWITCH 组件动态设置为 READONLY
- python - 访问列表中字典中的项目
- javascript - 我将如何旋转此文本以面向球体?
- python - 尝试在 python 中通过 AWS CDK 使用参数创建 EC2 时出现 jsii 错误
- python - 如何在 tkinter 中一个接一个地显示一个单词
- node.js - node.js 如何在另一个中使用 app.get 变量
- vue.js - 如何在 vue3 中使用 Realm SDK
- python - 使用 pip 安装了 python 包,但无法导入该包
- flutter - 所有异步小部件都返回 null
- android - 带有项目单击侦听器的列表视图在搜索视图中获取错误数据