Key Vault'de depolanan parolayı kullanarak Azure Stack Hub VM dağıtma
Bu makalede, Azure Stack Hub Key Vault depolanan bir parola kullanarak Windows Server sanal makinesi (VM) dağıtma adımları. Anahtar kasası parolası kullanmak, düz metin parolası geçirmekten daha güvenlidir.
Genel Bakış
Parola gibi değerleri bir Azure Stack Hub anahtar kasasında gizli dizi olarak depolayabilirsiniz. Bir gizli dizi oluşturduktan sonra Azure Resource Manager şablonlarında bu gizli diziye başvurabilirsiniz. gizli dizileri Resource Manager ile kullanmak aşağıdaki avantajları sağlar:
- Bir kaynağı her dağıttığınızda gizli diziyi el ile girmeniz gerekmez.
- Hangi kullanıcıların veya hizmet sorumlularının gizli diziye erişebileceğini belirtebilirsiniz.
Önkoşullar
- Key Vault hizmetini içeren bir teklife abone olmanız gerekir.
- Azure Stack Hub için PowerShell'i yükleyin.
- PowerShell ortamınızı yapılandırın.
Aşağıdaki adımlar, bir Key Vault depolanan parolayı alarak VM oluşturmak için gereken işlemi açıklar:
- Key Vault gizli dizi oluşturun.
- Dosyayı güncelleştirin
azuredeploy.parameters.json
. - Şablonu dağıtma.
Not
Azure Stack Geliştirme Seti'nden (ASDK) veya VPN üzerinden bağlıysanız bir dış istemciden bu adımları kullanabilirsiniz.
Key Vault gizli dizisi oluşturma
Aşağıdaki betik bir anahtar kasası oluşturur ve parolayı anahtar kasasında gizli dizi olarak depolar. Anahtar kasasını -EnabledForDeployment
oluştururken parametresini kullanın. Bu parametre, anahtar kasasına Azure Resource Manager şablonlarından başvurulabilmesini sağlar.
$vaultName = "contosovault"
$resourceGroup = "contosovaultrg"
$location = "local"
$secretName = "MySecret"
New-AzResourceGroup `
-Name $resourceGroup `
-Location $location
New-AzKeyVault `
-VaultName $vaultName `
-ResourceGroupName $resourceGroup `
-Location $location
-EnabledForTemplateDeployment
$secretValue = ConvertTo-SecureString -String '<Password for your virtual machine>' -AsPlainText -Force
Set-AzureKeyVaultSecret `
-VaultName $vaultName `
-Name $secretName `
-SecretValue $secretValue
Önceki betiği çalıştırdığınızda, çıkış gizli dizi URI'sini (Tekdüzen Kaynak Tanımlayıcısı) içerir. Bu URI'ye dikkat edin.
Anahtar kasasında parolayla Windows VM dağıtma şablonunda buna başvurmanız gerekir.
101-vm-secure-password klasörünü geliştirme bilgisayarınıza indirin. Bu klasör, sonraki adımlarda ihtiyacınız olacak ve azuredeploy.parameters.json
dosyalarını içerirazuredeploy.json
.
azuredeploy.parameters.json
Dosyayı ortam değerlerinize göre değiştirin. Özel ilgi alanı parametreleri kasa adı, kasa kaynak grubu ve gizli dizi URI'leridir (önceki betik tarafından oluşturulduğu gibi). Aşağıdaki dosya bir parametre dosyası örneğidir.
azuredeploy.parameters.json dosyasını güncelleştirme
azuredeploy.parameters.json
Dosyayı ortamınıza göre VM değerlerinin KeyVault URI,secretName, adminUsername değerleriyle güncelleştirin. Aşağıdaki JSON dosyasında şablon parametreleri dosyasının bir örneği gösterilmektedir:
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"adminUsername": {
"value": "demouser"
},
"adminPassword": {
"reference": {
"keyVault": {
"id": "/subscriptions/xxxxxx/resourceGroups/RgKvPwd/providers/Microsoft.KeyVault/vaults/KvPwd"
},
"secretName": "MySecret"
}
},
"dnsLabelPrefix": {
"value": "mydns123456"
},
"windowsOSVersion": {
"value": "2016-Datacenter"
}
}
}
Şablon dağıtımı
Şimdi aşağıdaki PowerShell betiğini kullanarak şablonu dağıtın:
New-AzResourceGroupDeployment `
-Name KVPwdDeployment `
-ResourceGroupName $resourceGroup `
-TemplateFile "<Fully qualified path to the azuredeploy.json file>" `
-TemplateParameterFile "<Fully qualified path to the azuredeploy.parameters.json file>"
Şablon başarıyla dağıtıldığında aşağıdaki çıkışla sonuçlanır: