Usługa Azure Disk Encryption z identyfikatorem Entra firmy Microsoft dla maszyn wirtualnych z systemem Windows (poprzednia wersja)

Dotyczy: ✔️ maszyny wirtualne z systemem Windows

Nowa wersja usługi Azure Disk Encryption eliminuje wymaganie podania parametru aplikacji Microsoft Entra w celu włączenia szyfrowania dysków maszyny wirtualnej. W nowej wersji nie musisz już podawać poświadczeń firmy Microsoft w trakcie kroku włączania szyfrowania. Wszystkie nowe maszyny wirtualne muszą być szyfrowane bez parametrów aplikacji Microsoft Entra przy użyciu nowej wersji. Aby wyświetlić instrukcje dotyczące włączania szyfrowania dysków maszyny wirtualnej przy użyciu nowej wersji, zobacz Usługa Azure Disk Encryption dla maszyn wirtualnych z systemem Windows. Maszyny wirtualne, które zostały już zaszyfrowane za pomocą parametrów aplikacji Microsoft Entra, są nadal obsługiwane i powinny być nadal utrzymywane przy użyciu składni Microsoft Entra.

Możesz włączyć wiele scenariuszy szyfrowania dysków, a kroki mogą się różnić w zależności od scenariusza. W poniższych sekcjach opisano scenariusze bardziej szczegółowo dotyczące maszyn wirtualnych IaaS z systemem Windows. Przed rozpoczęciem korzystania z szyfrowania dysków należy spełnić wymagania wstępne usługi Azure Disk Encryption.

Ważne

  • Przed zaszyfrowaniem dysków należy utworzyć migawkę i/lub utworzyć kopię zapasową. Kopie zapasowe zapewniają, że opcja odzyskiwania jest możliwa w przypadku wystąpienia nieoczekiwanego błędu podczas szyfrowania. Maszyny wirtualne z dyskami zarządzanymi wymagają utworzenia kopii zapasowej przed przeprowadzeniem szyfrowania. Po utworzeniu kopii zapasowej można użyć polecenia cmdlet Set-AzVMDiskEncryptionExtension do szyfrowania dysków zarządzanych, określając parametr -skipVmBackup. Aby uzyskać więcej informacji na temat tworzenia kopii zapasowych i przywracania zaszyfrowanych maszyn wirtualnych, zobacz Tworzenie kopii zapasowych i przywracanie zaszyfrowanej maszyny wirtualnej platformy Azure.

  • Szyfrowanie lub wyłączanie szyfrowania może spowodować ponowne uruchomienie maszyny wirtualnej.

Włączanie szyfrowania na nowych maszynach wirtualnych IaaS utworzonych w witrynie Marketplace

Szyfrowanie dysków można włączyć na nowej maszynie wirtualnej Z systemem Windows IaaS z witryny Marketplace na platformie Azure przy użyciu szablonu usługi Resource Manager. Szablon tworzy nową zaszyfrowaną maszynę wirtualną z systemem Windows przy użyciu obrazu galerii systemu Windows Server 2012.

  1. W szablonie usługi Resource Manager kliknij pozycję Wdróż na platformie Azure.

  2. Wybierz subskrypcję, grupę zasobów, lokalizację grupy zasobów, parametry, postanowienia prawne i umowę. Kliknij przycisk Kup , aby wdrożyć nową maszynę wirtualną IaaS, na której włączono szyfrowanie.

  3. Po wdrożeniu szablonu sprawdź stan szyfrowania maszyny wirtualnej przy użyciu preferowanej metody:

W poniższej tabeli wymieniono parametry szablonu usługi Resource Manager dla nowych maszyn wirtualnych ze scenariusza witryny Marketplace przy użyciu identyfikatora klienta Entra firmy Microsoft:

