J'ai un cluster AWS ElasticSearch dans le compte "A".AWS ElasticSearch écrit sur le compte "A" de lambda dans le compte "B"
J'essaie de créer un lambda (déclenché à partir d'un flux DynamoDB) sur le compte "B" qui écrira à ES sur le compte "A".
Je reçois l'erreur suivante:
{
"Message":"User: arn:aws:sts::AccountB:assumed-role/lambdaRole1/sourceTableToES is not authorized to perform: es:ESHttpPost on resource: beta-na-lifeguard"
}
J'ai essayé de mettre les STS, ainsi que le rôle dans la politique d'accès ES (au compte « A ») sans chance. Voici ma politique:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::AccountA:user/beta-elasticsearch-admin"
},
"Action": "es:*",
"Resource": "*"
},
{
"Effect": "Allow",
"Principal": {
"AWS": [
"arn:aws:iam::AccountA:user/beta-elasticsearch-readwrite",
"arn:aws:iam::AccountA:role/beta-na-DynamoDBStreamLambdaElasticSearch",
"arn:aws:sts::AccountB:assumed-role/lambdaRole1/sourceTableToES",
"arn:aws:iam::AccountB:role/service-role/lambdaRole1"
]
},
"Action": [
"es:ESHttpGet",
"es:ESHttpPost",
"es:ESHttpPut"
],
"Resource": "*"
}
]
}
merci John, cela m'a mis sur la bonne voie – jhilden