角色管理
1. 概述
角色是一组特定权限的集合。因此,通过给成员分配角色来赋予成员权限。角色只有属于一个层级,给角色分配权限时只能分配相同层级的权限。在一个层级中给成员分配角色时,只能分配相同层级的角色。您在此能看到角色名称、编码、来源和状态。您可以在此页面了解到创建、修改和启停角色。
2. 角色列表
列表字段:
- 角色名称:角色名称是根据角色权限的集合定义的。在角色分配中的角色列表里面显示的为角色名称。
- 角色编码:角色编码具有唯一性,是角色的标识。
- 角色来源:角色分为用户自定义角色和预置角色,所以角色来源有自定义和预定义两种。用户自定义角色是用户在角色管理界面所创建的角色。预置角色是系统内置的角色,只能查看预置角色,基于预置角色创建新的角色,不能修改和停用预置角色。
- 状态:是否启用字段有
启用
和停用
两种值。角色的是否启用字段的值为启用
时,在角色分配中可以看到该角色,因而可以选择该角色;否则,为停用
时,在角色分配中不可看到该角色,因而无法选择该角色。
3. 创建角色
- 进入平台管理,点击菜单“ 管理>角色管理 ”,进入角色管理。
- 点击操作栏的创建角色按钮,打开创建角色页面。
您可以在此创建新角色:
- 必填字段:
- 角色编码:角色编码具有唯一性,是角色的标识。用户可自定义。角色创建成功后生成的角色编码为role/层级/custom/用户自定义角色编码,其中role和custom为常量,role表示角色这个大类,custom表示角色来源为用户自定义,即用户在界面创建的角色;层级和用户自定义编码为变量,层级为当前所在层级,用户自定义角色编码为用户在角色编码输入框中所填写的值。
- 角色名称:角色的名称应该根据角色权限集合特征定义。
角色权限:创建角色时,至少要选择一个角色权限。用户可以在此勾选路由权限来控制菜单是否显示。点击菜单上的
权限配置
,可以在这里勾选API权限来控制页面上的操作权限。选填字段:
角色标签:用于定义角色的特定逻辑的功能,需与代码开发结合。点击了解角色标签
点击创建,完成角色的创建。
4. 根据所选角色创建角色
- 您可以在此勾选角色基于所选角色创建新角色,点击工具栏的
基于所选创建角色
,会跳转出创建页面,创建一个新角色。
必填字段:
- 角色编码:角色编码具有唯一性,是角色的标识。
- 角色名称:角色的名称应该根据角色权限集合特征定义。
- 角色权限:新角色的角色权限为所选角色权限的并集。可以后继删除或添加权限,至少要有一个角色权限。选填字段:
- 角色标签:用于定义角色的特定逻辑的功能,需与代码开发结合。
- 点击创建,完成角色的创建。
可以选择多个角色,基于这些选择的角色创建一个新的角色。
5. 修改角色
- 点击要修改的角色的角色名称,进入修改角色页面。
- 您可在此可对所选角色进行修改:
不可修改字段:
- 角色编码:因为角色编码具有唯一性,是角色的标识,所以角色一旦创建成功,角色编码不可更改。可修改字段:
- 角色名称:应该根据角色的权限特性进行命名,这样分配角色的时候可以直观的选择角色。
- 角色标签:用于定义角色的特定逻辑的功能,需与代码开发结合。
- 角色权限:可以增加或删除角色的权限。
- 点击
确定
按钮,保存对角色的修改。
- 点击
预定义角色只能修改角色标签。
6. 启停用角色
点击要停用角色所在列的按钮,点击停用
即可停用该角色,再次点击则可启用。
停用角色:只能停用用户自定义角色。停用角色后,角色状态变为’未启用’。赋予给该角色的权限将失效,即使这个角色已经被分配给了用户。并在角色分配中,不再显示该角色。
启用角色:用户自定义角色被停用后,可以再次启用。启用角色后,角色状态变为’启用’。赋予该角色的权限生效。并在角色分配中,显示该角色。
预定义角色不可停用,只能启用/停用用户自定义角色。
7. 角色标签
角色标签用于定义角色的特定逻辑的功能,需与代码开发结合。
- project.owner:项目所有者。用户创建项目时会自动为其分配拥有该角色标签的角色。
- organization.owner:组织所有者。用户创建组织时会自动为其分配拥有该角色标签的角色。
- organization.gitlab.owner:组织层gitlab所有者。
- project.gitlab.developer:项目层gitlab开发者。当给某用户在某项目下分配拥有该标签的角色后,平台会为该用户在gitlab对应的group下分配developer的角色。
- project.gitlab.owner:项目层gitlab所有者。当给某用户在某项目下分配拥有该标签的角色后,平台会为该用户在gitlab对应的group下分配owner角色。
- project.deploy.admin:项目层部署管理员。当给某用户在某项目下分配拥有该标签的角色后,该用户可在该项目下使用部署流水线的相关内容。
- site.admin:全局层管理员。
角色标签的作用说明:
- project.owner:当用户创建项目时会自动为其分配拥有该角色标签的角色。如项目所有者。
- organization.owner:用户在创建角色的的时候选择此角色标签,当用户创建组织时会自动为其分配此角色标签下的角色。
- project.gitlab.owner:当给某用户在某项目下分配拥有该标签的角色后,平台会为该用户在gitlab对应的group下分配owner角色。
- project.gitlab.developer:当给某用户在某项目下分配拥有该标签的角色后,平台会为该用户在gitlab对应的group下分配developer的角色。