README
polygonal-rbac-api
简介
该模块提供 polygonal app 后端工程的 权限设置。
配置
rbac:
test: false
routePrefix: '/api/rbac'
admin: 'admin'
ignore:
- 'GET /api/rbac/user-tree'
tree:
name: 'polygonal'
children:
- name: '示例'
path: 'demo'
public: true
menu:
icon: 'tag-o'
routes:
- 'POST /demo'
配置项 | 说明 | 类型 | 默认值 |
---|---|---|---|
rbac.test | 是否为测试模式,如果为 true,则任意用户可访问所有路由,即拥有所有权限 | boolean | false |
rbac.routePrefix | 路由前缀 | string | '/api/rbac' |
rbac.admin | 管理员的用户名,默认拥有所有权限 | string | 'admin' |
rbac.ignore | 指定的路由所有用户均可访问 | array | ['GET /api/rbac/user-tree'] |
rbac.tree | 权限树 | object | {} |
使用
安装
$ yarn add polygonal-rbac-api
在 src/index.js 中注入插件
registrations: [
...
'polygonal-rbac-api'
],
提供路由
路由 | 方法 | 参数示例 | 说明 |
---|---|---|---|
/{routePrefix}/system-tree | GET | 获取系统权限树状列表 | |
/{routePrefix}/user-tree | GET | 获取用户权限树状列表 | |
/{routePrefix}/roles | GET | 获取角色列表 | |
/{routePrefix}/roles | POST | { name: 'zhangs', permissions: 'setting.rbac', note: '权限管理' } | 创建角色 |
/{routePrefix}/roles | PUT | { name: 'zhangs', permissions: 'setting.subject', note: '角色管理' } | 更新角色 |
/{routePrefix}/roles/{_id} | DELETE | 删除角色 | |
/{routePrefix}/subjects | GET | 获取赋予角色的主体列表 | |
/{routePrefix}/subjects | POST | { subject: 'lis', roleIds: roleIdsArr } | 创建主体 |
/{routePrefix}/subjects/{_id} | DELETE | 删除主体 | |
/{routePrefix}/subjects/{subject}/roles | GET | 获取指定主体下,绑定的角色列表 | |
/{routePrefix}/subjects/{subject}/roles | PUT | { roleIds: roleIdsArr } | 更新主体的角色列表 |