AWS SES VerifyEmailIdentity с помощью lightsail

Я пытаюсь использовать SES VerifyEmailIdentity в python. Он работает совершенно нормально на моей локальной системе, но когда мы хостимся на экземпляре lughtsail, возникает следующая ошибка:

При вызове операции VerifyEmailIdentity произошла ошибка (AccessDenied): Пользователь: arn:aws:sts::480862114276:assumed-role/AmazonLightsailInstanceRole/i-0e2s3ff15c45e0eb1 не уполномочен выполнять: ses:VerifyEmailIdentity, поскольку ни одна политика на основе идентификации не разрешает действие ses:VerifyEmailIdentity

Код Python работает на localhost, но при размещении на lightsail возникает вышеуказанная ошибка

import boto3

ses_client = boto3.client('ses', region_name='ap-south-1')

def verify_email_address(email): response = ses_client.verify_email_identity(EmailAddress=email) return response

Я пытался, но нет способа прикрепить роль к экземпляру lightsail в AWS, через которую я могу прикрепить разрешение. Ожидаемый результат - просто все работает нормально, как на локальном, и отправка электронной почты на указанный адрес для проверки.

Ну, поскольку вы можете (правка: здесь ошибка, из-за которой мое объяснение не имеет смысла, я хотел написать не может) настроить роль, с которой запускается экземпляр LightSail, я предлагаю вам создать пользователя IAM и прикрепить роль, которая будет иметь достаточные полномочия, и передать учетные данные пользователя клиенту:

import boto3

client = boto3.client(
    's3',
    aws_access_key_id=ACCESS_KEY,
    aws_secret_access_key=SECRET_KEY,
    aws_session_token=SESSION_TOKEN
)
Вернуться на верх