如果我有一个Azure ARM模板,可以创建:
是否有一种方法可以使Azure容器注册表的用户名和密码使用ARM模板自动添加到Azure密钥库中?
有什么方法可以在ARM模板中引用Azure容器注册表用户名和密码机密吗?
更新
@EdBoykin的回答是正确的,这就是我最后得出的结论:
{
"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'))]"
]
}
发布于 2018-10-30 12:23:49
穆罕默德,要在KeyVault中创建秘密,你需要创建一个类似这样的手臂模板。请确保更新“依赖项”部分,以便该资源取决于首先创建的ACR。用户名将是ACR资源名。所以,无论你在你的手臂脚本中设置了什么,你都可以把它作为密钥库的秘密存储在你的密钥库中。
对于密码或密钥,这就是你要做的。下面是一个添加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]
https://stackoverflow.com/questions/53012377
复制相似问题