本文阅读时长:约 4 分钟
权限控制与适用角色
平台的权限管理基于 RBAC,并分别设置项目角色体系与中心角色体系。两套体系相互平行,各自配置角色、权限及其适用的数据域。
什么是 RBAC
RBAC(Role-Based Access Control,基于角色的访问控制)是一种按角色分配权限的管理方式。系统先将可使用的功能与操作配置到角色中,再将角色分配给成员。成员通过所承担的角色获得相应权限。
在本平台中,角色配置集中在「项目设置 → 角色设置」。项目角色体系与中心角色体系分别维护角色及其权限,成员通过对应体系中的角色获得权限。
RBAC 将人员变化与权限配置分开管理。成员变化时,可以在相应体系中分配已有角色;岗位职责变化时,可以调整该体系中的角色或权限。各角色的实际权限以当前项目的角色设置为准。
项目角色与中心角色
项目角色体系与中心角色体系是两套相互平行的角色与权限体系。在「项目成员」中,项目角色和中心角色分别配置。项目角色面向整个项目这一数据域生效;中心角色需要明确配置哪些中心属于数据域。项目角色与中心角色不能相互转换或跨体系分配。
| 角色体系 | 分配对象 | 数据范围 | 适用场景 |
|---|---|---|---|
| 项目角色体系 | 整个项目 | 项目下全部中心的数据 | 项目配置、全项目数据管理、跨中心统筹 |
| 中心角色体系 | 一个或多个指定中心 | 明确配置的中心数据 | 中心日常工作、指定中心监查、多中心区域协作 |
项目角色体系适用于职责覆盖整个项目的成员。中心角色体系适用于职责限定在一个或多个指定中心的成员。同一成员可以根据职责分别获得两套体系中的角色,但需要分别授权,不表示某个角色可在两个体系中通用。
角色权限与数据范围的关系
成员能否访问某项数据,需要同时满足两个条件:对应角色体系中的角色允许使用相关功能,该体系的数据域包含相关数据。项目角色的数据域是整个项目,中心角色的数据域是明确配置的中心。
| 配置情况 | 功能与操作 | 可见数据 |
|---|---|---|
| 获得项目角色 | 按该角色的权限设置执行 | 项目下全部中心的数据 |
| 获得一个中心的中心角色 | 按该角色的权限设置执行 | 该中心的数据 |
| 获得多个中心的中心角色 | 按该角色的权限设置执行 | 已分配的多个中心的数据 |
| 未获得相关角色权限 | 无法使用相应功能或执行相应操作 | 数据范围不会单独开放该功能 |
例如,一名成员只负责 S01、S03、S05 三个中心。为该成员配置中心角色,并将这三个中心纳入该角色的数据域后,该成员的数据范围不包括项目中的其他中心。如果该成员还需要承担全项目职责,应另行为其配置适当的项目角色,不能将已有中心角色改为项目角色。
同一成员可以同时具有项目角色和中心角色,但需要分别在两套平行体系中完成授权。配置时应分别检查项目角色、中心角色及其对应数据域。
多角色使用
同一用户可以在一个项目中被分配多个角色。用户进入项目后,需要选择其中一个角色作为当前角色,并以该角色进行操作。系统根据当前角色确定可使用的功能、可执行的操作及对应的数据域,不会将多个角色的权限合并后同时使用。
需要以其他角色处理工作时,可在项目首页切换当前角色。切换后,页面功能和数据范围按新选择的角色权限显示。
执行操作前,应确认当前角色与本次工作职责一致。页面中缺少某项功能或数据时,可先返回项目首页检查当前角色。
内置角色
平台提供 13 个内置角色模板,作为配置项目角色和中心角色的起点。内置角色覆盖项目管理、数据管理、医学审核、中心执行、监查、药物管理和质量控制等常见职责。
内置角色的名称、适用体系、主要职责和权限范围见参考与附录中的内置角色与权限。各角色的实际权限仍以当前项目“项目设置 → 角色设置”中的配置为准。