当我创建一个使用ARM模板SQL Azure数据库 - 有必要提供主SQL管理员。
我打算存放在Azure中Keyvault这个密码值有ARM只使用秘密标识符。
在工作模式下,用户/角色创建和存储密码将是一个运营经理和部署工程师应该没有关于密码的想法。
这是上下文,是它足以只创建/存储一个[揭秘]在Azure中的关键库?而没有密钥的使用情况如何?
我缺少的东西在我上面的方法的关键?
重点Vault帮助您保护您的应用程序使用的加密密钥和其他秘密时,他们是预置或在云中。在Azure上的服务越来越多,现在正在整合Azure的主要库为喜欢的事情的部署,数据,甚至磁盘加密他们的秘密/主要来源。
在Azure的资源管理器模板,您可以提供references to secrets in Azure KeyVault并在2.9 Azure的SDK,你可以使用可用的工具在VS把这作为保存秘密一样简单。有使这项工作需要几个步骤,但我们已经取得了很容易让你在这个版本。
还要注意,执行部署,用户需要读取权限库中的秘密。
参考:Key Vault Support in ARM Templates.
这里是一个教程:Create an Azure Key Vault using an ARM template
它可以帮助你存储和检索从Azure的Keyvault密码。
希望这可以帮助。
您可以从KeyVault店取回如下图所示:
template.json:
"resources": [
{
"type": "Microsoft.KeyVault/vaults",
"name": "[parameters('name')]",
"apiVersion": "2016-10-01",
"location": "[parameters('location')]",
"properties": {
"enabledForDeployment": "[parameters('enabledForDeployment')]",
"enabledForTemplateDeployment": "[parameters('enabledForTemplateDeployment')]",
"enabledForDiskEncryption": "[parameters('enabledForDiskEncryption')]",
"accessPolicies": "[parameters('accessPolicies')]",
"tenantId": "[parameters('tenant')]",
"sku": {
"name": "[parameters('sku')]",
"family": "A"
}
}
}
]
parameters.json:
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"name": {
"value": "ContosoAKV"
},
"location": {
"value": "centralus"
},
"sku": {
"value": "Standard"
},
"accessPolicies": {
"value": []
},
"tenant": {
"value": "XXXXXXXXXXXXXXXXXXXXXXXX"
},
"enabledForDeployment": {
"value": false
},
"enabledForTemplateDeployment": {
"value": false
},
"enabledForDiskEncryption": {
"value": false
}
}
}