Явное указание Ansible использовать другой набор учетных данных

#amazon-web-services #ansible #amazon-iam #credentials #profile

#amazon-web-services #ansible #amazon-iam #учетные данные #Профиль

Вопрос:

У меня есть код Ansible, который выполняется на экземпляре EC2 и развертывает некоторые ресурсы AWS в той же учетной записи (назовем ее account A). К экземпляру EC2, в котором выполняется код Ansible, привязана роль EC2 IAM, и Ansible использует эту роль для развертывания других ресурсов в учетной записи.

Теперь мне нужно развернуть некоторые другие ресурсы в другой учетной записи AWS (назовите ее учетной записью B), и я получил ключ доступа, секрет и токен для этой учетной записи.

Как явно указать Ansible, который выполняется на экземпляре в учетной записи A, использовать эти дополнительные учетные данные, которые затем, в свою очередь, будут развертывать ресурсы в учетной записи B?

Спасибо, Predrag

Комментарии:

1. Что ж, изменение роли IAM, применяемой к экземпляру, является правильным способом сделать это. Если вы укажете учетные данные в качестве переменных среды, это должно позволить вам получить доступ к учетной записи B, даже если роль IAM предназначена для учетной записи A, хотя это считается небезопасным и не рекомендуется.

2. Связанные с экземплярами EC2, вы можете использовать этот параметр aws_access_key и docs.ansible.com/ansible/latest/collections/amazon/aws /…

Ответ №1:

Самый простой способ — использовать переменные среды. Например,

 AWS_ACCESS_KEY_ID=xxx AWS_SECRET_ACCESS_KEY=xxx AWS_SESSION_TOKEN=xxx ansible-playbook PLAYBOOK