Parametr Opis
adminUserName Administracja nazwę użytkownika maszyny wirtualnej.
adminPassword Administracja hasło użytkownika dla maszyny wirtualnej.
newStorageAccountName Nazwa konta magazynu do przechowywania dysków VHD systemu operacyjnego i danych.
vmSize Rozmiar maszyny wirtualnej. Obecnie obsługiwane są tylko serie Standard A, D i G.
virtualNetworkName Nazwa sieci wirtualnej, do którego powinna należeć karta sieciowa maszyny wirtualnej.
subnetName Nazwa podsieci w sieci wirtualnej, do którego powinna należeć karta sieciowa maszyny wirtualnej.
AADClientID Identyfikator klienta aplikacji Microsoft Entra, która ma uprawnienia do zapisywania wpisów tajnych w magazynie kluczy.
AADClientSecret Wpis tajny klienta aplikacji Microsoft Entra z uprawnieniami do zapisywania wpisów tajnych w magazynie kluczy.
keyVaultURL Adres URL magazynu kluczy, do którego powinien zostać przekazany klucz funkcji BitLocker. Możesz go uzyskać przy użyciu polecenia cmdlet (Get-AzKeyVault -VaultName "MyKeyVault" -ResourceGroupName "MyKeyVaultResourceGroupName").VaultURI lub interfejsu wiersza polecenia platformy Azure az keyvault show --name "MySecureVault" --query properties.vaultUri
keyEncryptionKeyURL Adres URL klucza szyfrowania klucza, który jest używany do szyfrowania wygenerowanego klucza funkcji BitLocker (opcjonalnie).

KeyEncryptionKeyURL jest opcjonalnym parametrem. Możesz przenieść własny klucz KEK, aby dodatkowo zabezpieczyć klucz szyfrowania danych (klucz tajny hasła) w magazynie kluczy.
keyVaultResourceGroup Grupa zasobów magazynu kluczy.
vmName Nazwa maszyny wirtualnej, na którą ma być wykonywana operacja szyfrowania.

Włączanie szyfrowania na istniejących lub uruchomionych maszynach wirtualnych z systemem Windows IaaS

W tym scenariuszu można włączyć szyfrowanie przy użyciu szablonu, poleceń cmdlet programu PowerShell lub poleceń interfejsu wiersza polecenia. W poniższych sekcjach opisano bardziej szczegółowo sposób włączania usługi Azure Disk Encryption.

Włączanie szyfrowania na istniejących lub uruchomionych maszynach wirtualnych za pomocą programu Azure PowerShell

