Service Fabric yönetilen küme düğümleri için disk şifrelemesini etkinleştirme

Service Fabric yönetilen kümeleri, verilerinizin kurumsal güvenlik ve uyumluluk taahhütlerinizi karşılamak üzere korunmasına yardımcı olmak için iki disk şifreleme seçeneğini destekler. Önerilen seçenek Konakta şifrelemedir, ancak Azure Disk Şifrelemesi'ni de destekler. Disk şifreleme seçeneklerini gözden geçirin ve seçili seçeneğin gereksinimlerinizi karşıladığından emin olun.

Konakta şifrelemeyi etkinleştirme

Bu şifreleme yöntemi , Azure Depolama hizmetindeki verileri şifreleyerek VM'leriniz için özel görüntüler de dahil olmak üzere tüm işletim sistemi türlerini ve görüntülerini destekleyerek Azure Disk Şifrelemesi'ni geliştirir. Bu yöntem VM'lerinizin CPU'sunu kullanmaz ve VM'lerinizin performansını etkilemez ve iş yüklerinin tüm kullanılabilir VM SKU kaynaklarını kullanmasını sağlar.

Not

Mevcut düğüm türlerinde etkinleştiremezsiniz. Yeni bir düğüm türü sağlamalı ve iş yükünüzü geçirmelisiniz.

Not

Azure Güvenlik Merkezi disk şifreleme durumu Şu anda Konakta Şifreleme kullanılırken İyi Durumda Değil olarak gösterilecektir

Konak şifrelemesi etkinleştirilmiş yeni bir Service Fabric yönetilen kümesi dağıtmak için bu adımları izleyin ve bu örnek şablona başvurun.

  1. Gereksinimlerinizi karşıladıklarını doğrulamak için aşağıdaki kısıtlamaları gözden geçirin.

  2. Küme dağıtımından önce gerekli önkoşulları ayarlayın.

  3. enableEncryptionAtHost Yönetilen küme şablonunda her düğüm türü disk şifrelemesi için özelliğini yapılandırın. Örnek önceden yapılandırılmıştır.

    • Service Fabric yönetilen küme kaynağı apiVersion 2021-11-01-preview veya üzeri olmalıdır.
         {
                "apiVersion": "[variables('sfApiVersion')]",
                "type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
                "name": "[concat(parameters('clusterName'), '/', parameters('nodeTypeName'))]",
                "location": "[resourcegroup().location]",
                "properties": {
                    "enableEncryptionAtHost": true
                    ...
                }
        }
    
  4. Dağıtma ve doğrulama

    Konak Şifrelemesi etkin olarak yapılandırılmış yönetilen kümenizi dağıtın.

    $clusterName = "<clustername>" 
    $resourceGroupName = "<rg-name>"
    
    New-AzResourceGroupDeployment -Name $resourceGroupName -ResourceGroupName $resourceGroupName -TemplateFile .\azuredeploy.json -TemplateParameterFile .\azuredeploy.parameters.json -Debug -Verbose 
    

    komutunu kullanarak Get-AzVmss bir düğüm türünün temel alınan ölçek kümesinde disk şifreleme durumunu de kontrol edebilirsiniz. İlk olarak yönetilen kümenizin destekleyici kaynak grubunun adını (temel alınan sanal ağ, yük dengeleyici, genel IP, NSG, ölçek kümeleri ve depolama hesaplarını içeren) bulmanız gerekir. Denetlemek istediğiniz küme düğümü türü adını değiştirdiğinizden emin NodeTypeNAme olun (dağıtım şablonunuzda belirtildiği gibi).

    $NodeTypeName = "NT2"
    $clustername = <clustername>
    $resourceGroupName = "<rg-name>"
    $supportResourceGroupName = "SFC_" + (Get-AzServiceFabricManagedCluster -ResourceGroupName $resourceGroupName -Name $clustername).ClusterId
    $VMSS = Get-AzVmss -ResourceGroupName $supportResourceGroupName -Name $NodeTypeName
    $VMSS.VirtualMachineProfile.SecurityProfile.EncryptionAtHost
    

    Dönüş çıkışı şuna benzer görünmelidir:

    $VMSS.VirtualMachineProfile.SecurityProfile.EncryptionAtHost
    True
    

