【发布时间】:2021-10-16 20:52:36
【问题描述】:
AWS Elasticsearch 细粒度访问控制使用 Open Distro Elasticsearch 安全性。使用此功能授权可以在 Elasticsearch 内部处理。 https://opendistro.github.io/for-elasticsearch-docs/docs/security/access-control/users-roles/#create-roles
AWS 文档建议使用 Open Distro Elasticsearch 文档,以使用安全性 Rest API,例如创建角色或读取角色。
您可以使用 Kibana 或 REST API 中的 _opendistro/_security 操作为细粒度访问控制创建新角色。有关更多信息,请参阅 Open Distro for Elasticsearch 文档。 https://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/fgac.html
Elasticsearch 中有一些角色,我们可以使用这些角色来控制 IAM 用户/角色的授权权限。这是通过将 IAM 用户添加到用户列表或将 IAM 角色添加到后端角色来使用角色映射完成的。
我将我的 IAM 角色添加到 Elasticsearch 后端角色中,并且我能够执行以下 API,
PUT /my_index
PUT /_template/template_for_my_index
但是当我执行下面的 API 时,我得到了以下响应。
PATCH /_opendistro/_security/api/rolesmapping/my_role_inside_elasticsearch
{'statusCode': 200, 'headers': {'Access-Control-Allow-Origin': '*'}, 'isBase64Encoded': False, 'body': '{"status":"FORBIDDEN","message":"No permission to access REST API: User arn:aws:iam::123456789:role/myIamRole with Open Distro Security Roles [all_access] does not have any role privileged for admin access. No ssl info found in request."}'}
我尝试将 IAM 角色添加到 Elasticsearch all_access 以及我自己的具有 * 权限(所有权限)的 Elasticsearch 角色中。
如何授予 IAM 角色/用户访问权限以在 AWS Elasticsearch 中创建角色?
注意:IAM 角色和 Elasticsearch 角色是不同的。
【问题讨论】:
标签: amazon-web-services security elasticsearch rest elasticsearch-opendistro