Użyj polecenia cmdlet Set-AzVMDiskEncryptionExtension, aby włączyć szyfrowanie na uruchomionej maszynie wirtualnej IaaS na platformie Azure. Aby uzyskać informacje na temat włączania szyfrowania za pomocą usługi Azure Disk Encryption przy użyciu poleceń cmdlet programu PowerShell, zobacz wpisy w blogu Eksplorowanie usługi Azure Disk Encryption za pomocą programu Azure PowerShell — część 1 i Eksplorowanie usługi Azure Disk Encryption za pomocą programu Azure PowerShell — część 2.

  • Szyfruj uruchomioną maszynę wirtualną przy użyciu klucza tajnego klienta: poniższy skrypt inicjuje zmienne i uruchamia polecenie cmdlet Set-AzVMDiskEncryptionExtension. Grupa zasobów, maszyna wirtualna, magazyn kluczy, aplikacja Microsoft Entra i wpis tajny klienta powinny już zostać utworzone jako wymagania wstępne. Zastąp wartości MyKeyVaultResourceGroup, MyVirtualMachineResourceGroup, MySecureVM, MySecureVault, My-AAD-client-ID i My-AAD-client-secret.

     $KVRGname = 'MyKeyVaultResourceGroup';
     $VMRGName = 'MyVirtualMachineResourceGroup';
     $vmName = 'MySecureVM';
     $aadClientID = 'My-AAD-client-ID';
     $aadClientSecret = 'My-AAD-client-secret';
     $KeyVaultName = 'MySecureVault';
     $KeyVault = Get-AzKeyVault -VaultName $KeyVaultName -ResourceGroupName $KVRGname;
     $diskEncryptionKeyVaultUrl = $KeyVault.VaultUri;
     $KeyVaultResourceId = $KeyVault.ResourceId;
    
     Set-AzVMDiskEncryptionExtension -ResourceGroupName $VMRGName -VMName $vmName -AadClientID $aadClientID -AadClientSecret $aadClientSecret -DiskEncryptionKeyVaultUrl $diskEncryptionKeyVaultUrl -DiskEncryptionKeyVaultId $KeyVaultResourceId;
    
  • Szyfrowanie uruchomionej maszyny wirtualnej przy użyciu klucza KEK w celu opakowania klucza tajnego klienta: usługa Azure Disk Encryption umożliwia określenie istniejącego klucza w magazynie kluczy w celu opakowania wpisów tajnych szyfrowania dysków, które zostały wygenerowane podczas włączania szyfrowania. Po określeniu klucza szyfrowania klucza usługa Azure Disk Encryption używa tego klucza do opakowania wpisów tajnych szyfrowania przed zapisaniem w usłudze Key Vault.

    $KVRGname = 'MyKeyVaultResourceGroup';
    $VMRGName = 'MyVirtualMachineResourceGroup';
    $vmName = 'MyExtraSecureVM';
    $aadClientID = 'My-AAD-client-ID';
    $aadClientSecret = 'My-AAD-client-secret';
    $KeyVaultName = 'MySecureVault';
    $keyEncryptionKeyName = 'MyKeyEncryptionKey';
    $KeyVault = Get-AzKeyVault -VaultName $KeyVaultName -ResourceGroupName $KVRGname;
    $diskEncryptionKeyVaultUrl = $KeyVault.VaultUri;
    $KeyVaultResourceId = $KeyVault.ResourceId;
    $keyEncryptionKeyUrl = (Get-AzKeyVaultKey -VaultName $KeyVaultName -Name $keyEncryptionKeyName).Key.kid;
    
    Set-AzVMDiskEncryptionExtension -ResourceGroupName $VMRGname -VMName $vmName -AadClientID $aadClientID -AadClientSecret $aadClientSecret -DiskEncryptionKeyVaultUrl $diskEncryptionKeyVaultUrl -DiskEncryptionKeyVaultId $KeyVaultResourceId -KeyEncryptionKeyUrl $keyEncryptionKeyUrl -KeyEncryptionKeyVaultId $KeyVaultResourceId;
    
    

    Uwaga

    Składnia wartości parametru disk-encryption-keyvault jest pełnym ciągiem identyfikatora: /subscriptions/[subscription-id-guid]/resourceGroups/[resource-group-name]/providers/Microsoft.KeyVault/vaults/[keyvault--name]
    Składnia wartości parametru key-encryption-key jest pełnym identyfikatorem URI klucza KEK w następujący sposób: https://[keyvault-name].vault.azure.net/keys/[kekname]/[kek-unique-id]

  • Sprawdź, czy dyski są szyfrowane: aby sprawdzić stan szyfrowania maszyny wirtualnej IaaS, użyj polecenia cmdlet Get-AzVmDiskEncryptionStatus .

    Get-AzVmDiskEncryptionStatus -ResourceGroupName 'MyVirtualMachineResourceGroup' -VMName 'MySecureVM'
    
  • Wyłącz szyfrowanie dysków: aby wyłączyć szyfrowanie, użyj polecenia cmdlet Disable-AzureRmVMDiskEncryption .

    Disable-AzVMDiskEncryption -ResourceGroupName 'MyVirtualMachineResourceGroup' -VMName 'MySecureVM'
    

Włączanie szyfrowania na istniejących lub uruchomionych maszynach wirtualnych przy użyciu interfejsu wiersza polecenia platformy Azure

