概述
虽然此页面侧重于角色和权限的配置,但重要的是要记住角色和权限与用户有着内在的联系。 这是因为必须为每个用户分配一个角色来定义他们的访问权限。
Directus 带有两个开箱即用的角色,管理员和公共。 Admin 角色为应用程序中的所有数据提供完整的权限,并且这不能被限制。 此管理员角色为项目所有者、管理员和创建者提供了应用范围内的完全控制。 Public 角色默认关闭所有权限,并且可以根据需要完全重新配置这些权限。 此公共角色确定对任何未经身份验证的应用数据请求的访问权限,包括未经身份验证的用户、您网站的访问者或对您 Directus 项目 API 的任何其他 Web 请求。
此外,管理员可以根据需要创建任意数量的角色并精细地配置权限。
创建角色
- 导航到设置chevron_right角色和权限
- 点击标题中的add
- 输入唯一的角色名称
- 启用应用访问允许登录到应用程序
- 启用 管理员权限 会授予对项目数据和设置的完全权限
- 点击保存保存角色
配置角色
- 权限 - 为角色配置 访问权限
- 角色名称 - 这是角色的名称
- 角色图标 — 引用此角色时在整个应用程序中使用的图标
- 描述 - 解释角色目的的有用说明
- 应用访问 - 允许登录到应用程序
- 管理员访问权限 - 授予项目数据和设置的完全权限
- IP Access - 可以访问平台的 IP 地址的允许列表,为空允许所有
- 需要 MFA - 强制此角色内的所有用户使用双重身份验证
- 角色中的用户 - 此角色中所有用户的列表
删除角色
- 导航到设置chevron_right角色和权限chevron_right 角色名称
- 点击标题中的delete
- 通过单击对话框中的 Delete 确认此决定
已删除角色中的用户
如果您删除仍然有用户的角色,这些用户将被赋予“NULL”角色,这将拒绝他们的应用访问并将他们限制为公共权限。 然后,管理员可以将它们重新分配给新角色。
保留管理员
您必须至少维护一个具有管理员访问权限的角色/用户,以便您仍然可以正确管理项目。
公共角色
您不能删除 Public 角色,因为它是核心平台的一部分。 要完全禁用它,只需关闭所有公共访问权限。
配置权限
Directus 拥有极其精细但易于配置的权限系统。 创建新角色时,默认情况下禁用所有项目集合的权限 - 允许您仅授予对所需内容的显式访问权限。 单独的权限应用于角色,每个权限都限定为特定的集合和 CRUD 操作(创建、读取、更新、删除)。
自动保存
对角色权限所做的每项更改都会立即自动保存。
管理员角色
如果角色设置为 管理员权限 则被授予对平台的完全访问权限,并且权限配置被禁用。
- 导航到设置chevron_right角色和权限chevron_right 角色名称
- 滚动到权限部分
- 单击要设置的集合(行)和操作(列)的图标
- 选择所需的权限级别:check All Access, block No Access, or rule 使用自定义
如果您选择了 "check All Access" 或 "block No Access",则设置完成。如果您选择自定义权限,则根据相关的_action_继续下面的相应指南。
创建(自定义访问)
- Field Permissions 控制哪些字段在创建时接受值。字段是单独切换的。
- 字段验证定义创建字段值的规则
- Field Presets 控制创建项目时的字段默认值
读取(自定义访问)
- Item Permissions 控制可以读取哪些项目,由输入的 Filter Rules 定义。
- Field Permissions 控制可以读取哪些字段。字段是单独切换的。
读取字段权限
Directus 应用程序始终需要对主键字段(例如,“id”)的读取权限,以便它可以唯一地识别项目。 此外,如果集合配置了“存档”或“排序”字段,则这些字段也需要读取权限才能使用应用程序的软删除和手动排序功能。
更新(自定义访问)
删除(自定义访问)
- Item Permissions 控制可以删除哪些项目,由输入的 Filter Rules 定义。
配置系统权限
除了 你自己的 自定义集合的权限外,您还可以自定义 系统 集合的权限。 要编辑系统权限,请执行以下步骤:
- 前往 角色和权限 并选择所需的角色。 您将被带到权限配置页面。
- 点击页面底部的系统集合。
- 找到所需的系统集合。
- 根据需要设置权限。
您可以使用两个预先配置的选项来重置角色的系统权限并确保正确的应用程序访问。 要访问这些,请单击“系统集合”以展开,然后单击列表底部的按钮之一。
- 应用程序访问最低 - 正确访问应用程序所需的最低权限
- 推荐的默认值 - 更宽松但平衡以获得更好的应用用户体验
记住
启用应用程序访问后,Directus 将自动为该角色的必要系统集合添加 (和硬编码) 权限。
配置工作流
工作流是一种将结构化阶段添加到内容创作流程的方法。它们主要通过集合的权限定义,但可以通过电子邮件通知、自定义界面和自动化进一步增强。 Directus 支持无限可配置的工作流程,因此我们将在下面仅介绍一个简单的示例。
- 为Articles创建一个结构化的工作流,第一步是创建一个字段来跟踪文章的“状态”——我们称之为状态,但它可以命名任何东西。
2.接下来,为工作流的每个阶段创建不同的角色,例如
author
和manager
。 - 最后,根据 Status 字段的可能值配置 Role 权限,例如
draft
、review
、approved
和published
,以便适当限制它们创建内容和更新状态.- 作者可以创建内容,但只能保存“草稿”或“评论”状态。
- 经理拥有额外的权限,允许他们保存“已批准”或“已发布”的状态。