功能权限树
一 概述
功能权限树在权限授权中扮演着不可或缺的角色,几乎每一处授权都会出现功能权限树。以树的形式展示权限能帮助我们更好、更直观的看到自己授予的权限。但对于这棵树我们知之甚少,这篇文章就是为了帮助我们进一步了解这个老朋友”功能权限树“,让我们在授权操作时,更加游刃有余。
二 功能权限树中节点的显隐逻辑
2.1 用户类型
【系统服务云】->【基础服务】->【权限管理】->【用户授权】可以直接对用户进行授权,但并非任何应用都可以授权,因为每个应用都具有不尽相同的“适用用户”范围,被授权用户只能授予匹配类型的应用。据此逻辑,在这里系统会根据用户类型对授权树做一些裁剪。
例如,我们在【开发服务云】->【开发平台】中新建业务云后,会新增应用,但是有一个细节我们可能不小心忽略了。那就是“适用用户”,它在“新建应用”的“高级信息”中,我们可以选择当前应用适用于哪种类型的用户。那么授权时,该应用就会出现在直接授权的功能权限树中了。
2.2 应用
在【系统服务云】->【基础服务】->【角色管理】->【通用角色】中新增角色时,配置“应用”,也会对功能权限树进行裁剪,如下图。
2.3 管理员
在新版管理员中,上级管理员可以在【系统服务云】->【基础服务】->【权限管理】->【管理员】中对下级管理员所在组做一些管理权的范围限制。如下图,选中用户组后,点击右上角设置。
如下图,在打开的管理员组配置界面中,“应用授权范围”就是对该组中管理员在授权时可以看到的应用做范围限制,即对功能权限树按应用做裁剪。
如果未设置则“同上级管理员范围”,即和上级管理员组组一样的应用范围。
三 其他显隐逻辑
1 权限模型是围绕“实体表单”来授权和验权的,所以功能权限树上展开的层级结构是云-应用-实体(这里可以简单理解为表单)-权限项,而不是 云-菜单-表单-按钮。所以并不能以菜单、表单、按钮的方式判断权限树中节点显隐。
2 由于功能权限树的展示必定要求只显示合适的节点,所以只有包含云、应用、实体(表单)、权限项这一完整树结构的数据才会显示出来。也就是说,要出现在权限树,就必须符合:
云下至少一个符合条件的应用;
“应用下至少有一个符合条件的表单”;
表单绑定至少一个权限项,并且开启“功能权限控制”开关,“权限控制类型”为“空”或“组织”(如果是“体系”等非组织的控制类型,这样的表单会出现其他业务的授权功能的功能权限树中)。如下图所示:
3 关于“符合条件的应用”:
不能是全员应用。(全员应用不验权,所以默认不会出现在树中);
已启用的应用。(应用启用操作如下图)
全员应用判断如下图:
点击编辑按钮,查看弹出的界面的“高级信息”,确认“全员应用”的开关。
4 模板表单不显示
功能权限树
本文2024-09-23 00:32:09发表“云苍穹知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-cangqiong-140087.html