Сайт использует сервис веб-аналитики Яндекс Метрика с помощью технологии «cookie». Пользуясь сайтом, вы даете согласие на использование данной технологии.
Правильная настройка Terraform в Azure (принцип службы + рекомендации)
Узнайте, как правильно и безопасно аутентифицировать Terraform в Azure с помощью принципала-службы — больше никаких личных учётных данных. Мы создадим SP с RBAC с минимальными привилегиями, получим необходимые идентификаторы и секреты, загрузим их как переменные среды и выполним terraform init/plan/apply от начала до конца. Я также покажу, где хранить секреты (Key Vault / GitHub Actions), и дам краткие советы, такие как ротация и OIDC/федеративная идентификация. Что вы узнаете Почему не рекомендуется использовать личные учётные данные для автоматизации Что такое субъект-служба (удостоверение приложения против удостоверения человека) Создание субъекта-службы с Contributor (или более узким) в нужной области действия Получение идентификатора клиента, секрета клиента, идентификатора арендатора, идентификатора подписки Установка переменных среды для аутентификации Terraform Сохранение переменных среды в ~/.bashrc (Linux/macOS) или профиле PowerShell (Windows) Запуск terraform init/plan/apply без входа в Azure CLI Рекомендации по безопасности: минимальные привилегии, ротация секретов, Key Vault/GitHub Secrets, федеративная идентификация (OIDC) Используемые команды Создание субъекта-службы (при необходимости измените роль/область действия): az login az account show --query id -o tsv # получить идентификатор подписки, если необходимо az ad sp create-for-rbac \ --name "sp-terraform" \ --role "Contributor" \ --scopes "/subscriptions/SUBSCRIPTION_ID" \ -o json Переменные среды Terraform: export ARM_CLIENT_ID="APP_ID" export ARM_CLIENT_SECRET="PASSWORD" export ARM_TENANT_ID="TENANT_ID" export ARM_SUBSCRIPTION_ID="SUBSCRIPTION_ID" Запуск Terraform: terraform init terraform plan terraform apply Советы по безопасности Минимальные привилегии: только те разрешения, которые необходимы вашему конвейеру Безопасное хранение секретов: Azure Key Vault, GitHub Actions → Repository Secrets Регулярно проводите ротацию секретов SP (еженедельно/ежемесячно в соответствии с политикой) Рассмотрите возможность использования федеративной идентификации (OIDC) для отказа от секретов в CI/CD -------- 📚 *Дополнительные ресурсы:* Мой курс для начинающих AWS: DevOps для начинающих: AWS Mastery: 26 облачных проектов AWS для инженеров и архитекторов - #Azure #Terraform #DevOps #RBAC #AzureAD #GitHubActions