Azure Disk Şifrelemesi'nin etkinleştirilmesi

Azure Disk Şifrelemesi, Linux'taki DM-Crypt özelliğini veya Windows'un BitLocker özelliğini kullanarak Azure sanal makinelerinin (VM) işletim sistemi ve veri diskleri için birim şifrelemesi sağlar. ADE, disk şifreleme anahtarlarını ve gizli dizilerini denetlemenize ve yönetmenize yardımcı olmak için Azure Key Vault ile tümleşiktir.

Bu kılavuzda, Azure Resource Manager (ARM) şablonları aracılığıyla sanal makine ölçek kümeleri için Azure Disk Şifrelemesi özelliğini kullanarak Windows'ta Service Fabric yönetilen küme düğümlerinde disk şifrelemesini etkinleştirmeyi öğreneceksiniz.

  1. Azure Disk Şifrelemesi'ne kaydolma

    Sanal makine ölçek kümesi için disk şifreleme önizlemesi için kendi kendine kayıt gerekir. Şu komutu çalıştırın:

    Register-AzProviderFeature -FeatureName "UnifiedDiskEncryption" -ProviderNamespace "Microsoft.Compute"
    

    Çalıştırarak kaydın durumunu denetleyin:

    Get-AzProviderFeature -ProviderNamespace "Microsoft.Compute" -FeatureName "UnifiedDiskEncryption"
    

    Durum Kaydedildi olarak değiştiğinde devam etmeye hazırsınız demektir.

  2. Disk şifrelemesi için bir Key Vault sağlama

    Azure Disk Şifrelemesi, disk şifreleme anahtarlarını ve gizli dizilerini denetlemek ve yönetmek için bir Azure Key Vault gerektirir. Key Vault ve Service Fabric yönetilen kümeniz aynı Azure bölgesinde ve aboneliğinde bulunmalıdır. Bu gereksinimler karşılandığı sürece, disk şifrelemesi için etkinleştirerek yeni veya mevcut bir Key Vault kullanabilirsiniz.

  3. Disk şifrelemesi etkinleştirilmiş Key Vault oluşturma

    Disk şifrelemesi için yeni bir Key Vault oluşturmak için aşağıdaki komutları çalıştırın. Key Vault bölgenizin kümenizle aynı bölgede olduğundan emin olun.

    $resourceGroupName = "<rg-name>" 
    $keyvaultName = "<kv-name>" 
    
    New-AzResourceGroup -Name $resourceGroupName -Location eastus2 
    New-AzKeyVault -ResourceGroupName $resourceGroupName -Name $keyvaultName -Location eastus2 -EnabledForDiskEncryption
    

  1. Disk şifrelemesini etkinleştirmek için mevcut Key Vault güncelleştirme

    Mevcut bir Key Vault disk şifrelemesini etkinleştirmek için aşağıdaki komutları çalıştırın.

    Set-AzKeyVaultAccessPolicy -ResourceGroupName $resourceGroupName -VaultName $keyvaultName -EnabledForDiskEncryption
    

Disk şifrelemesi için şablon ve parametre dosyalarını güncelleştirme

