Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019
Azure Key Vault позволяет разработчикам безопасно хранить конфиденциальные сведения и управлять ими, такими как пароли, ключи API и сертификаты. В этой статье описывается, как запрашивать и использовать секреты из Azure Key Vault в конвейере.
Предварительные условия
Продукт | Требования |
---|---|
Azure DevOps | - Проект Azure DevOps. Разрешения - : — Чтобы предоставить доступ ко всем конвейерам в проекте: необходимо быть членом группы администраторов проектов. — Для создания подключений к службам необходимо иметь роль администратора или создателя для подключений служб. |
GitHub | — учетная запись GitHub и репозиторий GitHub. - Подключение службы GitHub для авторизации Azure Pipelines. |
Лазурный | — подписка Azure. |
Создайте хранилище ключей.
Войдите в портал Azure и нажмите кнопку "Создать ресурс".
В разделе Key Vault выберите "Создать", чтобы создать azure Key Vault.
Выберите свою подписку в раскрывающемся меню, а затем выберите существующую группу ресурсов или создайте новую. Введите имя хранилища ключей, выберите регион, выберите ценовую категорию и нажмите кнопку "Далее", если требуется настроить дополнительные свойства. В противном случае нажмите кнопку "Проверить и создать ", чтобы сохранить параметры по умолчанию.
По завершении развертывания выберите элемент Перейти к ресурсу.
Настройка проверки подлинности
Создание назначаемого пользователем управляемого удостоверения
Войдите в портал Azure, а затем найдите в строке поиска службу Управляемые удостоверения.
Выберите "Создать" и заполните обязательные поля следующим образом:
- Подписка: выберите подписку в раскрывающемся меню.
- Группа ресурсов: выберите существующую группу ресурсов или создайте новую.
- Регион: выберите регион в раскрывающемся меню.
- Имя: Введите имя для назначенной пользователем управляемой идентичности.
Нажмите кнопку "Рецензирование" и "Создать " после завершения.
После завершения развертывания выберите "Перейти к ресурсу", а затем скопируйте идентификатор подписки и клиента, вам потребуется выполнить следующие действия.
Перейдите ксвойствам>параметрови скопируйте идентификатор клиента управляемого удостоверения, чтобы использовать его позже.
Настройка политик доступа к хранилищу ключей
Перейдите к портал Azure и используйте строку поиска, чтобы найти созданное ранее хранилище ключей.
Выберите политики доступа, а затем нажмите Создать, чтобы добавить новую политику.
В разделе "Разрешения секрета" установите флажки "Получить " и "Список ".
Нажмите «Далее», затем вставьте идентификатор клиента управляемого удостоверения, созданного ранее, в поле поиска.
Выберите управляемое удостоверение, нажмите кнопку "Далее", а затем еще раз.
Просмотрите новую политику и нажмите кнопку "Создать " после завершения.
Создать подключение к службе
Войдите в организацию Azure DevOps и перейдите к проекту.
Выберите параметры проекта>подключения службы, а затем выберите Создать подключение службы.
Выберите Azure Resource Manager, а затем нажмите кнопку "Далее".
В разделе "Тип удостоверения" выберите управляемое удостоверение в раскрывающемся меню.
Для шага 1: сведения об управляемом удостоверении заполните поля следующим образом:
Подписка для управляемого удостоверения: выберите подписку, содержащую управляемое удостоверение.
Группа ресурсов для управляемого удостоверения: выберите группу ресурсов, в которой размещено управляемое удостоверение.
Управляемое удостоверение: выберите управляемое удостоверение в раскрывающемся меню.
Для Шага 2: Область Azure заполните поля следующим образом:
Уровень области подключения к службе: выбор подписки.
Подписка на подключение к службе: выберите подписку, к которой будет обращаться управляемое удостоверение.
Группа ресурсов для подключения к службе: (необязательно) Укажите это, если требуется ограничить доступ к определенной группе ресурсов.
Для шага 3. Сведения о подключении к службе:
Имя подключения службы: укажите имя для вашего подключения к службе.
Справочник по управлению службами: (необязательно) включите сведения о контексте из базы данных ITSM.
Описание: (необязательно) Добавьте описание.
В разделе Безопасность установите флажок Предоставить разрешение на доступ ко всем потокам, чтобы позволить всем потокам пользоваться этим подключением к службе. Если этот флажок не установлен, необходимо вручную предоставить доступ для каждого конвейера.
Нажмите кнопку "Сохранить", чтобы проверить и создать подключение к службе.
Получение и использование секретов в вашем конвейере
С помощью задачи Azure Key Vault теперь можно запрашивать и получать секреты из Azure Key Vault и использовать их в последующих задачах в конвейере. Обратите внимание, что секреты должны быть явно сопоставлены с переменными среды, как показано в следующем примере:
pool:
vmImage: 'ubuntu-latest'
steps:
- task: AzureKeyVault@1
inputs:
azureSubscription: 'SERVICE_CONNECTION_NAME'
KeyVaultName: 'KEY_VAULT_NAME'
SecretsFilter: '*'
- bash: |
echo "Secret Found! $MY_MAPPED_ENV_VAR"
env:
MY_MAPPED_ENV_VAR: $(SECRET_NAME)
Выходные данные последнего шага bash должны выглядеть следующим образом:
Secret Found! ***
Примечание.
Чтобы запросить несколько секретов из Azure Key Vault, используйте SecretsFilter
входные данные и укажите разделенный запятыми список имен секретов, например secret1, secret2.