Kibana 角色管理
编辑Kibana 角色管理编辑
角色是权限的集合,允许您在 Kibana 和 Elasticsearch 中执行操作。不会直接向用户授予权限,而是为其分配一个或多个描述所需访问级别的角色。当您为用户分配多个角色时,用户将获得角色权限的并集。这意味着您不能通过为用户分配额外的角色来减少其权限。您必须删除或编辑其现有角色之一。
要创建角色,请打开菜单,然后单击 堆栈管理 > 角色,然后单击 创建角色。
所需权限编辑
访问角色管理需要 manage_security
集群权限。
索引权限编辑
每个角色都可以授予对多个数据索引的访问权限,并且每个索引都可以具有一组不同的权限。我们建议向您希望用户在 Kibana 中使用的每个索引授予 read
和 view_index_metadata
权限。
有关可用选项的完整说明,请参阅 索引权限。
文档级和字段级安全性在授予对数据的访问权限方面为您提供了更高的粒度。借助文档级安全性 (DLS),您可以编写 Elasticsearch 查询来描述此角色授予访问权限的文档。借助字段级安全性 (FLS),您可以指示 Elasticsearch 授予或拒绝访问每个文档中的特定字段。
示例:授予对与 filebeat-*
模式匹配的索引的访问权限编辑
- 转到 堆栈管理 > 角色,然后单击 创建角色。
-
在 索引权限 中,输入
-
索引 字段中的
filebeat-*
。 -
权限 字段中的
read
和view_index_metadata
。
-
索引 字段中的
示例:授予对与 filebeat-*
模式匹配的索引中的特定文档的读取访问权限编辑
- 转到 堆栈管理 > 角色,然后单击 创建角色。
-
在 索引权限 中,输入
-
索引 字段中的
filebeat-*
。 -
权限 字段中的
read
和view_index_metadata
。
-
索引 字段中的
- 选择 授予对特定文档的读取权限。
-
输入与您的用户应访问的文档匹配的 Elasticsearch 查询。此示例编写了一个查询,该查询允许访问
category
字段等于click
的文档{ "match": { "category": "click" } }
Kibana 会自动使用
query
块包围您的 DLS 查询,因此您无需自己提供。
远程索引权限编辑
如果您至少拥有白金许可证,则可以管理对远程集群中索引的访问。
您可以分配与 本地索引权限 相同的权限、文档级和字段级。
示例:授予对远程集群中索引的访问权限编辑
- 转到 堆栈管理 > 角色,然后单击 创建角色。
-
在 远程索引权限 中,输入
- 远程集群 字段中远程集群的名称。
- 远程索引 字段中远程集群中索引的名称。
- 权限 字段中允许的操作。(例如
read
和view_index_metadata
)
Kibana 权限编辑
要将 Kibana 权限分配给角色,请单击 Kibana 部分中的 添加 Kibana 权限。
打开 空间 选择控件以指定是授予角色对所有空间 所有空间 的访问权限,还是授予对一个或多个单独空间的访问权限。如果选择 所有空间,则在清除选择之前,您将无法选择单个空间。
使用 权限 菜单授予对功能的访问权限。默认值为 自定义,您可以使用它来授予对各个功能的访问权限。否则,您可以通过选择 全部 来授予对所有当前和未来功能的读写访问权限,或者通过选择 读取 来授予对所有当前和未来功能的读取访问权限。
使用 按功能自定义 选项时,您可以为每个功能选择 全部、读取 或 无 访问权限。随着新功能添加到 Kibana,使用自定义选项的角色不会自动获得对新功能的访问权限。您必须手动更新角色。
堆栈监控 依赖于内置角色来授予访问权限。为用户分配适当的角色后,堆栈监控 应用程序将可用;否则,它将不可见。
要应用您的更改,请单击 添加 Kibana 权限。该权限显示在角色的 Kibana 权限部分下。
功能可用性编辑
当用户的角色授予对功能的访问权限 并且 这些功能在其当前空间中可见时,这些功能对用户可用。下表说明了在通过 空间 和基于角色的访问控制来控制访问权限时,功能何时对用户可用
空间配置 | 角色配置 | 结果 |
---|---|---|
功能隐藏 |
功能禁用 |
功能不可用 |
功能隐藏 |
功能启用 |
功能不可用 |
功能可见 |
功能禁用 |
功能不可用 |
功能可见 |
功能启用 |
功能可用 |
为不同的空间分配不同的权限编辑
使用相同的角色,可以为不同的空间分配不同的权限。添加权限后,单击 添加 Kibana 权限。如果您已经为 所有空间 或单个空间添加了权限,则将无法在 空间 选择控件中选择这些权限。
此外,如果您已经在 所有空间 级别分配了权限,则只能为单个空间分配额外的权限。与多个角色授予所有权限的并集的行为类似,Kibana 权限也是一个并集。如果您已经在 所有空间 级别授予了用户 全部 权限,则无法将角色限制为仅在单个空间级别拥有 读取 权限。
示例 1:授予对单个空间中仪表板的所有访问权限编辑
- 单击 添加 Kibana 权限。
- 对于 空间,选择一个单独的空间。
- 对于 权限,保留默认选择 自定义。
- 对于仪表板功能,选择 全部
- 单击 添加 Kibana 权限。
示例 2:授予对一个空间的所有访问权限和对另一个空间的读取访问权限编辑
- 单击 添加 Kibana 权限。
- 对于 空间,选择第一个空间。
- 对于 权限,选择 全部。
- 单击 添加 Kibana 权限。
- 对于 空间,选择第二个空间。
- 对于 权限,选择 读取。
- 单击 添加 Kibana 权限。
示例 3:授予对所有空间的读取访问权限和对单个空间的写入访问权限编辑
- 单击 添加 Kibana 权限。
- 对于 空间,选择 所有空间。
- 对于 权限,选择 读取。
- 单击 添加 Kibana 权限。
- 对于 空间,选择单个空间。
- 对于 权限,选择 全部。
- 单击 添加 Kibana 权限。