如何解决 OpenSearch Service 集群中的精细访问控制问题?

1 分钟阅读
0

我在 Amazon OpenSearch Service 集群中遇到了访问控制错误或问题。

简短描述

您可能会收到精细访问控制(FGAC)错误,或需要在 OpenSearch Service 集群中进行其他配置。要解决这些问题,请根据您的用例执行以下故障排除步骤。

**注意:**由于 OpenSearch Service 的托管设计,它不支持匿名访问。

解决方法

"security_exception","reason":"no permissions" 403 错误

要解决此错误,请先检查您的 OpenSearch Service 集群中的用户或后端角色是否有所需权限。请参阅 OpenSearch 网站上的权限。然后,完成 OpenSearch 网站中的步骤,将用户或后端角色映射到角色

“用户:匿名用户无权执行:iam:PassRole”

在尝试注册手动快照时,可能会收到此错误。您必须将 manage_snapshots 角色映射到用于注册手动快照的 Identity and Access Management(IAM)角色。然后,使用该 IAM 角色向该域发送已签名的请求。

“找不到任何 Elasticsearch 数据”

在升级到 OpenSearch Service 版本 7.9 后尝试创建索引模式时,可能会收到此错误。在 FGAC 已激活集群中创建索引模式时,使用解析索引 API 来将 indices:admin/resolve/index 添加至所有索引和别名。有关详细信息,请参阅 OpenSearch 网站上的 API

缺少此权限时,OpenSearch Service 会引发 403 错误状态码。然后,该代码会映射到来自 OpenSearch Dashboards 的 500 错误状态代码。因此,这些索引没有列出。

401 未授权错误

当您在主凭证中使用 $! 字符及 curl -u "user:password" 时,可能会收到 401 未授权错误。请务必将凭证放在单引号中,如以下示例所示:

curl -u 'username' <Domain_Endpoint>

在激活精细访问控制后,将其他 AWS 服务与 OpenSearch Service 集成

要在激活精细访问控制时将另一个 AWS 服务与 OpenSearch Service 集成,请为这些服务的 IAM 角色提供正确权限。有关详细信息,请参阅集成

根据用户租赁提供对特定索引、控制面板和可视化的精细访问

要提供对特定索引或控制面板的 FGAC 访问,请将用户映射到对租赁用户 Kibana 索引拥有权限的角色:

.kibana_<hash>_<tenant_name>

有关详细信息,请参阅 OpenSearch 网站上的管理 OpenSearch Dashboards 索引

在字段级别或文档级别使用精细访问控制

要在字段级别使用精细访问控制,请设置具有所需字段级别安全性的角色。然后,将用户映射到您创建的角色。有关详细信息,请参阅 OpenSearch 网站上的字段级安全性

要在文档级别使用精细访问控制,请创建具有所需文档级安全性的内部控制面板角色。然后,将用户映射到内部控制面板。有关详细信息,请参阅 OpenSearch 网站上的文档级安全性

相关信息

Amazon OpenSearch Service 中的精细访问控制

AWS 官方
AWS 官方已更新 10 个月前