共享 Shares

共享实用程序使您可以与任何人共享项目,无论他们的权限如何,即使他们不是项目中的用户。

什么是共享?

在任何项目中,某些集合可能仅可供某些用户角色访问,或者对公众隐藏。 您可以决定与尚未获得许可的个人或团体共享集合中的一个项目。 在这种情况下,请使用共享。 共享让您可以让任何人访问某个项目。 当您在项目上创建共享时,会为共享分配一个角色以继承查看权限。 然后,您可以通过超链接或电子邮件共享该项目。 该链接指向一个页面,该页面仅包含该共享项目的只读内容。

此时,共享是只读的。 但是,数据共享是一个可扩展的功能,可以支持完整的 CRUD 权限。 我们欢迎任何 pull-requests 来解决此问题或有兴趣 赞助该功能

您需要了解 用户、角色和权限 在 Directus 中的工作方式以正确配置共享。

它如何工作

  1. 导航到内容模块。
  2. 导航至您要分享的项目的收藏。
  3. 单击项目以打开其项目页面。
  4. 单击边栏中的共享按钮。
  5. 从下拉列表中,单击“新建共享”。
  6. 填写股票期权。 共享选项菜单 上的所有内容都是可选的,但请注意:
    • 没有名称,将难以记住共享的上下文/原因,尤其是在单个项目上有多个共享时。
    • 如果没有选择角色,则默认为公共权限,这没有任何好处,因为任何人都可以访问公共角色可用的项目。
    • 其他访问限制完全是可选的。
  7. 设置名称、角色和约束后,单击菜单标题中的check。 您将在边栏中的 Shares 下看到您的新 Share。
  8. 点击分享右侧的more_horiz按钮。

复制发送编辑删除共享菜单

  1. 这里有 4 个选项:
    • 复制链接 - 创建可以复制和粘贴的超链接。
    • 发送链接 - 为用户创建添加电子邮件和共享链接的提示。
    • 编辑 - 重新打开共享选项菜单以进行其他编辑。
    • 删除 - 永久删除共享。

用户打开链接后,将呈现显示共享项目的自定义页面。

注销以测试链接
如果您在登录 Directus 时打开共享链接,它将重定向到 Directus 应用程序中的项目。 测试共享时,请确保在打开链接之前退出应用程序,或者只是在另一个浏览器或隐身标签页中打开链接。

共享选项菜单

共享选项菜单

  • 名称 - 添加名称来描述共享。
  • 角色分配角色,共享将从中继承权限。
  • 密码 – 创建访问共享项目时必须使用的密码。
  • 开始日期 - 选择可以访问共享的第一个日期。
  • 结束日期 - 选择可以访问共享的最后日期。
  • Max Uses - 设置可以查看共享项目的总次数。
  • 使用次数 - 显示查看共享项目的次数。

创建和查看共享

用户创建共享的能力取决于其角色的权限。如果您是“管理员”,恭喜! 您可以分享任何您想要的项目。但是,具有其他角色的用户可能具有有限的共享权限。

任何共享都将继承与其在共享选项菜单中关联的角色相同的读取权限。

该系统允许对共享进行绝对精细的配置选项... 但这也意味着您需要彻底了解 用户、角色和权限 才能正确使用共享。以下是您可以做的一些重点:

  • 设置角色可以查看或共享的集合。
  • 过滤角色可以查看或共享的特定项目。
  • 设置角色可以查看或共享的特定字段。
  • 设置相关链接项目的查看权限。
  • 限制角色访问特定 IP 地址。

数据共享安全吗?

显然,除非明确共享项目,否则您不想公开项目,但是某些项目可能会链接到其他集合中的项目。 因此,除了继承 Role 的权限外,API 会自动生成并注入权限集,以便只能查看共享项目 (以及与该共享项目相关的项目)。 如前所述,可见性取决于与共享关联的角色是否对那些链接的集合具有读取权限。

分配角色

共享选项菜单 中的角色选项可让您将角色与共享关联。 然后共享将继承该角色的权限。

选择共享角色

分配现有角色

  1. 导航到共享选项菜单
  2. 单击角色输入框,将出现一个新的侧边菜单 (如上所示)
  3. 选择您希望共享继承权限的角色。
  4. 点击check确认。

创建/编辑角色

如果您的角色配置了正确的权限,您可以在共享选项菜单中创建一个新角色并将其分配给一个共享 “即时”。 但是,您仍然需要导航到 Settings > Roles and Permissions > Role Name 来配置任何读取权限。

在共享中创建/编辑角色

创建新角色

  1. 导航到共享选项菜单
  2. 在角色输入框点击add,会出现角色选项菜单。
  3. 根据您的需要填写创建角色的选项。
  4. 点击check确认角色创建。

编辑分配的角色

  1. 导航到共享选项菜单
  2. 在角色输入框点击open_in_new,会出现角色选项菜单。
  3. 根据您的需要编辑角色选项。
  4. 点击check确认编辑。

您正在创建/编辑实际角色!
如果您在此菜单中创建或编辑角色,您的更改将在整个应用程序中生效,而不仅仅是在共享的上下文中。

按收藏限制共享

您可以限制允许角色共享哪些集合:

  1. 导航至设置 > 角色和权限
  2. 选择将负责创建共享的 角色名称
  3. 找到您要为其设置过滤器的 Collection,然后单击下方列中的图标 share 会出现一个小菜单。
  4. 选择 check 启用并选择 block 禁用此集合上的共享。

按项目限制共享

有时您可能希望给定角色能够共享某些项目,但不能共享其他项目。过滤器允许您准确控制角色将能够共享的项目,例如,仅共享标记为“完成”的报告。要使用过滤器:

  1. 导航至设置 > 角色和权限
  2. 选择将负责创建共享的 角色名称
  3. 找到您要为其设置过滤器的 Collection,然后单击share下列中的图标,将出现一个小菜单。
  4. 选择rule Use Custom,会出现一个侧边菜单。
  5. 根据需要创建您的过滤器。

按字段限制共享

当您在某个项目上创建共享时,您将角色 (以及因此角色的权限) 与项目相关联。这允许您为共享的确切字段 (包括关系字段) 设置读取权限。按字段限制共享:

  1. 导航至设置 > 角色和权限
  2. 选择分配给共享的 角色名称
  3. 找到 Collection 然后点击visibility图标下的列中的图标,会出现一个小菜单。
  4. 选择rule Use Custom,会出现一个侧边菜单。
  5. 单击字段权限
  6. 单击以检查您希望允许读取权限的集合字段。
  7. 在侧面菜单标题中选择check 以确认更改。