Udostępnij za pomocą


Użyj modułu Azure PowerShell, aby włączyć kompleksowe szyfrowanie przy użyciu szyfrowania na hoście

Dotyczy: ✔️ maszyny wirtualne z systemem Windows

Po włączeniu szyfrowania na hoście, dane przechowywane na hoście maszyny wirtualnej są szyfrowane w stanie spoczynku i przepływają szyfrowane do usługi Storage. Aby uzyskać informacje koncepcyjne dotyczące szyfrowania na hoście i innych typów szyfrowania dysków zarządzanych, zobacz Szyfrowanie na hoście — kompleksowe szyfrowanie danych maszyny wirtualnej.

Ograniczenia

  • Nie można włączyć na maszynach wirtualnych ani w zestawach skalowania maszyn wirtualnych, które obecnie lub kiedykolwiek miały włączoną usługę Azure Disk Encryption.
  • Nie można włączyć usługi Azure Disk Encryption na dyskach z włączonym szyfrowaniem na hoście.
  • Szyfrowanie można włączyć w istniejących zestawach skalowania maszyn wirtualnych. Jednak tylko nowe maszyny wirtualne utworzone po włączeniu szyfrowania są automatycznie szyfrowane.
  • Aby można było zaszyfrować istniejące maszyny wirtualne, należy je zdealokować i ponownie przydzielić.

Następujące ograniczenia dotyczą tylko dysków Ultra Disk i SSD w warstwie Premium w wersji 2:

  • Dyski korzystające z rozmiaru sektora 512e muszą zostać utworzone po 13.05.2023 r.
    • Jeśli dysk został utworzony przed tą datą, utwórz migawkę dysku i utwórz nowy dysk przy użyciu migawki.

Obsługiwane rozmiary maszyn wirtualnych

Pełną listę obsługiwanych rozmiarów maszyn wirtualnych można ściągnąć programowo. Aby dowiedzieć się, jak je programowo pobrać, zapoznaj się z sekcją Znajdowanie obsługiwanych rozmiarów maszyn wirtualnych . Uaktualnienie rozmiaru maszyny wirtualnej powoduje sprawdzanie, czy nowy rozmiar maszyny wirtualnej obsługuje funkcję EncryptionAtHost.

Wymagania wstępne

Przed użyciem właściwości EncryptionAtHost dla maszyny wirtualnej/usługi VMSS należy włączyć funkcję dla subskrypcji. Aby włączyć funkcję dla subskrypcji, wykonaj następujące kroki:

  1. Wykonaj następujące polecenie, aby zarejestrować funkcję dla subskrypcji

     Register-AzProviderFeature -FeatureName "EncryptionAtHost" -ProviderNamespace "Microsoft.Compute" 
    
  2. Przed wypróbowaniem funkcji sprawdź, czy stan rejestracji to Zarejestrowano (trwa kilka minut) przy użyciu następującego polecenia.

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

Utwórz usługę Azure Key Vault i DiskEncryptionSet

Uwaga / Notatka

Ta sekcja dotyczy tylko konfiguracji z kluczami zarządzanymi przez klienta. Jeśli używasz kluczy zarządzanych przez platformę, możesz przejść do sekcji Przykładowe skrypty .

