Drupal 9 如何配置同部门用户可互编、跨部门不可编辑的内容权限
Drupal 9 同部门内容编辑权限配置操作步骤
1. 安装启用必需模块
- 通过composer安装Group模块,执行命令:
composer require 'drupal/group:^3.0' - 进入后台扩展管理页,启用Group核心模块及配套的Group Node子模块。
2. 创建部门分组类型
- 访问后台路径
/admin/group/types,点击「添加分组类型」 - 分组类型名称设为部门,保存后进入分组类型配置页。
3. 创建对应部门分组
- 访问后台路径
/admin/group/content,点击「添加分组」,选择部门类型,依次创建「X部门」「Y部门」两个分组。
4. 添加用户到对应部门并分配组内角色
- 进入「X部门」分组详情页,点击「成员」标签,选择「添加成员」,依次添加userA、userB,给两名用户分配组内内容编辑者角色。
- 进入「Y部门」分组详情页,重复上述操作,添加userC、userD并分配相同的组内编辑角色。
5. 配置内容与部门分组的关联规则
- 访问路径
/admin/group/types/manage/部门/content,点击「添加内容实体」,选择你需要控制权限的内容类型(例如文章、自定义内容类型等),关联插件选择将节点加入分组后保存。 - 勾选关联配置项创建者可选择将内容加入自己所属的分组,确保用户发布内容时可以选择归属的部门分组。
6. 配置权限规则
- 进入分组类型权限配置页
/admin/group/types/manage/部门/permissions,找到节点权限相关配置,给组内内容编辑者角色勾选:编辑任意所属分组内的节点、查看任意所属分组内的节点、删除任意所属分组内的节点(按需勾选删除权限)。 - 访问全局权限配置页
/admin/people/permissions,找到editor角色的权限配置,必须取消editor角色全局的「编辑任意内容」「删除任意内容」权限,仅保留「创建内容」「编辑自己发布的内容」这类基础权限即可,避免全局权限覆盖分组权限。
7. 验证效果
- 分别用4个测试账号登录发布内容,选择对应所属的部门分组,交叉登录验证编辑权限:同部门用户可互相编辑内容,跨部门用户无编辑权限,即配置生效。
内容的提问来源于stack exchange,提问作者Harry
相关产品推荐
相关产品推荐