Użyj polecenia az vm encryption enable, aby włączyć szyfrowanie na uruchomionej maszynie wirtualnej IaaS na platformie Azure.

  • Szyfrowanie uruchomionej maszyny wirtualnej przy użyciu klucza tajnego klienta:

    az vm encryption enable --resource-group "MyVirtualMachineResourceGroup" --name "MySecureVM" --aad-client-id "<my spn created with CLI/my Azure AD ClientID>"  --aad-client-secret "My-AAD-client-secret" --disk-encryption-keyvault "MySecureVault" --volume-type [All|OS|Data]
    
  • Szyfrowanie uruchomionej maszyny wirtualnej przy użyciu klucza KEK w celu opakowania klucza tajnego klienta:

    az vm encryption enable --resource-group "MyVirtualMachineResourceGroup" --name "MySecureVM" --aad-client-id "<my spn created with CLI which is the Azure AD ClientID>"  --aad-client-secret "My-AAD-client-secret" --disk-encryption-keyvault  "MySecureVault" --key-encryption-key "MyKEK_URI" --key-encryption-keyvault "MySecureVaultContainingTheKEK" --volume-type [All|OS|Data]
    

    Uwaga

    Składnia wartości parametru disk-encryption-keyvault jest pełnym ciągiem identyfikatora: /subscriptions/[subscription-id-guid]/resourceGroups/[resource-group-name]/providers/Microsoft.KeyVault/vaults/[keyvault--name]
    Składnia wartości parametru key-encryption-key jest pełnym identyfikatorem URI klucza SZYFROWANIA, jak w artykule: https://[keyvault-name].vault.azure.net/keys/[kekname]/[kek-unique-id]

  • Sprawdź, czy dyski są szyfrowane: aby sprawdzić stan szyfrowania maszyny wirtualnej IaaS, użyj polecenia az vm encryption show .

    az vm encryption show --name "MySecureVM" --resource-group "MyVirtualMachineResourceGroup"
    
  • Wyłącz szyfrowanie: aby wyłączyć szyfrowanie, użyj polecenia az vm encryption disable .

    az vm encryption disable --name "MySecureVM" --resource-group "MyVirtualMachineResourceGroup" --volume-type [ALL, DATA, OS]
    

Korzystanie z szablonu usługi Resource Manager

Szyfrowanie dysków można włączyć na istniejących lub uruchomionych maszynach wirtualnych z systemem Windows IaaS na platformie Azure przy użyciu szablonu usługi Resource Manager w celu zaszyfrowania uruchomionej maszyny wirtualnej z systemem Windows.

  1. W szablonie Szybkiego startu platformy Azure kliknij pozycję Wdróż na platformie Azure.

  2. Wybierz subskrypcję, grupę zasobów, lokalizację grupy zasobów, parametry, postanowienia prawne i umowę. Kliknij przycisk Kup , aby włączyć szyfrowanie na istniejącej lub uruchomionej maszynie wirtualnej IaaS.

W poniższej tabeli wymieniono parametry szablonu usługi Resource Manager dla istniejących lub uruchomionych maszyn wirtualnych korzystających z identyfikatora klienta Firmy Microsoft Entra:

Parametr Opis
AADClientID Identyfikator klienta aplikacji Microsoft Entra, która ma uprawnienia do zapisywania wpisów tajnych w magazynie kluczy.
AADClientSecret Wpis tajny klienta aplikacji Microsoft Entra z uprawnieniami do zapisywania wpisów tajnych w magazynie kluczy.
keyVaultName Nazwa magazynu kluczy, do którego należy przekazać klucz funkcji BitLocker. Możesz go pobrać za pomocą polecenia cmdlet (Get-AzKeyVault -ResourceGroupName <MyKeyVaultResourceGroupName>). Vaultname lub polecenia interfejsu wiersza polecenia platformy Azure az keyvault list --resource-group "MySecureGroup"
keyEncryptionKeyURL Adres URL klucza szyfrowania klucza, który jest używany do szyfrowania wygenerowanego klucza funkcji BitLocker. Ten parametr jest opcjonalny, jeśli wybierzesz nokek na liście rozwijanej UseExistingKek. Jeśli wybierzesz kek na liście rozwijanej UseExistingKek, musisz wprowadzić wartość keyEncryptionKeyURL .
volumeType Typ woluminu wykonywanego przez operację szyfrowania. Prawidłowe wartości to system operacyjny, dane i wszystkie.
sequenceVersion Sekwencja wersji operacji funkcji BitLocker. Zwiększ ten numer wersji za każdym razem, gdy na tej samej maszynie wirtualnej jest wykonywana operacja szyfrowania dysków.
vmName Nazwa maszyny wirtualnej, na którą ma być wykonywana operacja szyfrowania.

Nowe maszyny wirtualne IaaS utworzone na podstawie zaszyfrowanego przez klienta wirtualnego dysku twardego i kluczy szyfrowania

W tym scenariuszu można włączyć szyfrowanie przy użyciu szablonu usługi Resource Manager, poleceń cmdlet programu PowerShell lub poleceń interfejsu wiersza polecenia. W poniższych sekcjach opisano bardziej szczegółowo polecenia szablonu usługi Resource Manager i interfejsu wiersza polecenia.

Skorzystaj z instrukcji w dodatku do przygotowywania wstępnie zaszyfrowanych obrazów, które mogą być używane na platformie Azure. Po utworzeniu obrazu możesz użyć kroków w następnej sekcji, aby utworzyć zaszyfrowaną maszynę wirtualną platformy Azure.

Szyfrowanie maszyn wirtualnych przy użyciu wstępnie zaszyfrowanych dysków VHD za pomocą programu Azure PowerShell

Szyfrowanie dysków na zaszyfrowanym dysku VHD można włączyć przy użyciu polecenia cmdlet programu PowerShell Set-AzVMOSDisk. W poniższym przykładzie przedstawiono kilka typowych parametrów.

$VirtualMachine = New-AzVMConfig -VMName "MySecureVM" -VMSize "Standard_A1"
$VirtualMachine = Set-AzVMOSDisk -VM $VirtualMachine -Name "SecureOSDisk" -VhdUri "os.vhd" Caching ReadWrite -Windows -CreateOption "Attach" -DiskEncryptionKeyUrl "https://mytestvault.vault.azure.net/secrets/Test1/514ceb769c984379a7e0230bddaaaaaa" -DiskEncryptionKeyVaultId "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myKVresourcegroup/providers/Microsoft.KeyVault/vaults/mytestvault"
New-AzVM -VM $VirtualMachine -ResourceGroupName "MyVirtualMachineResourceGroup"

Włączanie szyfrowania na nowo dodanym dysku danych

Nowy dysk można dodać do maszyny wirtualnej z systemem Windows przy użyciu programu PowerShell lub witryny Azure Portal.

Włączanie szyfrowania na nowo dodanym dysku za pomocą programu Azure PowerShell

