Amazon SES 535 Authentication Credentials Invalid
If you're using Terraform, you can use the following .tf
file so that you can get the proper data
resource "aws_iam_user" "smtp_user" {
name = "smtp_user"
}
resource "aws_iam_access_key" "smtp_user" {
user = aws_iam_user.smtp_user.name
}
data "aws_iam_policy_document" "ses_sender" {
statement {
actions = ["ses:SendRawEmail"]
resources = ["*"]
}
}
resource "aws_iam_policy" "ses_sender" {
name = "ses_sender"
description = "Allows sending of e-mails via Simple Email Service"
policy = data.aws_iam_policy_document.ses_sender.json
}
resource "aws_iam_user_policy_attachment" "test-attach" {
user = aws_iam_user.smtp_user.name
policy_arn = aws_iam_policy.ses_sender.arn
}
output "smtp_username" {
value = aws_iam_access_key.smtp_user.id
}
output "smtp_password" {
value = aws_iam_access_key.smtp_user.ses_smtp_password_v4
}
This will output the user name and password needed for SMTP authentication for the region.
This will do the proper computation for the password.
Important
Your SMTP user name and password are not the same as your AWS access key ID and secret access key. Do not attempt to use your AWS credentials to authenticate yourself against the SMTP endpoint. For more information about credentials, see Using Credentials With Amazon SES.
Here's the link: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/smtp-credentials.html
The issue is fixed in our case with the following : The AWS SMTP had special characters in its credentials . The credentials have to be url encoded and then provided in the configuration.