Po włączeniu tej funkcji należy skonfigurować usługę Azure Key Vault i diskEncryptionSet, jeśli jeszcze tego nie zrobiono.

  1. Upewnij się, że zainstalowano najnowszą wersję programu Azure PowerShell i zalogowano się do konta platformy Azure przy użyciu Connect-AzAccount

  2. Utwórz zasób usługi Azure Key Vault i klucz szyfrowania.

    Podczas tworzenia wystąpienia usługi Key Vault należy włączyć ochronę przed usunięciem. Ochrona przed przeczyszczeniem gwarantuje, że usunięty klucz nie może zostać trwale usunięty, dopóki okres przechowywania nie wygaśnie. Te ustawienia chronią cię przed utratą danych z powodu przypadkowego usunięcia. Te ustawienia są obowiązkowe w przypadku używania usługi Key Vault do szyfrowania dysków zarządzanych.

    $ResourceGroupName="yourResourceGroupName"
    $LocationName="westcentralus"
    $keyVaultName="yourKeyVaultName"
    $keyName="yourKeyName"
    $keyDestination="Software"
    $diskEncryptionSetName="yourDiskEncryptionSetName"
    
    $keyVault = New-AzKeyVault -Name $keyVaultName `
    -ResourceGroupName $ResourceGroupName `
    -Location $LocationName `
    -EnablePurgeProtection
    
    $key = Add-AzKeyVaultKey -VaultName $keyVaultName `
          -Name $keyName `
          -Destination $keyDestination
    
    Set-AzKeyVaultKeyRotationPolicy -VaultName $keyVaultName -KeyName $keyName -ExpiresIn P2Y -KeyRotationLifetimeAction @{Action="Rotate";TimeBeforeExpiry = "P18M"}
    
  3. Utwórz instancję zestawu szyfrowania dysku. Ten skrypt ustawia wartość RotationToLatestKeyVersionEnabled równą $true w celu włączenia automatycznego obracania klucza. Po włączeniu rotacji automatycznej system automatycznie aktualizuje wszystkie dyski zarządzane, migawki i obrazy odwołujące się do zestawu szyfrowania dysków, aby używać nowej wersji klucza w ciągu jednej godziny.

    $desConfig=New-AzDiskEncryptionSetConfig -Location $LocationName `
        -SourceVaultId $keyVault.ResourceId `
        -KeyUrl $key.Key.Kid `
        -IdentityType SystemAssigned `
        -RotationToLatestKeyVersionEnabled $true
    
    $des=New-AzDiskEncryptionSet -Name $diskEncryptionSetName `
           -ResourceGroupName $ResourceGroupName `
           -InputObject $desConfig
    
  4. Udziel zasobowi DiskEncryptionSet dostępu do magazynu kluczy.

    Uwaga / Notatka

    Może to potrwać kilka minut, zanim Azure utworzy tożsamość twojego DiskEncryptionSet w Microsoft Entra ID. Jeśli podczas uruchamiania następującego polecenia wystąpi błąd, taki jak "Nie można odnaleźć obiektu usługi Active Directory", zaczekaj kilka minut i spróbuj ponownie.

    Set-AzKeyVaultAccessPolicy -VaultName $keyVaultName -ObjectId $des.Identity.PrincipalId -PermissionsToKeys wrapkey,unwrapkey,get
    

Używanie magazynu kluczy w innej subskrypcji

Alternatywnie możesz zarządzać usługą Azure Key Vault centralnie z jednej subskrypcji i używać kluczy przechowywanych w usłudze Key Vault do szyfrowania dysków zarządzanych i migawek w innych subskrypcjach w organizacji. Dzięki temu zespół ds. zabezpieczeń może wymusić i łatwo zarządzać niezawodnymi zasadami zabezpieczeń w jednej subskrypcji.

Ważne

W przypadku tej konfiguracji zarówno usługa Key Vault, jak i zestaw szyfrowania dysków muszą znajdować się w tym samym regionie i korzystać z tej samej dzierżawy.

Poniższy skrypt to przykład konfigurowania zestawu szyfrowania dysku w celu użycia klucza z usługi Key Vault w innej subskrypcji, ale w tym samym regionie:

$sourceSubscriptionId="<sourceSubID>"
$sourceKeyVaultName="<sourceKVName>"
$sourceKeyName="<sourceKeyName>"

$targetSubscriptionId="<targetSubID>"
$targetResourceGroupName="<targetRGName>"
$targetDiskEncryptionSetName="<targetDiskEncSetName>"
$location="<targetRegion>"

Set-AzContext -Subscription $sourceSubscriptionId

$key = Get-AzKeyVaultKey -VaultName $sourceKeyVaultName -Name $sourceKeyName

Set-AzContext -Subscription $targetSubscriptionId

$desConfig=New-AzDiskEncryptionSetConfig -Location $location `
-KeyUrl $key.Key.Kid `
-IdentityType SystemAssigned `
-RotationToLatestKeyVersionEnabled $true

