- 21, Oct 2024
- #1
Фон
- Мы используем Ansible для подготовки и управления инфраструктурой Azure. На данный момент мы запускаем Ansible «вручную», т.е. мы вручную выполнить плейбуки для различных автоматизированных задач. Никакой CI-инфраструктуры.
- Вероятно, это не актуально, но мы управляем запасами с помощью динамического скрипта.
.bashrc
. - Нас призывают соблюдать максимальную безопасность, т.е.
- Не храните пароли Хранилища в
~/.azure/credentials
or in any local file - Не храните секреты Azure в
~/.vault_pass
- Не храните ничего безопасного в
azure_rm.py
.
- Не храните пароли Хранилища в
В таком сценарии у меня возникают проблемы с разработкой последовательной стратегии, обеспечивающей доступ моих сборников сценариев к секретам Azure при соблюдении приведенных выше рекомендаций.
Вопрос
Как мне избежать хранения учетных данных Ansible Vault и Azure в файлах, сохраняя при этом доступ к ним для моих плейбуков?
Что я пробовал
На данный момент я придумал сценарий-обертку, который
- запрашивает у пользователя пароль Vault
- Использует это для расшифровки сценария Vaulted Shell.
- Оценивает сценарий, который загружает переменные среды Azure в среду;
- Запускает playbook в установленной таким образом среде.
Есть ли лучшие (более элегантные, менее сложные, более «Ansible») решения?
#ansible #ansible-vault