Kibana 角色管理

编辑

角色是权限的集合,允许您在 Kibana 和 Elasticsearch 中执行操作。用户不会被直接授予权限,而是被分配一个或多个描述所需访问级别的角色。当您为用户分配多个角色时,用户将获得这些角色的权限的并集。这意味着您无法通过为用户分配额外的角色来减少其权限。您必须删除或编辑其现有的角色之一。

要创建角色,请打开菜单,然后单击 堆栈管理 > 角色 并单击 创建角色

所需权限

编辑

访问角色管理需要 manage_security 集群权限

集群权限

编辑

集群权限授予对 Elasticsearch 中监控和管理功能的访问权限。它们还启用 Kibana 中的 堆栈管理 功能。

有关可用选项的完整描述,请参阅 集群权限

索引权限

编辑

每个角色都可以授予对多个数据索引的访问权限,并且每个索引可以具有不同的权限集。我们建议向您希望用户在 Kibana 中使用的每个索引授予 readview_index_metadata 权限。

有关可用选项的完整描述,请参阅 索引权限

当涉及到授予对数据的访问权限时,文档级别和字段级别的安全性为您提供了更大的粒度。借助文档级别安全性 (DLS),您可以编写 Elasticsearch 查询来描述此角色授予对哪些文档的访问权限。借助字段级别安全性 (FLS),您可以指示 Elasticsearch 授予或拒绝访问每个文档中的特定字段。

示例:授予对匹配 filebeat-* 模式的索引的访问权限

编辑
  1. 转到 堆栈管理 > 角色,然后单击 创建角色
  2. 索引权限 中,输入

    1. 索引 字段中的 filebeat-*
    2. 权限 字段中的 readview_index_metadata
Create role with index privileges

示例:授予对匹配 filebeat-* 模式的索引中特定文档的读取访问权限

编辑

文档级别安全性 是一项 订阅功能

  1. 转到 堆栈管理 > 角色,然后单击 创建角色
  2. 索引权限 中,输入

    1. 索引 字段中的 filebeat-*
    2. 权限 字段中的 readview_index_metadata
  3. 选择 授予对特定文档的读取权限
  4. 输入一个与用户应访问的文档匹配的 Elasticsearch 查询。此示例编写一个查询,允许访问 category 字段等于 click 的文档。

    {
      "match": {
        "category": "click"
      }
    }

    Kibana 会自动将您的 DLS 查询用 query 块包围起来,因此您无需提供自己的查询。

Create role with DLS index privileges

远程索引权限

编辑

如果您至少拥有白金许可证,则可以管理对远程集群中索引的访问权限。

您可以为 本地索引权限 分配相同的权限、文档级别和字段级别权限。

示例:授予对远程集群中索引的访问权限

编辑
  1. 转到 堆栈管理 > 角色,然后单击 创建角色
  2. 远程索引权限 中,输入

    1. 远程集群 字段中您的远程集群的名称。
    2. 远程索引 字段中您的远程集群中索引的名称。
    3. 权限 字段中允许的操作。(例如,readview_index_metadata
Create role with remote index privileges

Kibana 权限

编辑

要将 Kibana 权限分配给角色,请单击 Kibana 部分中的 添加 Kibana 权限

Add Kibana privileges

打开 空间 选择控件以指定是否授予角色对所有空间 所有空间 或一个或多个单独空间的访问权限。如果您选择 所有空间,则在清除选择之前无法选择单独的空间。

使用 权限 菜单授予对功能的访问权限。默认值为 自定义,您可以使用它授予对单个功能的访问权限。否则,您可以通过选择 全部 授予对所有当前和未来功能的读取和写入访问权限,或者通过选择 读取 授予对所有当前和未来功能的读取访问权限。

当使用 按功能自定义 选项时,您可以为每个功能的访问权限选择 全部读取。当向 Kibana 添加新功能时,使用自定义选项的角色不会自动获得对新功能的访问权限。您必须手动更新这些角色。

堆栈监控 依赖于内置角色来授予访问权限。当用户被分配适当的角色时,堆栈监控 应用程序可用;否则,它不可见。

要应用您的更改,请单击 添加 Kibana 权限。该权限将显示在角色的 Kibana 权限部分下。

Add Kibana privilege

功能可用性

编辑

当用户的角色授予对功能的访问权限 这些功能在其当前空间中可见时,用户可以使用这些功能。以下矩阵解释了当通过 空间 和基于角色的访问控制来控制访问时,用户何时可以使用这些功能

空间配置 角色配置 结果

功能隐藏

功能禁用

功能不可用

功能隐藏

功能启用

功能不可用

功能可见

功能禁用

功能不可用

功能可见

功能启用

功能可用

为不同的空间分配不同的权限

编辑

可以使用相同的角色,为不同的空间分配不同的权限。在您添加权限后,单击 添加 Kibana 权限。如果您已经为 所有空间 或某个单独的空间添加了权限,则您将无法在 空间 选择控件中选择这些权限。

此外,如果您已经在 所有空间 中分配了权限,则您只能为单独的空间分配其他权限。与多个角色授予所有权限的并集行为类似,Kibana 权限也是并集。如果您已经授予用户在 所有空间全部 权限,则您无法将角色限制为仅在单个空间具有 读取 权限。

权限摘要

编辑

要查看授予的权限的摘要,请单击 查看权限摘要

View privilege summary

示例 1:授予对单个空间中仪表板的所有访问权限

编辑
  1. 单击 添加 Kibana 权限
  2. 对于 空间,选择一个单独的空间。
  3. 对于 权限,保留默认选择 自定义
  4. 对于仪表板功能,选择 全部
  5. 单击 添加 Kibana 权限
Privilege example 1

示例 2:授予对一个空间的所有访问权限和对另一个空间的读取访问权限

编辑
  1. 单击 添加 Kibana 权限
  2. 对于 空间,选择第一个空间。
  3. 对于 权限,选择 全部
  4. 单击 添加 Kibana 权限
  5. 对于 空间,选择第二个空间。
  6. 对于 权限,选择 读取
  7. 单击 添加 Kibana 权限
Privilege example 2

示例 3:授予对所有空间的读取访问权限和对单个空间的写入访问权限

编辑
  1. 单击 添加 Kibana 权限
  2. 对于 空间,选择 所有空间
  3. 对于 权限,选择 读取
  4. 单击 添加 Kibana 权限
  5. 对于 空间,选择单独的空间。
  6. 对于 权限,选择 全部
  7. 单击 添加 Kibana 权限
Privilege example 3