$des=New-AzDiskEncryptionSet -Name $targetDiskEncryptionSetName `
-ResourceGroupName $targetResourceGroupName `
-InputObject $desConfig

Włączanie szyfrowania na hoście dla dysków dołączonych do maszyn wirtualnych i zestawów skalowania maszyn wirtualnych

Szyfrowanie na hoście można włączyć, ustawiając nową właściwość EncryptionAtHost w obszarze securityProfile maszyn wirtualnych lub zestawów skalowania maszyn wirtualnych przy użyciu interfejsu API w wersji 2020-06-01 lub nowszej.

"securityProfile": { "encryptionAtHost": "true" }

Przykładowe skrypty

Utwórz maszynę wirtualną z szyfrowaniem na hoście z włączonymi kluczami zarządzanymi przez klienta.

Utwórz maszynę wirtualną z zarządzanymi dyskami przy użyciu identyfikatora URI zasobu DiskEncryptionSet utworzonego wcześniej, aby zaszyfrować pamięć podręczną dysków systemu operacyjnego i dysków danych za pomocą kluczy zarządzanych przez klienta. Dyski tymczasowe są szyfrowane przy użyciu kluczy zarządzanych przez platformę.

$VMLocalAdminUser = "yourVMLocalAdminUserName"
$VMLocalAdminSecurePassword = ConvertTo-SecureString <password> -AsPlainText -Force
$LocationName = "yourRegion"
$ResourceGroupName = "yourResourceGroupName"
$ComputerName = "yourComputerName"
$VMName = "yourVMName"
$VMSize = "yourVMSize"
$diskEncryptionSetName="yourdiskEncryptionSetName"
    
$NetworkName = "yourNetworkName"
$NICName = "yourNICName"
$SubnetName = "yourSubnetName"
$SubnetAddressPrefix = "10.0.0.0/24"
$VnetAddressPrefix = "10.0.0.0/16"
    
$SingleSubnet = New-AzVirtualNetworkSubnetConfig -Name $SubnetName -AddressPrefix $SubnetAddressPrefix
$Vnet = New-AzVirtualNetwork -Name $NetworkName -ResourceGroupName $ResourceGroupName -Location $LocationName -AddressPrefix $VnetAddressPrefix -Subnet $SingleSubnet
$NIC = New-AzNetworkInterface -Name $NICName -ResourceGroupName $ResourceGroupName -Location $LocationName -SubnetId $Vnet.Subnets[0].Id
    
$Credential = New-Object System.Management.Automation.PSCredential ($VMLocalAdminUser, $VMLocalAdminSecurePassword);

# Enable encryption at host by specifying EncryptionAtHost parameter

$VirtualMachine = New-AzVMConfig -VMName $VMName -VMSize $VMSize -EncryptionAtHost
$VirtualMachine = Set-AzVMOperatingSystem -VM $VirtualMachine -Windows -ComputerName $ComputerName -Credential $Credential -ProvisionVMAgent -EnableAutoUpdate
$VirtualMachine = Add-AzVMNetworkInterface -VM $VirtualMachine -Id $NIC.Id
$VirtualMachine = Set-AzVMSourceImage -VM $VirtualMachine -PublisherName 'MicrosoftWindowsServer' -Offer 'WindowsServer' -Skus '2012-R2-Datacenter' -Version latest

$diskEncryptionSet=Get-AzDiskEncryptionSet -ResourceGroupName $ResourceGroupName -Name $diskEncryptionSetName

# Enable encryption with a customer managed key for OS disk by setting DiskEncryptionSetId property 

$VirtualMachine = Set-AzVMOSDisk -VM $VirtualMachine -Name $($VMName +"_OSDisk") -DiskEncryptionSetId $diskEncryptionSet.Id -CreateOption FromImage

