Niedawno zacząłem korzystać z nowej usługi Amazon Elasticsearch i nie potrafię określić, jakiej polityki dostępu potrzebuję, aby mieć dostęp tylko do usług z moich instancji EC2, które mają przypisaną określoną rolę IAM.
Oto przykład polityki dostępu, którą obecnie przypisałem dla domeny 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]/*"
}
]
}
Ale jak powiedziałem, to nie działa. Loguję się do instancji EC2 (która ma my_es_role
przypisaną rolę) i próbuję uruchomić proste wywołanie curl w punkcie końcowym „https: //*.es.amazonaws.com”, pojawia się następujący błąd:
{"Message": "Użytkownik: anonymous nie ma uprawnień do wykonywania: es: ESHttpGet on resource: arn: aws: es: us-east-1: [ACCOUNT_ID]: domain / [ES_DOMAIN] /"}
Czy ktoś wie, co muszę zmienić w polityce dostępu, żeby to zadziałało?