RBAC实践案例

RBAC实践案例

权限

RBAC

实践案例一:
现有表
  • users
  • roles
  • permissions
  • user_roles
  • role_permissions
前后端基于权限的控制
  1. 前端调用接口时,基于当前操作或者页面,传入permissions表唯一标识 code(这里假设选取permissions
    表的code字段作为权限唯一标识)
  2. 后端接口接收到请求后,根据传入的permissions表code,去查询role_permissions (角色权限关联表),找出所有的拥有需求权限(
    code)的所有role
# 示例sql
select *
from role_permissions rp
         inner join permissions p on rp.permission_code = p.code
where p.deleted = 0
  and rp.deleted = 0
  and rp.permission_code = 'xxx';
  1. 后端根据token解析出用户信息(一般为用户id),然后查询该用户所有的role
  2. 比对拥有权限(前端传入的code权限)的role集合和用户拥有的role集合,如果有交集,则允许访问,否则拒绝访问(也可以直接返回null)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值