# Add a data disk encrypted with a customer managed key by setting DiskEncryptionSetId property 

$VirtualMachine = Add-AzVMDataDisk -VM $VirtualMachine -Name $($VMName +"DataDisk1") -DiskSizeInGB 128 -StorageAccountType Premium_LRS -CreateOption Empty -Lun 0 -DiskEncryptionSetId $diskEncryptionSet.Id 
    
New-AzVM -ResourceGroupName $ResourceGroupName -Location $LocationName -VM $VirtualMachine -Verbose

Utwórz maszynę wirtualną z szyfrowaniem na hoście z włączonymi kluczami zarządzanymi przez platformę.

Utwórz maszynę wirtualną z szyfrowaniem na hoście, która umożliwia szyfrowanie pamięci podręcznej dysków systemu operacyjnego/danych i dysków tymczasowych przy użyciu kluczy zarządzanych przez platformę.

$VMLocalAdminUser = "yourVMLocalAdminUserName"
$VMLocalAdminSecurePassword = ConvertTo-SecureString <password> -AsPlainText -Force
$LocationName = "yourRegion"
$ResourceGroupName = "yourResourceGroupName"
$ComputerName = "yourComputerName"
$VMName = "yourVMName"
$VMSize = "yourVMSize"
    
$NetworkName = "yourNetworkName"
$NICName = "yourNICName"
$SubnetName = "yourSubnetName"
$SubnetAddressPrefix = "10.0.0.0/24"
$VnetAddressPrefix = "10.0.0.0/16"
    
$SingleSubnet = New-AzVirtualNetworkSubnetConfig -Name $SubnetName -AddressPrefix $SubnetAddressPrefix
$Vnet = New-AzVirtualNetwork -Name $NetworkName -ResourceGroupName $ResourceGroupName -Location $LocationName -AddressPrefix $VnetAddressPrefix -Subnet $SingleSubnet
$NIC = New-AzNetworkInterface -Name $NICName -ResourceGroupName $ResourceGroupName -Location $LocationName -SubnetId $Vnet.Subnets[0].Id
    
$Credential = New-Object System.Management.Automation.PSCredential ($VMLocalAdminUser, $VMLocalAdminSecurePassword);

# Enable encryption at host by specifying EncryptionAtHost parameter

$VirtualMachine = New-AzVMConfig -VMName $VMName -VMSize $VMSize -EncryptionAtHost

$VirtualMachine = Set-AzVMOperatingSystem -VM $VirtualMachine -Windows -ComputerName $ComputerName -Credential $Credential -ProvisionVMAgent -EnableAutoUpdate
$VirtualMachine = Add-AzVMNetworkInterface -VM $VirtualMachine -Id $NIC.Id
$VirtualMachine = Set-AzVMSourceImage -VM $VirtualMachine -PublisherName 'MicrosoftWindowsServer' -Offer 'WindowsServer' -Skus '2012-R2-Datacenter' -Version latest

$VirtualMachine = Set-AzVMOSDisk -VM $VirtualMachine -Name $($VMName +"_OSDisk") -CreateOption FromImage

$VirtualMachine = Add-AzVMDataDisk -VM $VirtualMachine -Name $($VMName +"DataDisk1") -DiskSizeInGB 128 -StorageAccountType Premium_LRS -CreateOption Empty -Lun 0
    
New-AzVM -ResourceGroupName $ResourceGroupName -Location $LocationName -VM $VirtualMachine

Zaktualizuj maszynę wirtualną, aby włączyć szyfrowanie na hoście.

$ResourceGroupName = "yourResourceGroupName"
$VMName = "yourVMName"

$VM = Get-AzVM -ResourceGroupName $ResourceGroupName -Name $VMName

Stop-AzVM -ResourceGroupName $ResourceGroupName -Name $VMName -Force

Update-AzVM -VM $VM -ResourceGroupName $ResourceGroupName -EncryptionAtHost $true

