Schijfversleuteling inschakelen voor beheerde Service Fabric-clusterknooppunten
Beheerde Service Fabric-clusters ondersteunen twee opties voor schijfversleuteling om uw gegevens te beschermen om te voldoen aan de beveiligings- en nalevingsverplichtingen van uw organisatie. De aanbevolen optie is Versleuteling op host, maar ondersteunt ook Azure Disk Encryption. Controleer de opties voor schijfversleuteling en controleer of de geselecteerde optie aan uw behoeften voldoet.
Versleuteling op host inschakelen
Deze versleutelingsmethode verbetert azure Disk Encryption door ondersteuning te bieden voor alle typen en installatiekopieën van het besturingssysteem, inclusief aangepaste installatiekopieën, voor uw VM's door gegevens in de Azure Storage-service te versleutelen. Deze methode maakt geen gebruik van de CPU van uw VM's en heeft ook geen invloed op de prestaties van uw VM's, waardoor workloads alle beschikbare SKU-resources voor vm's kunnen gebruiken.
Notitie
U kunt bestaande knooppunttypen niet inschakelen. U moet een nieuw knooppunttype inrichten en uw workload migreren.
Notitie
De schijfversleutelingsstatus van Azure Security Center wordt op dit moment weergegeven als beschadigd wanneer u Versleuteling op host gebruikt
Volg deze stappen en raadpleeg deze voorbeeldsjabloon om een nieuw beheerd Service Fabric-cluster te implementeren waarvoor hostversleuteling is ingeschakeld.
Bekijk de volgende beperkingen om te controleren of ze voldoen aan uw vereisten.
Stel de vereiste vereisten in voordat de clusterimplementatie wordt geïmplementeerd.
Configureer de
enableEncryptionAtHost
eigenschap in de beheerde clustersjabloon voor elke schijfversleuteling van het knooppunttype. Het voorbeeld is vooraf geconfigureerd.- De apiVersion van de beheerde Service Fabric-clusterresource moet 2021-11-01-preview of hoger zijn.
{ "apiVersion": "[variables('sfApiVersion')]", "type": "Microsoft.ServiceFabric/managedclusters/nodetypes", "name": "[concat(parameters('clusterName'), '/', parameters('nodeTypeName'))]", "location": "[resourcegroup().location]", "properties": { "enableEncryptionAtHost": true ... } }
Implementeren en verifiëren
Implementeer uw beheerde cluster dat is geconfigureerd met Host Encryption ingeschakeld.
$clusterName = "<clustername>" $resourceGroupName = "<rg-name>" New-AzResourceGroupDeployment -Name $resourceGroupName -ResourceGroupName $resourceGroupName -TemplateFile .\azuredeploy.json -TemplateParameterFile .\azuredeploy.parameters.json -Debug -Verbose
U kunt de status van schijfversleuteling controleren op de onderliggende schaalset van een knooppunttype met behulp van de
Get-AzVmss
opdracht. Eerst moet u de naam vinden van de ondersteunende resourcegroep van uw beheerde cluster (met het onderliggende virtuele netwerk, load balancer, openbare IP, NSG, schaalset(s) en opslagaccounts. Zorg ervoor dat u deNodeTypeNAme
naam van het clusterknooppunttype wijzigt die u wilt controleren (zoals opgegeven in uw implementatiesjabloon).$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
De uitvoer van de retour moet er ongeveer als volgt uitzien:
$VMSS.VirtualMachineProfile.SecurityProfile.EncryptionAtHost True
Azure Disk Encryption inschakelen
Azure Disk Encryption biedt volumeversleuteling voor het besturingssysteem en de gegevensschijven van virtuele Azure-machines (VM's) met behulp van de functie DM-Crypt in Linux of de BitLocker-functie van Windows. ADE is geïntegreerd met Azure Key Vault om u te helpen de schijfversleutelingssleutels en -geheimen te beheren.
In deze handleiding leert u hoe u schijfversleuteling inschakelt op door Service Fabric beheerde clusterknooppunten in Windows met behulp van de Azure Disk Encryption-functie voor virtuele-machineschaalsets via ARM-sjablonen (Azure Resource Manager).
Registreren voor Azure Disk Encryption
Voor de preview-versie van schijfversleuteling voor de virtuele-machineschaalset is zelfregistratie vereist. Voer de volgende opdracht uit:
Register-AzProviderFeature -FeatureName "UnifiedDiskEncryption" -ProviderNamespace "Microsoft.Compute"
Controleer de status van de registratie door het volgende uit te voeren:
Get-AzProviderFeature -ProviderNamespace "Microsoft.Compute" -FeatureName "UnifiedDiskEncryption"
Zodra de status is gewijzigd in Geregistreerd, bent u klaar om door te gaan.
Een sleutelkluis inrichten voor schijfversleuteling
Azure Disk Encryption vereist een Azure Key Vault om schijfversleutelingssleutels en -geheimen te beheren. Uw beheerde Key Vault- en Service Fabric-cluster moeten zich in dezelfde Azure-regio en hetzelfde abonnement bevinden. Zolang aan deze vereisten wordt voldaan, kunt u een nieuwe of bestaande Sleutelkluis gebruiken door deze in te schakelen voor schijfversleuteling.
Key Vault maken waarvoor schijfversleuteling is ingeschakeld
Voer de volgende opdrachten uit om een nieuwe Sleutelkluis te maken voor schijfversleuteling. Zorg ervoor dat de regio voor uw Key Vault zich in dezelfde regio bevindt als uw cluster.
$resourceGroupName = "<rg-name>" $keyvaultName = "<kv-name>" New-AzResourceGroup -Name $resourceGroupName -Location eastus2 New-AzKeyVault -ResourceGroupName $resourceGroupName -Name $keyvaultName -Location eastus2 -EnabledForDiskEncryption
Bestaande Sleutelkluis bijwerken om schijfversleuteling in te schakelen
Voer de volgende opdrachten uit om schijfversleuteling in te schakelen voor een bestaande Sleutelkluis.
Set-AzKeyVaultAccessPolicy -ResourceGroupName $resourceGroupName -VaultName $keyvaultName -EnabledForDiskEncryption
De sjabloon- en parameterbestanden voor schijfversleuteling bijwerken
In de volgende stap doorloopt u de vereiste sjabloonwijzigingen om schijfversleuteling in te schakelen op een bestaand beheerd cluster. U kunt ook een nieuw beheerd Service Fabric-cluster implementeren met schijfversleuteling ingeschakeld met deze sjabloon: https://github.com/Azure-Samples/service-fabric-cluster-templates/tree/master/SF-Managed-Standard-SKU-1-NT-DiskEncryption
Voeg de volgende parameters toe aan de sjabloon, waarbij u uw eigen abonnement, resourcegroepnaam en kluisnaam vervangt onder
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" } } },
Voeg vervolgens de
AzureDiskEncryption
VM-extensie toe aan de typen beheerde clusterknooppunten in de sjabloon:"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')]" } } } ] }
Werk ten slotte het parameterbestand bij, waarbij u uw eigen abonnement, resourcegroep en sleutelkluisnaam vervangt in keyVaultResourceId:
"parameters": { ... "keyVaultResourceId": { "value": "/subscriptions/########-####-####-####-############/resourceGroups/<rg-name>/providers/Microsoft.KeyVault/vaults/<kv-name>" }, "volumeType": { "value": "All" } }
De wijzigingen implementeren en controleren
Zodra u klaar bent, implementeert u de wijzigingen om schijfversleuteling in te schakelen op uw beheerde cluster.
$clusterName = "<clustername>" New-AzResourceGroupDeployment -Name $resourceGroupName -ResourceGroupName $resourceGroupName .\azuredeploy.json -TemplateParameterFile .\azuredeploy.parameters.json -Debug -Verbose
U kunt de status van schijfversleuteling controleren op de onderliggende schaalset van een knooppunttype met behulp van de
Get-AzVmssDiskEncryption
opdracht. Eerst moet u de naam vinden van de ondersteunende resourcegroep van uw beheerde cluster (met het onderliggende virtuele netwerk, de load balancer, het openbare IP-adres, de NSG, de schaalset(s) en opslagaccounts van uw beheerde cluster. Zorg ervoor dat u deVmssName
naam van het clusterknooppunttype wijzigt die u wilt controleren (zoals opgegeven in uw implementatiesjabloon).$VmssName = "NT1" $clustername = <clustername> $supportResourceGroupName = "SFC_" + (Get-AzServiceFabricManagedCluster -ResourceGroupName $resourceGroupName -Name $clustername).ClusterId Get-AzVmssDiskEncryption -ResourceGroupName $supportResourceGroupName -VMScaleSetName $VmssName
De uitvoer moet er ongeveer als volgt uitzien:
ResourceGroupName : SFC_########-####-####-####-############ VmScaleSetName : NT1 EncryptionEnabled : True EncryptionExtensionInstalled : True
Volgende stappen
Azure Disk Encryption voor virtuele Windows-machines
Virtuele-machineschaalsets versleutelen met Azure Resource Manager