polygonal-rbac-apideprecated

rbac api used by polygonal app

Usage no npm install needed!

<script type="module">
  import polygonalRbacApi from 'https://cdn.skypack.dev/polygonal-rbac-api';
</script>

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 } 更新主体的角色列表