使用方法
先决条件
进入 bench 工作台目录;
1.新安装 1.1、获取对应版本APP
bench get-app https://gitee.com/yuzelin/zelin_permission.git
1.2、安装APP(有多个站点且未设默认站点的请加--site参数)
bench install-app zelin_permission
升级 2.1、bench update 命令(如果不加--pull参数则站点上所有app都会更新)
bench update --apps zelin_permission --pull --reset (如果变更涉及数据库表结构变更,需运行这个命令) bench migrate
2.2 重新编译JS等资源文件
bench build --app zelin_permission --force
卸载 3.1 从站点卸载
bench uninstall-app zelin_permission
3.2 从整个bench环境卸载,移除整个应用目录
bench remove-app zelin_permission
欢迎提交问题和反馈建议。
附功能说明
-
报表数据脱敏,即仅限特别授权用户显示敏感信息,如只有财务及管理人员才能看到库存报表的成本、金额信息, 普通用户仅显示数量信息
1.1 实现原理:覆盖标准报表取数函数,剔除栏位清单中用户未授权栏位及数据中未授权栏位内容
1.2 使用方法 1.2.1 新增受控报表栏位定义(栏位集合), 1.2.1.1 填写适用的报表,可填多个报表(多个报表敏感栏位相同),如果该栏位留空,则适用所有报表 1.2.1.2 填写受控栏位清单,栏位值支持报表栏位名,中/英文标签 1.2.2 新增受控报表栏位分派(授权) 1.2.2.1 填写受控报表栏位定义,关联定义的受控栏位清单 1.2.2.2 填写报表字段,可填多个报表(多个报表敏感栏位相同),如果该栏位留空,则适用所有报表 1.2.2.3 填写用户角色字段,可以填多个角色
-
针对报表界面右上角的添加列(关联单据字段), 2.1 增加栏位权限级别检查,无权限则返回空值 2.2.传入主键值清单参数,避免查询并返回整个数据表数据,影响性能
-
增加用户权限过滤,剔除用户无权限单据 3.1 实现原理:覆盖标准报表取数函数,移除用户无权限的数据行
3.2 使用方式 3.2.1 新增待增加权限检查的报表及单据栏位(支持动态链接栏位与链接栏位)
-
列表,表单及报表界面菜单按钮根据用户角色隐藏 4.1 原理 在网页创建按钮方法中增加权限检查代码,用户无权限则不新增按钮
4.2 使用方式 4.2.1 新增按钮权限检查,在表单界面,如果用户没有权限,则不再显示相关菜单按钮 支持全局按钮,即单据类型子表留空 支持单据级的按钮,输入具体的单据类型
按钮标签填英文,大部分情况下,按钮标签与权限检查单据类型是一样的,如Purchase Order. 代码会自动处理英文翻译,确保用户在中英文环境下未授权按钮均能隐藏
-
强制4眼原则 5.1 同一个单据创建人与提交人不能相同 5.2 受控流程关联的上下游单据提交人不能相同
-
权限最近一次出错详细日志,方便管理员进行查错处理
MIT