提问者:小点点

AWSOpenSearch给用户只读访问仪表板


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

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

  • kibana_user
  • kibana_read_only
  • read_only_index

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

没有权限为[索引:数据/读取/搜索]和用户[名称=测试用户-1,backend_roles=[],请求租户=]:security_exception

我尝试给“索引:数据/读取/搜索”这个角色权限等等,但它不起作用。任何解决方案


共3个答案

匿名用户

我使用:

kibana_all_read
read

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

匿名用户

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

  1. 为这种类型的用户创建一个自定义角色:my-readonly-角色
  2. 添加cluster_composite_ops_ro集群权限。
  3. 添加任何所需的索引模式以限制访问:日志。*
  4. 为读取访问添加索引权限:read索引:admin/解决/index
  5. 添加租户模式:我的租户
  6. 添加租户权限:
  7. 将以下角色映射到所需用户:my-readonly-角色opensearch_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"]
        }
    ]
}

匿名用户

我甚至不知道为什么和如何。