返回

安全且简单!在 Elasticsearch 中轻松找到所需安全权限

后端

在 Elasticsearch 中轻松管理安全权限

Elasticsearch 中的安全权限管理可能是一项复杂的任务。为了简化这一过程,本文将提供一个分步指南,指导您查找所需的权限,并通过两个示例说明其操作方法。

步骤 1:确定所需的权限

在开始查找所需权限之前,首先需要明确您需要什么权限。这包括您需要访问哪些索引、需要执行哪些操作,以及需要访问哪些文档。

步骤 2:使用 Kibana 检查现有权限

Kibana 可以帮助您检查系统中的现有权限。转到 "Security" 选项卡,然后单击 "Roles"。这将显示所有角色及其权限。

步骤 3:创建新角色或编辑现有角色

如果现有角色不具备您所需的权限,则可以创建新角色或编辑现有角色。单击 "Create role" 或 "Edit role" 按钮进行操作。

步骤 4:向角色添加权限

在 "Permissions" 选项卡中,您可以添加新权限或编辑现有权限。单击 "Add" 按钮添加权限,单击现有权限旁边的 "Edit" 按钮编辑权限。

步骤 5:将角色分配给用户或组

创建或编辑角色后,可以将角色分配给用户或组。转到 "Users" 或 "Groups" 选项卡,然后单击要分配角色的用户或组旁边的 "Edit" 按钮。

步骤 6:测试新权限

分配角色后,使用具有新权限的用户或组登录到 Elasticsearch,然后尝试执行您需要执行的操作来测试新权限。

示例 1:仅授予对 index- 索引和 index1 别名创建文档的索引权限*

  1. 转到 "Security" 选项卡,然后单击 "Roles"。
  2. 单击 "Create role" 按钮。
  3. 在 "Name" 字段中,输入 "Index-* and index1 alias writer"。
  4. 在 "Permissions" 选项卡中,单击 "Add" 按钮。
  5. 在 "Index" 字段中,输入 "index-*"。
  6. 在 "Actions" 字段中,选择 "create_doc"。
  7. 在 "Aliases" 字段中,输入 "index1"。
  8. 单击 "Save" 按钮。
  9. 将角色分配给用户或组。
  10. 测试新权限。

示例 2:仅授予查询 _cat API 中有 relevant_ops 项的 _cat API 的索引权限

  1. 转到 "Security" 选项卡,然后单击 "Roles"。
  2. 单击 "Create role" 按钮。
  3. 在 "Name" 字段中,输入 "Cat API reader with relevant_ops only"。
  4. 在 "Permissions" 选项卡中,单击 "Add" 按钮。
  5. 在 "API" 字段中,输入 "_cat"。
  6. 在 "Actions" 字段中,选择 "read"。
  7. 在 "Request parameters" 字段中,输入 "relevant_ops"。
  8. 在 "Values" 字段中,输入 "true"。
  9. 单击 "Save" 按钮。
  10. 将角色分配给用户或组。
  11. 测试新权限。

常见问题解答

  1. 如何授予用户对特定文档的访问权限?

    • 使用 Kibana 中的 Document Level Security 插件。
  2. 如何撤销用户的权限?

    • 编辑或删除用户的角色。
  3. 如何将权限分配给嵌套组中的用户?

    • 通过在角色中包含嵌套组来实现。
  4. 如何管理动态创建的索引的权限?

    • 使用 Kibana 中的 Index Patterns 功能创建索引模式,并向其授予权限。
  5. 如何进行故障排除?

    • 检查 Kibana 中的审计日志,并使用 dev tools 中的 "Security" 部分检查权限。

结论

通过遵循本文中概述的步骤,您可以轻松地在 Elasticsearch 中安全管理权限。通过使用 Kibana 和角色管理功能,您可以授予和撤销权限,同时确保您的数据安全可靠。