Aracılığıyla paylaş


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

Aşağıdaki adımlar, bir Key Vault depolanan parolayı alarak VM oluşturmak için gereken işlemi açıklar:

  1. Key Vault gizli dizi oluşturun.
  2. Dosyayı güncelleştirin azuredeploy.parameters.json .
  3. Ş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:

Dağıtım çıkışı

Sonraki adımlar