W przypadku używania programu PowerShell do szyfrowania nowego dysku dla maszyn wirtualnych z systemem Windows należy określić nową wersję sekwencji. Wersja sekwencji musi być unikatowa. Poniższy skrypt generuje identyfikator GUID dla wersji sekwencji. W niektórych przypadkach nowo dodany dysk danych może zostać automatycznie zaszyfrowany przez rozszerzenie usługi Azure Disk Encryption. Automatyczne szyfrowanie zwykle występuje po ponownym uruchomieniu maszyny wirtualnej po przejściu nowego dysku do trybu online. Jest to zwykle spowodowane tym, że dla typu woluminu określono wartość "Wszystkie", gdy szyfrowanie dysków zostało wcześniej uruchomione na maszynie wirtualnej. Jeśli automatyczne szyfrowanie występuje na nowo dodanym dysku danych, zalecamy ponowne uruchomienie polecenia cmdlet Set-AzVmDiskEncryptionExtension z nową wersją sekwencji. Jeśli nowy dysk danych jest automatycznie szyfrowany i nie chcesz go szyfrować, najpierw odszyfruj wszystkie dyski, a następnie ponownie zaszyfruj przy użyciu nowej wersji sekwencji określającej system operacyjny dla typu woluminu.

  • Szyfruj uruchomioną maszynę wirtualną przy użyciu klucza tajnego klienta: poniższy skrypt inicjuje zmienne i uruchamia polecenie cmdlet Set-AzVMDiskEncryptionExtension. Grupa zasobów, maszyna wirtualna, magazyn kluczy, aplikacja Microsoft Entra i wpis tajny klienta powinny już zostać utworzone jako wymagania wstępne. Zastąp wartości MyKeyVaultResourceGroup, MyVirtualMachineResourceGroup, MySecureVM, MySecureVault, My-AAD-client-ID i My-AAD-client-secret. W tym przykładzie użyto parametru "All" dla parametru -VolumeType, który zawiera zarówno woluminy systemu operacyjnego, jak i danych. Jeśli chcesz zaszyfrować wolumin systemu operacyjnego, użyj polecenia "OS" dla parametru -VolumeType.

     $sequenceVersion = [Guid]::NewGuid();
     $KVRGname = 'MyKeyVaultResourceGroup';
     $VMRGName = 'MyVirtualMachineResourceGroup';
     $vmName = 'MySecureVM';
     $aadClientID = 'My-AAD-client-ID';
     $aadClientSecret = 'My-AAD-client-secret';
     $KeyVaultName = 'MySecureVault';
     $KeyVault = Get-AzKeyVault -VaultName $KeyVaultName -ResourceGroupName $KVRGname;
     $diskEncryptionKeyVaultUrl = $KeyVault.VaultUri;
     $KeyVaultResourceId = $KeyVault.ResourceId;
    
     Set-AzVMDiskEncryptionExtension -ResourceGroupName $VMRGname -VMName $vmName -AadClientID $aadClientID -AadClientSecret $aadClientSecret -DiskEncryptionKeyVaultUrl $diskEncryptionKeyVaultUrl -DiskEncryptionKeyVaultId $KeyVaultResourceId -VolumeType 'all' –SequenceVersion $sequenceVersion;
    
  • Szyfrowanie uruchomionej maszyny wirtualnej przy użyciu klucza KEK w celu opakowania klucza tajnego klienta: usługa Azure Disk Encryption umożliwia określenie istniejącego klucza w magazynie kluczy w celu opakowania wpisów tajnych szyfrowania dysków, które zostały wygenerowane podczas włączania szyfrowania. Po określeniu klucza szyfrowania klucza usługa Azure Disk Encryption używa tego klucza do opakowania wpisów tajnych szyfrowania przed zapisaniem w usłudze Key Vault. W tym przykładzie użyto parametru "All" dla parametru -VolumeType, który zawiera zarówno woluminy systemu operacyjnego, jak i danych. Jeśli chcesz zaszyfrować wolumin systemu operacyjnego, użyj polecenia "OS" dla parametru -VolumeType.

    $sequenceVersion = [Guid]::NewGuid();
    $KVRGname = 'MyKeyVaultResourceGroup';
    $VMRGName = 'MyVirtualMachineResourceGroup';
    $vmName = 'MyExtraSecureVM';
    $aadClientID = 'My-AAD-client-ID';
    $aadClientSecret = 'My-AAD-client-secret';
    $KeyVaultName = 'MySecureVault';
    $keyEncryptionKeyName = 'MyKeyEncryptionKey';
    $KeyVault = Get-AzKeyVault -VaultName $KeyVaultName -ResourceGroupName $KVRGname;
    $diskEncryptionKeyVaultUrl = $KeyVault.VaultUri;
    $KeyVaultResourceId = $KeyVault.ResourceId;
    $keyEncryptionKeyUrl = (Get-AzKeyVaultKey -VaultName $KeyVaultName -Name $keyEncryptionKeyName).Key.kid;
    
    Set-AzVMDiskEncryptionExtension -ResourceGroupName $VMRGname -VMName $vmName -AadClientID $aadClientID -AadClientSecret $aadClientSecret -DiskEncryptionKeyVaultUrl $diskEncryptionKeyVaultUrl -DiskEncryptionKeyVaultId $KeyVaultResourceId -KeyEncryptionKeyUrl $keyEncryptionKeyUrl -KeyEncryptionKeyVaultId $KeyVaultResourceId -VolumeType 'all' –SequenceVersion $sequenceVersion;
    
    

    Uwaga

    Składnia wartości parametru disk-encryption-keyvault jest pełnym ciągiem identyfikatora: /subscriptions/[subscription-id-guid]/resourceGroups/[resource-group-name]/providers/Microsoft.KeyVault/vaults/[keyvault--name]
    Składnia wartości parametru key-encryption-key jest pełnym identyfikatorem URI klucza KEK w następujący sposób: https://[keyvault-name].vault.azure.net/keys/[kekname]/[kek-unique-id]

