为了账号安全,请及时绑定邮箱和手机立即绑定

【备战春招】第9天 基于Phoenix的RBAC权限模型

标签:
SpringBoot

课程名称:SpringBoot2.X + Vue + UniAPP,全栈开发医疗小程序

课程章节:第二章 UNIAPP+Vue3.0+Springboot技术栈分析

课程讲师: 神思者

课程内容:


一、IDEA连接Phoenix

由于Phoenix自带的命令行客户端没有图形界面直观,所以我们要借助IDEA自带的DataGrip功能连接Phoenix,这样就可以在GUI界面上看到各个数据表的结构和数据了。

https://img1.sycdn.imooc.com//63ee14630001c08505410531.jpg

DataGrip对Phoenix支持的不够完美,带有事务的SQL语句都不能执行;而且默认无法查看数据表的记录,只能通过编写SQL语句的方式来查看数据。执行SELECT语句的时候,还会提示SQLException,这个异常不用理会,不影响SQL语句执行。

二、CRUD权限模型

MIS_MODULE数据表中,保存了系统拥有的业务模块记录。

https://img1.sycdn.imooc.com//63ee14ae000196f608100492.jpg

MIS_ACTION数据表中,保存的是操作动作记录。

https://img1.sycdn.imooc.com//63ee14d70001b30908020548.jpg

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;

https://img1.sycdn.imooc.com//63ee15830001df5717040873.jpg


课程收获:通过视频加文档结合的方式,熟悉了Phoenix的RBAC权限模型,期待后续学习!


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消