Недавно я начал использовать новую службу Amazon Elasticsearch Service, и мне кажется, что я не могу понять, какая политика доступа мне нужна, поэтому я могу получать доступ только к службам из моих инстансов EC2, которым назначена конкретная роль IAM.
Вот пример политики доступа, которую я назначил для домена 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
привязана роль) и пытаюсь выполнить простой вызов curl на конечной точке «https: //*.es.amazonaws.com», я получаю следующую ошибку:
{"Сообщение": "Пользователь: анонимный не авторизован для выполнения: es: ESHttpGet на ресурсе: arn: aws: es: us-east-1: [ACCOUNT_ID]: domain / [ES_DOMAIN] /"}
Кто-нибудь знает, что мне нужно изменить в политике доступа, чтобы это работало?