2016-01-22 22 views
6

Sto tentando di inviare un'e-mail utilizzando Amazon SES nella funzione AWS Lambda, per questo sto affrontando il seguente errore.Accesso negato durante l'invio di e-mail da AWS SES nella funzione Lambda

AccessDenied: User arn:aws:sts::XXXXX:assumed-role/lambda_basic_execution/awslambda_XXXX' is not authorized to perform SES: SendEmail 'sulla risorsa `ARN: AWS: SES: noi-ovest-2: XXX: identity/[email protected]'

ho concesso il permesso per

"ses: SendEmail", "ses: SendRawEmail" per il ruolo IAM.

+0

Puoi includere la politica che si è applicato al * * lambda_basic_execution ruolo? – Aegix

+1

Trova le politiche sottostanti - { "Version": "2012/10/17", "Dichiarazione": [{ "Sid": "StmtXXXXXXXXX", "Effect": "Consenti", "Azione ": [ "ses: sendEmail", "ses: SendRawEmail" ], "risorsa": [ "*" ] } ] } – RakeshKalwa

risposta

5

Dopo una lunga debug ho ottenuto il problema, hanno bisogno di "lambda_basic_execution" ruolo da accordare con il permesso di accedere "SES: SendEmail", "SES: SendRawEmail".

Dove stavo cercando di concedere l'autorizzazione per il nuovo ruolo IAM che ho creato, ma la funzione lambda è mappata su "lambda_basic_execution" quindi c'è una mancata corrispondenza.

Riferimento - http://docs.aws.amazon.com/ses/latest/DeveloperGuide/control-user-access.html#iam-and-ses-examples-email-sending-actions

+1

Potrebbe incollare la politica finale che ha lavorato per voi? Sto ancora avendo questo problema pure. Grazie. – warren