权限手册(5.1以上)

此手册基于5.0版本的权限系统,新增了角色管理中的权限配置功能。对于5.0版本的权限功能说明,请参考此前发布的权限手册:https://doc.oinone.top/auth/14357.html。本手册仅介绍新增的功能,其他功能详见此前的版本手册。

1. 角色管理--权限配置

在“角色管理--权限配置”中,用户可以从角色维度查看和配置该角色的各类权限,包括访问权限、管理权限、字段权限和数据权限。通过角色的视角,用户能够清晰地管理每个角色在系统中的权限,确保权限配置灵活且符合业务需求。

image

1.1. 资源访问权限

用户选择某一角色并查看其对应的“资源访问权限”。在进入该角色的详细页面后,用户能够看到该角色当前被授权访问的系统资源。同时,用户还可以对该角色的“资源访问权限”进行修改,增删或调整角色可以访问的具体资源。完成修改后,点击“确定”按钮,系统将保存这些更改,并更新该角色的访问权限配置。

image-(1)

1.2. 资源管理权限

选择某一角色并查看其对应的“资源管理权限”。用户能够看到对应角色当前被授权管理的系统资源。同时,用户还可以对该角色的“资源管理权限”进行修改,增删或调整角色可以访问的具体资源。完成修改后,点击“确定”按钮,系统将保存这些更改,并更新该角色的管理权限配置。

image-(2)

值得注意的是

  1. 二级菜单无法进行授权,因为即使对其进行了授权,点击时也不会有实际效果。
  2. 平台设计了父子节点不联动的权限管理方式,赋予用户更大的灵活性。这样一来,用户可以为某个菜单授予访问权限,而无需同步设置其动作权限;相反,也可以临时取消对菜单的访问权限,但仍然保留对动作权限的访问配置。由于父子节点不联动,系统特别提供了“全选”功能,避免逐一勾选的繁琐操作,提高了权限配置的效率。

image-(3)

  1. 当我们在菜单维度对权限组进行配置调整时,所做的更改会同步到角色维度的权限设置中。然而,若在角色维度对权限进行修改,系统不会将这些更改同步回菜单维度,而是将该角色从相应的权限组中移除。
    • 举个例子,假设我在“系统权限”菜单中选择了某个应用,并在该应用的“访问权限”权限组中添加了一个名为“测试专用”的角色。随后,我进入“角色管理”中的“权限配置”模块进行修改操作,看看会产生什么效果。
  • 首先,我们在“系统权限”中为资源模块的地址库-地区添加“测试专用”角色。

image-(4)

  • 然后,进入“角色管理”模块,找到“测试专用”角色并点击权限配置,此时可以看到该角色在资源模块的地址库-地区已经拥有访问权限。

image-(5)

  • 接着,我们在这个界面中进行修改操作,比如勾选“国家分组”的访问权限。完成后,返回“系统权限”查看。

image-(6)

  • 我们会发现,刚刚添加的“测试专用”角色已经从“系统权限”中移除。这是因为系统不会将角色维度的权限修改同步回菜单维度,而是直接移除该角色,以确保权限配置的准确性和一致性。

image-(7)

解释:

这样设计的原因在于,权限组中的权限是多个角色共享的。如果将对某个角色的权限修改同步到菜单维度,会影响其他角色的权限配置。为了避免这种情况,系统确保对单个角色的权限修改不会改变权限组中其他角色的设置。因此,当在角色维度修改权限时,系统会将该角色从对应的权限组中移除。这也表明应用和角色维度的数据是互通的:菜单维度的变更可以同步到角色维度,而角色维度的变更则不会自动反映到菜单维度,以避免授权冲突。

1.3. 字段权限

在“字段权限”页面,用户可以查看并管理某个角色所有的模型及其字段权限。系统提供了两个便于查找的搜索框:

搜索框 1:允许用户根据模型的编码或名称进行快速搜索,方便定位特定的模型。

搜索框 2:用户可以根据权限状态筛选模型,选择显示角色拥有权限的模型或查看系统中全部模型。

使用这两个搜索框后,按回车键即可启动搜索,快速查找并修改相关模型或字段的权限。

用户还可以对字段的读写权限进行修改,确保特定角色在系统中对特定字段有合适的权限。完成修改后,点击“保存”按钮,系统将会更新角色的字段权限配置。

image-(8)

1.4. 数据权限

在“角色管理”中进行权限配置时,所涉及的数据权限是指为特定角色设定数据权限项。可以通过点击“新增权限项”按钮,添加该角色所需的数据权限。

image-(9)

值得注意的是

  1. 在“角色管理-数据权限”模块中设置的数据权限不会同步到“数据权限”菜单的单个数据配置中,并且当“角色管理-数据权限”发生变化还会导致该角色从“数据权限”菜单的单个数据配置中移除。而在“数据权限”菜单中进行修改时,这些更改会被应用到“角色管理-数据权限”中相应的角色。
    • 举个例子,当我在“数据权限”菜单中创建了一条数据,然后在“角色管理-权限配置”中对该角色的权限进行修改,看看会产生什么效果。
  • 在“数据权限”菜单中创建一条数据权限,选择角色为“测试专用”,并将数据权限设置为“1111”,然后点击保存。

image-(10)

  • 接着,进入“角色管理”中,选择“测试专用”角色的权限配置,查看数据权限。此时我们会发现数据权限中新增了一条“1111”的数据权限项。这表明在这两个维度间的数据是互通的。

image-(11)

  • 然后,在“角色管理”当前的“测试专用”角色页面中新增一条数据权限项,再去“数据权限”菜单下查看效果。

image-(12)

  • 在“数据权限”菜单下发现角色被移除。

image-(13)

解释:

在“数据权限”菜单中配置的是多个角色对应的多个数据权限项,而在“角色管理”中则展示了某个角色对应的所有数据权限项。与之前的逻辑一致,对多个角色的多个数据权限项进行更改会同步到特定角色的数据权限中,但对某个角色的数据权限的修改并不会同步到其他角色的多个权限项中。

本文来自投稿,不代表Oinone社区立场,如若转载,请注明出处:https://doc.oinone.top/chan-pin-shi-yong-shou-ce/17797.html

(0)
萧炎的头像萧炎数式员工
上一篇 2024年9月26日 下午3:33
下一篇 2024年9月27日 上午11:20

相关推荐

发表回复

登录后才能评论