【备战春招】第9天 基于Phoenix的RBAC权限模型
课程名称:SpringBoot2.X + Vue + UniAPP,全栈开发医疗小程序
课程章节:第二章 UNIAPP+Vue3.0+Springboot技术栈分析
课程讲师: 神思者
课程内容:
一、IDEA连接Phoenix
由于Phoenix自带的命令行客户端没有图形界面直观,所以我们要借助IDEA自带的DataGrip功能连接Phoenix,这样就可以在GUI界面上看到各个数据表的结构和数据了。
DataGrip对Phoenix支持的不够完美,带有事务的SQL语句都不能执行;而且默认无法查看数据表的记录,只能通过编写SQL语句的方式来查看数据。执行SELECT语句的时候,还会提示SQLException,这个异常不用理会,不影响SQL语句执行。
二、CRUD权限模型
在MIS_MODULE
数据表中,保存了系统拥有的业务模块记录。
在MIS_ACTION
数据表中,保存的是操作动作记录。
在MIS_PERMISSION
数据表中,保存的是权限记录。
在MIS_ROLE
数据表中,保存的角色记录。
MIS_ROLE_PERMISSION
数据表是角色和权限的交叉表。
需要把用户和角色关联在一起,需要用到MIS_USER_ROLE
交叉表。
三、查询用户拥有的权限
在IDEA工具上面,编写如下的SQL语句,就可以查询到某个用户具备的权限了。
代码块:
SELECT p."permission_code" AS "permission"
FROM HOSPITAL.MIS_USER u
JOIN HOSPITAL.MIS_USER_ROLE ur ON u."id" = ur."user_id"
JOIN HOSPITAL.MIS_ROLE_PERMISSION rp ON rp."role_id" = ur."role_id"
JOIN HOSPITAL.MIS_PERMISSION p ON rp."permission_id" = p."id"
WHERE u."id" = 0;
课程收获:通过视频加文档结合的方式,熟悉了Phoenix的RBAC权限模型,期待后续学习!
共同学习,写下你的评论
评论加载中...
作者其他优质文章