3

我正在使用 aws OpenSearch 来查看实时数据分析。

我正在使用以下角色为我的用户提供对仪表板的只读访问权限,如此处所述

  • kibana_user
  • kibana_read_only
  • 只读索引

但是由于“kibana_user”角色的某些权限,用户仍然可以编辑仪表板。所以我尝试使用 OpenSearch 内置功能创建重复角色,并从重复角色中删除管理和删除权限,并将此角色分配给我的用户。但是这次即使我没有删除管理和删除权限,用户也无法查看仪表板和仪表板列表,我在浏览器中收到以下错误

[indices:data/read/search] 和用户 [name=test-user-1, backend_roles=[], requestedTenant=] 没有权限:security_exception

我尝试将“indices:data/read/search”这个权限授予角色等等,但它没有用。任何解决方案

4

2 回答 2

0

我用了:

kibana_all_read
read

这似乎可行,他们可以将仪表板置于编辑模式,但无法保存。

于 2022-01-28T10:12:08.350 回答
0

只读仪表板用户的标准方法如下:

  1. 为此类用户创建自定义角色:my-readonly-role
  2. 添加cluster_composite_ops_ro集群权限。
  3. 添加任何所需的索引模式以限制访问:logs.*.
  4. 为读取访问添加索引权限:read, indices:admin/resolve/index.
  5. 添加租户模式:My-Tenant
  6. 添加租户权限:read,write
  7. 将以下角色映射到所需用户:my-readonly-roleopensearch_dashboards_read_only

注意:这是针对 OpenSearch 1.1 版进行测试的。

创建角色 (API)

这是代表上述步骤的 API 块:

{
    "cluster_permissions": ["cluster_composite_ops_ro"],
    "index_permissions": [
        {
            "index_patterns": ["logs.*"],
            "dls": "",
            "fls": [],
            "masked_fields": [],
            "allowed_actions": ["read", "indices:admin/resolve/index"]
        }
    ],
    "tenant_permissions": [
        {
            "tenant_patterns": ["My-Tenant"],
            "allowed_actions": ["read", "write"]
        }
    ]
}
于 2022-03-04T08:29:40.607 回答