我最近开始使用新的Amazon Elasticsearch Service,但似乎无法弄清楚我需要的访问策略,这样我只能从分配了特定IAM角色的EC2实例中访问服务。
这是我当前为ES域分配的访问策略的示例:
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "",
      "Effect": "Allow",
      "Principal": {
        "AWS": [
          "arn:aws:iam::[ACCOUNT_ID]:role/my_es_role",
        ]
      },
      "Action": "es:*",
      "Resource": "arn:aws:es:us-east-1:[ACCOUNT_ID]:domain/[ES_DOMAIN]/*"
    }
  ]
}
但是正如我所说,这是行不通的。我登录到EC2实例(具有my_es_role附加的角色)并尝试在“ https://*.es.amazonaws.com”端点上运行简单的curl调用,出现以下错误:
{“消息”:“用户:匿名者无权执行:es:ESHttp获取资源:arn:aws:es:us-east-1:[ACCOUNT_ID]:domain / [ES_DOMAIN] /”}
有人知道我必须更改访问策略才能使其正常工作吗?