Назад | Перейти на главную страницу

Использовать учетные данные переменной среды для source_profile с помощью интерфейса командной строки AWS

У меня есть 2 аккаунта AWS, и я настроил аутентификацию между аккаунтами с использованием ролей IAM.

Я создал именованный профиль интерфейса командной строки AWS для второй учетной записи, который использует role_arn и указывает мой профиль по умолчанию как source_profile.

Для своего профиля по умолчанию я использую KEY и SECRET как переменные среды, а не как статические строки в файле ~ / .aws / credentials.

Однако, когда я переключаюсь на именованный профиль и запрашиваю API, я получаю следующую ошибку:

The source_profile "default" must specify either static credentials or an assume role configuration

Есть ли способ получить именованный профиль для ссылки на мои учетные данные переменной среды, а не на статические учетные данные в ~ / .aws / credentials?

Оказывается, это довольно просто (это не очень очевидно в документации). Вместо использования source_profile вы используете credential_source:

[profile dev]
credential_source = Environment
role_arn = arn:aws:iam::<account_id>:role/Admin

Примечание: в данном случае роль «Администратор» является примером. Вам необходимо обновить это до любой роли кросс-аккаунта, которую вы создали. Точно так же "dev" - это пример профиля в моей конфигурации.

Источник: https://docs.aws.amazon.com/cli/latest/topic/config-vars.html