Sprawdzanie stanu szyfrowania na hoście maszyny wirtualnej

$ResourceGroupName = "yourResourceGroupName"
$VMName = "yourVMName"

$VM = Get-AzVM -ResourceGroupName $ResourceGroupName -Name $VMName

$VM.SecurityProfile.EncryptionAtHost

Wyłączanie szyfrowania na hoście

Przed wyłączeniem szyfrowania na hoście należy cofnąć przydział maszyny wirtualnej.

$ResourceGroupName = "yourResourceGroupName"
$VMName = "yourVMName"

$VM = Get-AzVM -ResourceGroupName $ResourceGroupName -Name $VMName

Stop-AzVM -ResourceGroupName $ResourceGroupName -Name $VMName -Force

Update-AzVM -VM $VM -ResourceGroupName $ResourceGroupName -EncryptionAtHost $false

Utwórz zestaw skalowania maszyn wirtualnych z szyfrowaniem na hoście włączonym przy użyciu kluczy zarządzanych przez klienta.

Ważne

Od listopada 2023 r. zestawy skalowania maszyn wirtualnych utworzone przy użyciu programu PowerShell i interfejsu wiersza polecenia platformy Azure będą domyślnie ustawiać tryb elastycznej orkiestracji, jeśli nie określono trybu aranżacji. Więcej informacji na temat tej zmiany oraz jakie działania powinieneś podjąć, znajdziesz w Informacja o zmianach łamiących kompatybilność dla użytkowników PowerShell/CLI VMSS — Microsoft Community Hub

Utwórz zestaw skalowania maszyn wirtualnych z dyskami zarządzanymi przy użyciu identyfikatora URI zasobu DiskEncryptionSet utworzonego wcześniej, aby zaszyfrować pamięć podręczną dysków systemu operacyjnego i danych za pomocą kluczy zarządzanych przez klienta. Dyski tymczasowe są szyfrowane przy użyciu kluczy zarządzanych przez platformę.

$VMLocalAdminUser = "yourLocalAdminUser"
$VMLocalAdminSecurePassword = ConvertTo-SecureString Password@123 -AsPlainText -Force
$LocationName = "westcentralus"
$ResourceGroupName = "yourResourceGroupName"
$ComputerNamePrefix = "yourComputerNamePrefix"
$VMScaleSetName = "yourVMSSName"
$VMSize = "Standard_DS3_v2"
$diskEncryptionSetName="yourDiskEncryptionSetName"
    
$NetworkName = "yourVNETName"
$SubnetName = "yourSubnetName"
$SubnetAddressPrefix = "10.0.0.0/24"
$VnetAddressPrefix = "10.0.0.0/16"
    
$SingleSubnet = New-AzVirtualNetworkSubnetConfig -Name $SubnetName -AddressPrefix $SubnetAddressPrefix

$Vnet = New-AzVirtualNetwork -Name $NetworkName -ResourceGroupName $ResourceGroupName -Location $LocationName -AddressPrefix $VnetAddressPrefix -Subnet $SingleSubnet

$ipConfig = New-AzVmssIpConfig -Name "myIPConfig" -SubnetId $Vnet.Subnets[0].Id 

# Enable encryption at host by specifying EncryptionAtHost parameter

$VMSS = New-AzVmssConfig -Location $LocationName -SkuCapacity 2 -SkuName $VMSize -OrchestrationMode "Flexible" -EncryptionAtHost 

$VMSS = Add-AzVmssNetworkInterfaceConfiguration -Name "myVMSSNetworkConfig" -VirtualMachineScaleSet $VMSS -Primary $true -IpConfiguration $ipConfig

$diskEncryptionSet=Get-AzDiskEncryptionSet -ResourceGroupName $ResourceGroupName -Name $diskEncryptionSetName

# Enable encryption with a customer managed key for the OS disk by setting DiskEncryptionSetId property 

