J'ai récemment commencé à utiliser le nouveau service Amazon Elasticsearch et je n'arrive pas à comprendre la politique d'accès dont j'ai besoin pour ne pouvoir accéder qu'aux services de mes instances EC2 auxquelles un rôle IAM spécifique leur est attribué.
Voici un exemple de la politique d'accès que j'ai actuellement attribuée pour le domaine 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]/*"
}
]
}
Mais comme je l'ai dit, cela ne fonctionne pas. Je me connecte à l'instance EC2 (qui a le my_es_role
rôle qui lui est attaché) et tente d'exécuter un simple appel curl sur le point final "https: //*.es.amazonaws.com", j'obtiens l'erreur suivante:
{"Message": "Utilisateur: anonyme n'est pas autorisé à effectuer: es: ESHttpGet sur la ressource: arn: aws: es: us-east-1: [ACCOUNT_ID]: domain / [ES_DOMAIN] /"}
Quelqu'un sait-il ce que je dois changer dans la politique d'accès pour que cela fonctionne?