我正在为 Strapi 构建一个具有多个路由的插件,例如:
{
"method": "GET",
"path": "/preAnalyzeImportFile",
"handler": "ImportConfig.preAnalyzeImportFile",
"config": {
"policies": ["global.isAuthenticated"]
}
}
安装插件后,任何经过身份验证的用户都应该能够使用新路由。我可以手动更改权限,以便路由正常工作,但这不应该是使用该插件所需的工作流程。
如何设置插件路由的默认权限?
最佳答案
没有关于如何在 Strapi 中执行此操作的文档。
以下是如何使用permissions
函数来获取、创建、更新权限strapi.plugins['users-permissions'].models.permission
。那么如何处理。
您必须在 ./config/function/bootstrap.js
中编写代码。
每次服务器启动时都会执行此代码。
要创建权限,您必须找到要更新的角色(类型为authenticated
)strapi.plugins['users-permissions'].models.role.find
.
当您获得角色 ID 后,您将使用 strapi.plugins['users-permissions'].models.permission.create
创建权限
要发送的对象参数:
- 类型:将是您的插件的名称
- controller:将是您的 Controller
importconfig
的名称 - action:您的案例中的函数
preanalyzeimportfile
的名称 - 启用:true
- 角色:您要应用此政策的角色 ID
关于Strapi 插件路由默认权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55924388/