$VMSS = Set-AzVmssStorageProfile $VMSS -OsDiskCreateOption "FromImage" -DiskEncryptionSetId $diskEncryptionSet.Id -ImageReferenceOffer 'WindowsServer' -ImageReferenceSku '2012-R2-Datacenter' -ImageReferenceVersion latest -ImageReferencePublisher 'MicrosoftWindowsServer'

$VMSS = Set-AzVmssOsProfile $VMSS -ComputerNamePrefix $ComputerNamePrefix -AdminUsername $VMLocalAdminUser -AdminPassword $VMLocalAdminSecurePassword

# Add a data disk encrypted with a customer managed key by setting DiskEncryptionSetId property 

$VMSS = Add-AzVmssDataDisk -VirtualMachineScaleSet $VMSS -CreateOption Empty -Lun 1 -DiskSizeGB 128 -StorageAccountType Premium_LRS -DiskEncryptionSetId $diskEncryptionSet.Id

Utwórz zestaw skalowania maszyn wirtualnych z włączonym szyfrowaniem na hoście przy użyciu kluczy zarządzanych przez platformę.

Ważne

Od listopada 2023 r. zestawy skalowania maszyn wirtualnych utworzone przy użyciu programu PowerShell i interfejsu wiersza polecenia platformy Azure będą domyślnie ustawiać tryb elastycznej orkiestracji, jeśli nie określono trybu aranżacji. Więcej informacji na temat tej zmiany oraz jakie działania powinieneś podjąć, znajdziesz w Informacja o zmianach łamiących kompatybilność dla użytkowników PowerShell/CLI VMSS — Microsoft Community Hub

Utwórz zestaw skalowania maszyn wirtualnych z szyfrowaniem na hoście, który umożliwia szyfrowanie pamięci podręcznej dysków systemu operacyjnego/danych i dysków tymczasowych przy użyciu kluczy zarządzanych przez platformę.

$VMLocalAdminUser = "yourLocalAdminUser"
$VMLocalAdminSecurePassword = ConvertTo-SecureString Password@123 -AsPlainText -Force
$LocationName = "westcentralus"
$ResourceGroupName = "yourResourceGroupName"
$ComputerNamePrefix = "yourComputerNamePrefix"
$VMScaleSetName = "yourVMSSName"
$VMSize = "Standard_DS3_v2"
    
$NetworkName = "yourVNETName"
$SubnetName = "yourSubnetName"
$SubnetAddressPrefix = "10.0.0.0/24"
$VnetAddressPrefix = "10.0.0.0/16"
    
$SingleSubnet = New-AzVirtualNetworkSubnetConfig -Name $SubnetName -AddressPrefix $SubnetAddressPrefix

$Vnet = New-AzVirtualNetwork -Name $NetworkName -ResourceGroupName $ResourceGroupName -Location $LocationName -AddressPrefix $VnetAddressPrefix -Subnet $SingleSubnet

$ipConfig = New-AzVmssIpConfig -Name "myIPConfig" -SubnetId $Vnet.Subnets[0].Id 

# Enable encryption at host by specifying EncryptionAtHost parameter

$VMSS = New-AzVmssConfig -Location $LocationName -SkuCapacity 2 -SkuName $VMSize -OrchestrationMode "Flexible" -EncryptionAtHost

$VMSS = Add-AzVmssNetworkInterfaceConfiguration -Name "myVMSSNetworkConfig" -VirtualMachineScaleSet $VMSS -Primary $true -IpConfiguration $ipConfig
 
$VMSS = Set-AzVmssStorageProfile $VMSS -OsDiskCreateOption "FromImage" -ImageReferenceOffer 'WindowsServer' -ImageReferenceSku '2012-R2-Datacenter' -ImageReferenceVersion latest -ImageReferencePublisher 'MicrosoftWindowsServer'

$VMSS = Set-AzVmssOsProfile $VMSS -ComputerNamePrefix $ComputerNamePrefix -AdminUsername $VMLocalAdminUser -AdminPassword $VMLocalAdminSecurePassword

