正如4c74356b41所说,目前没有办法直接做。您可以使用Azure Key Vault避免密码显示为纯文本。
密钥保管库可以存储两种类型的信息:密钥(证书)和秘密。在你的场景中,你需要使用秘密。您需要在KeyVault中创建一个秘密。
##get password don't show plaintext
read -s password
azure keyvault create --vault-name 'ContosoKeyVault' --resource-group 'ContosoResourceGroup' --location 'East Asia'
azure keyvault secret set --vault-name 'ContosoKeyVault' --secret-name 'SQLPassword' --value "$password"
之后,您就需要启用密钥库模板deployment.You可以做到这一点使用下面的命令:
azure keyvault set-policy --vault-name Contoso --enabled-for-template-deployment true
您需要修改的参数如下图所示:
"adminPassword": {
"reference": {
"keyVault": {
"id": "/subscriptions/<subscription-guid>/resourceGroups/<group name>/providers/Microsoft.KeyVault/vaults/<vault name>"
},
"secretName": "<seccret name>"
}
},
你可以参考这个模板:101-vm-secure-password。
使用Azure的CLI 1.0 – karan