Skip to content

Latest commit

 

History

History
64 lines (52 loc) · 1.88 KB

7.md

File metadata and controls

64 lines (52 loc) · 1.88 KB

数据权限之密码权限管理

前面已经有了RDS/Mongo/Redis等资产的管理
现在我们有一个需求,就是录入的密码不是所有人都可见
那么就需要我们权限管理中的数据权限来控制
我们说过:操作的权限我们通过url来控制,数据权限通过定义对应标识在代码中控制

这里我为了保持原来的操作一致,不增加过多逻辑
所有都是如果有密码权限就返回密码,如果没有就返回 ******

有一点需要注意,因为编辑权限是可以编辑密码的,
但是如果没有查看密码权限,怎么编辑呢?所以两个权限需要一起给
其实可以在程序中处理一下的,但是暂时没有加

tag: 0.6.7

后端

所有类似数据权限,都采用相同的控制方式
目前只增加了rds/redis/mongo的密码权限控制当作示例

涉及文件及目录

asset/mongo/models.py
asset/mongo/controllers/account.py
asset/rds/models.py
asset/rds/controllers/account.py
asset/rds/controllers/database.py
asset/redis/models.py
asset/redis/controllers/account.py
data/sql/rurality.sql

代码

asset/mongo/models.py:
在model中定义权限标识: PASSWORD_PERMISSION = 'mongo-account-password'
这个标识同样需要通过平台的模块管理功能录入,并且值保持一致
重写to_dict方法,增加has_password参数,默认是没有权限返回******


asset/mongo/controllers/account.py:
在获取账号信息的位置增加权限判断


asset/rds/models.py
asset/rds/controllers/account.py
asset/rds/controllers/database.py
asset/redis/models.py
asset/redis/controllers/account.py

RDS和Redis同Mongo一样控制


data/sql/rurality.sql:
导入最新的sql

前端

前端无改动

涉及文件及目录

代码