$VMSS = Add-AzVmssDataDisk -VirtualMachineScaleSet $VMSS -CreateOption Empty -Lun 1 -DiskSizeGB 128 -StorageAccountType Premium_LRS 

$Credential = New-Object System.Management.Automation.PSCredential ($VMLocalAdminUser, $VMLocalAdminSecurePassword);

New-AzVmss -VirtualMachineScaleSet $VMSS -ResourceGroupName $ResourceGroupName -VMScaleSetName $VMScaleSetName

Zaktualizuj zestaw skalowania maszyn wirtualnych, aby włączyć szyfrowanie na hoście.

$ResourceGroupName = "yourResourceGroupName"
$VMScaleSetName = "yourVMSSName"

$VMSS = Get-AzVmss -ResourceGroupName $ResourceGroupName -Name $VMScaleSetName

Update-AzVmss -VirtualMachineScaleSet $VMSS -Name $VMScaleSetName -ResourceGroupName $ResourceGroupName -EncryptionAtHost $true

Sprawdzanie stanu szyfrowania na hoście dla zestawu skalowania maszyn wirtualnych

$ResourceGroupName = "yourResourceGroupName"
$VMScaleSetName = "yourVMSSName"

$VMSS = Get-AzVmss -ResourceGroupName $ResourceGroupName -Name $VMScaleSetName

$VMSS.VirtualMachineProfile.SecurityProfile.EncryptionAtHost

Zaktualizuj zestaw skalowania maszyn wirtualnych, aby wyłączyć szyfrowanie na hoście.

Szyfrowanie można wyłączyć na hoście w zestawie skalowania maszyn wirtualnych, ale będzie to miało wpływ tylko na maszyny wirtualne utworzone po wyłączeniu szyfrowania na hoście. W przypadku istniejących maszyn wirtualnych należy cofnąć przydział maszyny wirtualnej, wyłączyć szyfrowanie na hoście na tej pojedynczej maszynie wirtualnej, a następnie ponownie przydzielić maszynę wirtualną.

$ResourceGroupName = "yourResourceGroupName"
$VMScaleSetName = "yourVMSSName"

$VMSS = Get-AzVmss -ResourceGroupName $ResourceGroupName -Name $VMScaleSetName

Update-AzVmss -VirtualMachineScaleSet $VMSS -Name $VMScaleSetName -ResourceGroupName $ResourceGroupName -EncryptionAtHost $false

Znajdowanie obsługiwanych rozmiarów maszyn wirtualnych

Starsze rozmiary maszyn wirtualnych nie są obsługiwane. Listę obsługiwanych rozmiarów maszyn wirtualnych można znaleźć w następujący sposób:

Wywoływanie API SKU zasobów i sprawdzanie, czy EncryptionAtHostSupported funkcja jest ustawiona na True.

    {
        "resourceType": "virtualMachines",
        "name": "Standard_DS1_v2",
        "tier": "Standard",
        "size": "DS1_v2",
        "family": "standardDSv2Family",
        "locations": [
        "CentralUS"
        ],
        "capabilities": [
        {
            "name": "EncryptionAtHostSupported",
            "value": "True"
        }
        ]
    }

Możesz też wywołać polecenie cmdlet Get-AzComputeResourceSku programu PowerShell.

Get-AzComputeResourceSku -Location "centralus" |
    Where-Object { $_.ResourceType -eq 'virtualMachines' -and $_.capabilities.where({ $_.Name -eq 'EncryptionAtHostSupported' }, 'First').Value -eq 'True' } |
    Select-Object -ExpandProperty Name

Dalsze kroki

Po utworzeniu i skonfigurowaniu tych zasobów można ich użyć do zabezpieczenia dysków zarządzanych. Poniższy link zawiera przykładowe skrypty, z których każdy ma odpowiedni scenariusz, którego można użyć do zabezpieczenia dysków zarządzanych.

Przykłady szablonów usługi Azure Resource Manager