Имею некоторые проблемы, связанные с работой SES AWS по ниже; Я хочу отправить электронное письмо пользователям с моего сайта. Похоже, учетные данные не проверяются, однако я использовал правильные учетные данные, сгенерированные из IAM (я также пробовал ключи сервера root, и это дало мне ту же ошибку). У меня не хватало идей о том, как разрешить / отладить все дальше, чтобы любое руководство было высоко оценено.
Ошибка при выполнении:
Ошибка получения учетных данных с сервера метаданных профиля экземпляра. (Ошибка клиента: 404)
Шаги, предпринятые
У меня есть настройка SES и проверка адресов электронной почты и т. Д.
Я создал профиль IAM с «Полный доступ к SES»
Я установил AWS SDK для php, используя файл phar
Я написал код php ниже, указав правильный код доступа к безопасности непосредственно SES
require 'aws/aws.phar'; use Aws\Ses\SesClient; //More code here $client = SesClient::factory(array( 'key' => 'xxxxxxxxxxxxx', 'secret' => 'xxxxxxxxxxx', 'region' => 'us-west-2', 'version' => '2010-12-01' )); //code to build the $msg here as array try{ $result = $client->sendEmail($msg); //save the MessageId which can be used to track the request $msg_id = $result->get('MessageId'); echo("MessageId: $msg_id"); //view sample output print_r($result); } catch (Exception $e) { echo($e->getMessage()); } //view the original message passed to the SDK print_r($msg);
Спасибо за вашу помощь заранее – это всегда отличное сообщество! Пожалуйста, дайте мне знать, если я могу предоставить что-нибудь еще
Джон
Вы можете предоставить учетные данные для своего SDK, используя несколько методов. См. Документацию: предоставление учетных данных для SDK
1) Установите переменные среды: AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_DEFAULT_REGION со значениями из созданного вами профиля IAM.
2) Вместо 1) вы также можете создать файл ~ / .aws / credentials. Здесь вы можете добавить строки:
[по умолчанию]
aws_access_key_id = YOUR_AWS_ACCESS_KEY_ID
aws_secret_access_key = YOUR_AWS_SECRET_ACCESS_KEY
aws_default_region = регион
1) или 2), безусловно, будет работать, и это будет прямолинейно.
3) Вы также можете создать профиль экземпляра. Вам нужно создать роль роли IAM и профиль экземпляра. Ваш экземпляр должен иметь профиль экземпляра, назначенный при его создании. См. Стр. 183 (как указано в нижней части страницы). Название темы – «Использование роли IAM для предоставления разрешений на приложения, запущенные на экземплярах Amazon EC2») этого руководства: Руководство пользователя AWS IAM, чтобы понять шаги и процедуру. Здесь секретный ключ и ключ доступа автоматически подбираются, и вам не нужно ничего делать. Вам просто нужно установить область по умолчанию, используя шаг 1) (т. Е. Экспортировать AWS_DEFAULT_REGION = someregion).
4) Вы уже пробовали 4-й метод, и может быть, есть некоторые проблемы в ваших настройках, о которых я не знаю.