Как пользоваться API Amazon для работы с Yandex Cloud Postbox
Подготовка к работе
-
Назначьте сервисному аккаунту необходимые роли.
Подходящую роль можно выбрать из раздела Управление доступом. Например, чтобы получить информацию о конфигурации, достаточно роли
postbox.viewer
. Чтобы отправлять письма, назначьте сервисному аккаунту рольpostbox.sender
. -
Создайте статический ключ доступа.
Он нужен для авторизации при отправке запросов к API Amazon. Чтобы хранить ключ безопасно, воспользуйтесь сервисом Yandex Lockbox.
Общий вид запроса к API
<HTTP-метод> <эндпоинт> HTTP/2
Host: postbox.cloud.yandex.net
{Authorization|X-YaCloud-SubjectToken}: <данные_для_аутентификации>
X-Amz-Date: <время_в_формате_ISO_8601>
<тело_запроса>
Список эндпоинтов и нужных для них HTTP-методов смотрите в Справочнике API, список доступных заголовков — в разделе Заголовки запросов.
В запросе нужно передать один из заголовков для аутентификации:
-
X-YaCloud-SubjectToken
— содержит IAM-токен сервисного аккаунта. Подробнее об аутентификации через IAM-токен. -
Authorization
— содержит статический ключ доступа и подпись запроса. Она нужна, если вы используете API напрямую, без AWS CLI и приложений. Yandex Cloud Postbox поддерживает подпись Amazon Signature Version 4 . Подробнее см. в описании заголовкаAuthorization
.Отрабатывать создание подписи вы можете с помощью AWS CLI в режиме отладки. Для этого к команде
aws
добавляйте флаг--debug
. Подробнее см. в примере отладки.Чтобы не составлять подпись вручную, вы можете использовать утилиту cURL
— она автоматически подписывает запросы к API Amazon. Подробнее см. в примере использования API.