1.rbac权限组件

1.1 模板分析(五表结构)

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

Django-CRM项目学习(六)-权限(rbac) 随笔 第1张

1.2 模板构建

人物和角色进行多对多绑定,角色与权限进行多对多绑定。其中人物和角色的多对多绑定的操作可以避免相同的人物多重权限的操作。

1.3 数据构建

基于之前的stark组件,在rbac中注册三个类,并添加内容

Django-CRM项目学习(六)-权限(rbac) 随笔 第2张

在rbac中创建俩个类,并添加内容

Django-CRM项目学习(六)-权限(rbac) 随笔 第3张

通过stark组件,注册数据,实现增删改查的功能

Django-CRM项目学习(六)-权限(rbac) 随笔 第4张

Django-CRM项目学习(六)-权限(rbac) 随笔 第5张

Django-CRM项目学习(六)-权限(rbac) 随笔 第6张

Django-CRM项目学习(六)-权限(rbac) 随笔 第7张

1.4 构建登陆页面,根据登陆获取用户的权限

Django-CRM项目学习(六)-权限(rbac) 随笔 第8张

Django-CRM项目学习(六)-权限(rbac) 随笔 第9张

Django-CRM项目学习(六)-权限(rbac) 随笔 第10张

1.5 根据session的内容,根据中间件权限校验

1.5.1 中间件导入

Django-CRM项目学习(六)-权限(rbac) 随笔 第11张

Django-CRM项目学习(六)-权限(rbac) 随笔 第12张

导包:
Django-CRM项目学习(六)-权限(rbac) 随笔 第13张

注:在中间件中,如果return None则代表无内容进行放行

1.5.2 中间件验证权限

1.5.2.1 超级用户

Django-CRM项目学习(六)-权限(rbac) 随笔 第14张

Django-CRM项目学习(六)-权限(rbac) 随笔 第15张

1.5.2 白名单

Django-CRM项目学习(六)-权限(rbac) 随笔 第16张

Django-CRM项目学习(六)-权限(rbac) 随笔 第17张

1.5.3 检查人员是否登陆

 Django-CRM项目学习(六)-权限(rbac) 随笔 第18张

1.5.4 权限校验

Django-CRM项目学习(六)-权限(rbac) 随笔 第19张

1.5.5 无权限展示内容

如果权限不够,,则返回最后的错误字段,直接拦截该角色权限不够。

Django-CRM项目学习(六)-权限(rbac) 随笔 第20张

Django-CRM项目学习(六)-权限(rbac) 随笔 第21张

a

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