Włączanie szyfrowania na nowo dodanym dysku przy użyciu interfejsu wiersza polecenia platformy Azure

Polecenie interfejsu wiersza polecenia platformy Azure automatycznie udostępni nową wersję sekwencji podczas uruchamiania polecenia w celu włączenia szyfrowania. Dopuszczalne wartości parametru volume-yype to All, OS i Data. Może być konieczne zmianę parametru typu woluminu na system operacyjny lub dane, jeśli szyfrujesz tylko jeden typ dysku dla maszyny wirtualnej. W przykładach użyto parametru "All" dla parametru typu woluminu.

  • Szyfrowanie uruchomionej maszyny wirtualnej przy użyciu klucza tajnego klienta:

    az vm encryption enable --resource-group "MyVirtualMachineResourceGroup" --name "MySecureVM" --aad-client-id "<my spn created with CLI/my Azure AD ClientID>"  --aad-client-secret "My-AAD-client-secret" --disk-encryption-keyvault "MySecureVault" --volume-type "All"
    
  • Szyfrowanie uruchomionej maszyny wirtualnej przy użyciu klucza KEK w celu opakowania klucza tajnego klienta:

    az vm encryption enable --resource-group "MyVirtualMachineResourceGroup" --name "MySecureVM" --aad-client-id "<my spn created with CLI which is the Azure AD ClientID>"  --aad-client-secret "My-AAD-client-secret" --disk-encryption-keyvault  "MySecureVault" --key-encryption-key "MyKEK_URI" --key-encryption-keyvault "MySecureVaultContainingTheKEK" --volume-type "all"
    

Włącz szyfrowanie przy użyciu uwierzytelniania opartego na certyfikatach klienta firmy Microsoft Entra.

Uwierzytelnianie certyfikatu klienta można używać z kluczem KEK lub bez niego. Przed użyciem skryptów programu PowerShell należy już przekazać certyfikat do magazynu kluczy i wdrożyć go na maszynie wirtualnej. Jeśli używasz klucza KEK, klucz KEK powinien już istnieć. Aby uzyskać więcej informacji, zobacz sekcję Uwierzytelnianie oparte na certyfikatach dla usługi Microsoft Entra ID w artykule dotyczącym wymagań wstępnych.

Włączanie szyfrowania przy użyciu uwierzytelniania opartego na certyfikatach za pomocą programu Azure PowerShell

## Fill in 'MyVirtualMachineResourceGroup', 'MyKeyVaultResourceGroup', 'My-AAD-client-ID', 'MySecureVault, and 'MySecureVM'.

$VMRGName = 'MyVirtualMachineResourceGroup'
$KVRGname = 'MyKeyVaultResourceGroup';
$AADClientID ='My-AAD-client-ID';
$KeyVaultName = 'MySecureVault';
$VMName = 'MySecureVM';
$KeyVault = Get-AzKeyVault -VaultName $KeyVaultName -ResourceGroupName $KVRGname;
$diskEncryptionKeyVaultUrl = $KeyVault.VaultUri;
$KeyVaultResourceId = $KeyVault.ResourceId;

# Fill in the certificate path and the password so the thumbprint can be set as a variable. 