Aşağıdaki adım, mevcut yönetilen kümede disk şifrelemesini etkinleştirmek için gereken şablon değişikliklerinde size yol gösterir. Alternatif olarak, bu şablonla disk şifrelemesi etkinleştirilmiş yeni bir Service Fabric yönetilen kümesi dağıtabilirsiniz: https://github.com/Azure-Samples/service-fabric-cluster-templates/tree/master/SF-Managed-Standard-SKU-1-NT-DiskEncryption

  1. Aşağıdaki parametreleri şablona ekleyin ve altına kendi aboneliğinizi, kaynak grubu adınızı ve kasa adınızı yazın keyVaultResourceId:

    "parameters": {
     "keyVaultResourceId": { 
       "type": "string", 
       "defaultValue": "/subscriptions/########-####-####-####-############/resourceGroups/<rg-name>/providers/Microsoft.KeyVault/vaults/<kv-name>", 
       "metadata": { 
       "description": "Full resource id of the Key Vault used for disk encryption." 
    } 
     },
     "volumeType": { 
      "type": "string", 
      "defaultValue": "All", 
      "metadata": { 
       "description": "Type of the volume OS or Data to perform encryption operation" 
    }
    }
    }, 
    
  2. Ardından, VM uzantısını AzureDiskEncryption şablondaki yönetilen küme düğümü türlerine ekleyin:

    "properties": { 
    "vmExtensions": [ 
    { 
    "name": "AzureDiskEncryption", 
    "properties": { 
      "publisher": "Microsoft.Azure.Security", 
      "type": "AzureDiskEncryption", 
      "typeHandlerVersion": "2.2", 
      "autoUpgradeMinorVersion": true, 
      "settings": {      
            "EncryptionOperation": "EnableEncryption", 
            "KeyVaultURL": "[reference(parameters('keyVaultResourceId'),'2016-10-01').vaultUri]", 
         "KeyVaultResourceId": "[parameters('keyVaultResourceID')]",
         "VolumeType": "[parameters('volumeType')]" 
         } 
       } 
    } 
    ] 
    } 
    
  3. Son olarak, keyVaultResourceId içinde kendi aboneliğinizi, kaynak grubunuzu ve anahtar kasası adınızı değiştirerek parametre dosyasını güncelleştirin:

    "parameters": { 
    ...
     "keyVaultResourceId": { 
      "value": "/subscriptions/########-####-####-####-############/resourceGroups/<rg-name>/providers/Microsoft.KeyVault/vaults/<kv-name>" 
     },   
     "volumeType": { 
      "value": "All" 
     }    
    } 
    
  4. Değişiklikleri dağıtma ve doğrulama

    Hazır olduğunuzda, değişiklikleri dağıtarak yönetilen kümenizde disk şifrelemesini etkinleştirin.

    $clusterName = "<clustername>" 
    
    New-AzResourceGroupDeployment -Name $resourceGroupName -ResourceGroupName $resourceGroupName .\azuredeploy.json -TemplateParameterFile .\azuredeploy.parameters.json -Debug -Verbose 
    

    komutunu kullanarak Get-AzVmssDiskEncryption bir düğüm türünün temel alınan ölçek kümesinde disk şifreleme durumunu de kontrol edebilirsiniz. İlk olarak yönetilen kümenizin destekleyici kaynak grubunun adını (temel alınan sanal ağ, yük dengeleyici, genel IP, NSG, ölçek kümeleri ve depolama hesaplarını içeren) bulmanız gerekir. Denetlemek istediğiniz küme düğümü türü adını değiştirdiğinizden emin VmssName olun (dağıtım şablonunuzda belirtildiği gibi).

    $VmssName = "NT1"
    $clustername = <clustername>
    $supportResourceGroupName = "SFC_" + (Get-AzServiceFabricManagedCluster -ResourceGroupName $resourceGroupName -Name $clustername).ClusterId
    Get-AzVmssDiskEncryption -ResourceGroupName $supportResourceGroupName -VMScaleSetName $VmssName
    

    Çıktı şuna benzer görünmelidir:

    ResourceGroupName            : SFC_########-####-####-####-############
    VmScaleSetName               : NT1
    EncryptionEnabled            : True
    EncryptionExtensionInstalled : True
    

Sonraki adımlar

Örnek: Standart SKU Service Fabric yönetilen kümesi, disk şifrelemesi etkin bir düğüm türü

Windows VM’leri için Azure Disk Şifrelemesi

Azure Resource Manager ile sanal makine ölçek kümelerini şifreleme