Может секреты от объектов, созданных в шаблонах ARM, автоматически добавляться в хранилище ключей - PullRequest
0 голосов
/ 26 октября 2018

Если у меня есть шаблон Azure ARM, который можно создать:

  • Реестр контейнеров Azure
  • Хранилище ключей Azure

Существует ли способ автоматического добавления имени пользователя и пароля в реестр контейнеров Azure в хранилище ключей Azure с использованием шаблонов ARM?

Есть ли способ для этой цели ссылаться на секретные имена пользователей и пароли реестра Azure в шаблонах ARM для этой цели?

UPDATE

@ Ответ Эд Бойкина правильный, вот чем я закончил:

{
  "type": "Microsoft.KeyVault/vaults/secrets",
  "name": "[concat(parameters('key_vault_name'), '/AzureContainerRegistryKey1')]",
  "apiVersion": "2015-06-01",
  "properties": {
    "contentType": "text/plain",
    "value": "[listCredentials(resourceId('Microsoft.ContainerRegistry/registries', parameters('container_registry_name')), '2017-10-01').passwords[0].value]"
  },
  "dependsOn": [
    "[concat('Microsoft.KeyVault/vaults/', parameters('key_vault_name'))]",
    "[concat('Microsoft.ContainerRegistry/registries/', parameters('container_registry_name'))]"
  ]
}

1 Ответ

0 голосов
/ 30 октября 2018

Мухаммад, Чтобы создать секреты в KeyVault, вам нужно создать шаблон ARM, который выглядит примерно так. Убедитесь, что вы обновили раздел «зависимость», чтобы этот ресурс зависел от вашего ACR, создаваемого в первую очередь. Имя пользователя будет именем ресурса ACR. Итак, что бы вы ни указали в своем скрипте ARM, вы можете сохранить его в хранилище ключей как секрет хранилища ключей.

Для паролей или ключей это то, что вы делаете. Вот пример шаблона для добавления секрета KeyVault

{
  "type": "Microsoft.KeyVault/vaults/secrets",
  "name": "[concat(variables('keyVaultName'), '/{YourACRKey1SecretName}')]",
  "apiVersion": "2015-06-01",
  "properties": {
    "contentType": "text/plain",
    "value": "[listCredentials(resourceId('Microsoft.ContainerRegistry/registries', parameters('YourACRName')), '2017-10-01').passwords[0].value]"
  },
  "dependsOn": []
}

{YourACRKey1SecretName} следует заменить на секретное имя для значения ACR Key1.

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

для ключа 2

[listCredentials(resourceId('Microsoft.ContainerRegistry/registries', parameters('YourACRName')), '2017-10-01').passwords[1].value]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...