$certPath = '$CertPath = "C:\certificates\mycert.pfx';
$CertPassword ='Password'
$Cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2($CertPath, $CertPassword)
$aadClientCertThumbprint = $cert.Thumbprint;

# Enable disk encryption using the client certificate thumbprint

Set-AzVMDiskEncryptionExtension -ResourceGroupName $VMRGName -VMName $VMName -AadClientID $AADClientID -AadClientCertThumbprint $AADClientCertThumbprint -DiskEncryptionKeyVaultUrl $DiskEncryptionKeyVaultUrl -DiskEncryptionKeyVaultId $KeyVaultResourceId

Włączanie szyfrowania przy użyciu uwierzytelniania opartego na certyfikatach i klucza szyfrowania kluczy przy użyciu programu Azure PowerShell

# Fill in 'MyVirtualMachineResourceGroup', 'MyKeyVaultResourceGroup', 'My-AAD-client-ID', 'MySecureVault,, 'MySecureVM', and "KEKName.

$VMRGName = 'MyVirtualMachineResourceGroup';
$KVRGname = 'MyKeyVaultResourceGroup';
$AADClientID ='My-AAD-client-ID';
$KeyVaultName = 'MySecureVault';
$VMName = 'MySecureVM';
$keyEncryptionKeyName ='KEKName';
$KeyVault = Get-AzKeyVault -VaultName $KeyVaultName -ResourceGroupName $KVRGname;
$diskEncryptionKeyVaultUrl = $KeyVault.VaultUri;
$KeyVaultResourceId = $KeyVault.ResourceId;
$keyEncryptionKeyUrl = (Get-AzKeyVaultKey -VaultName $KeyVaultName -Name $keyEncryptionKeyName).Key.kid;

## Fill in the certificate path and the password so the thumbprint can be read and set as a variable.

$certPath = '$CertPath = "C:\certificates\mycert.pfx';
$CertPassword ='Password'
$Cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2($CertPath, $CertPassword)
$aadClientCertThumbprint = $cert.Thumbprint;

# Enable disk encryption using the client certificate thumbprint and a KEK

Set-AzVMDiskEncryptionExtension -ResourceGroupName $VMRGName -VMName $VMName -AadClientID $AADClientID -AadClientCertThumbprint $AADClientCertThumbprint -DiskEncryptionKeyVaultUrl $DiskEncryptionKeyVaultUrl -DiskEncryptionKeyVaultId $KeyVaultResourceId -KeyEncryptionKeyUrl $keyEncryptionKeyUrl -KeyEncryptionKeyVaultId $KeyVaultResourceId

Wyłączanie szyfrowania

Szyfrowanie można wyłączyć przy użyciu programu Azure PowerShell, interfejsu wiersza polecenia platformy Azure lub szablonu usługi Resource Manager.

  • Wyłącz szyfrowanie dysków za pomocą programu Azure PowerShell: aby wyłączyć szyfrowanie, użyj polecenia cmdlet Disable-AzureRmVMDiskEncryption .

    Disable-AzVMDiskEncryption -ResourceGroupName 'MyVirtualMachineResourceGroup' -VMName 'MySecureVM'
    
  • Wyłącz szyfrowanie przy użyciu interfejsu wiersza polecenia platformy Azure: aby wyłączyć szyfrowanie, użyj polecenia az vm encryption disable .

    az vm encryption disable --name "MySecureVM" --resource-group "MyVirtualMachineResourceGroup" --volume-type [ALL, DATA, OS]
    
  • Wyłącz szyfrowanie przy użyciu szablonu usługi Resource Manager:

    1. Kliknij pozycję Wdróż na platformie Azure z szablonu Wyłącz szyfrowanie dysków na uruchomionej maszynie wirtualnej z systemem Windows.
    2. Wybierz subskrypcję, grupę zasobów, lokalizację, maszynę wirtualną, postanowienia prawne i umowę.
    3. Kliknij przycisk Kup , aby wyłączyć szyfrowanie dysków na uruchomionej maszynie wirtualnej z systemem Windows.

Następne kroki