Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Importante
Crittografia dischi di Azure è pianificato per il ritiro il 15 settembre 2028. Fino a tale data, è possibile continuare a usare Crittografia dischi di Azure senza interruzioni. Il 15 settembre 2028 i carichi di lavoro abilitati per ADE continueranno a essere eseguiti, ma i dischi crittografati non riusciranno a sbloccarsi dopo il riavvio della macchina virtuale, causando un'interruzione del servizio.
Usare la crittografia nell'host per le nuove macchine virtuali. Tutte le macchine virtuali abilitate per ADE (inclusi i backup) devono eseguire la migrazione alla crittografia nell'host prima della data di ritiro per evitare interruzioni del servizio. Per informazioni dettagliate, vedere Eseguire la migrazione da Crittografia dischi di Azure alla crittografia nell'host .
Il modulo di Azure PowerShell viene usato per creare e gestire le risorse di Azure dalla riga di comando di PowerShell o negli script. Questo articolo illustra come usare Azure PowerShell per creare e crittografare un set di scalabilità di macchine virtuali. Per altre informazioni sull'applicazione di Crittografia dischi di Azure a un set di scalabilità di macchine virtuali, vedere Crittografia dischi di Azure per set di scalabilità di macchine virtuali.
Azure Cloud Shell
Azure Cloud Shell è un ambiente di shell interattivo ospitato in Azure e usato tramite il browser. È possibile usare Bash o PowerShell con Cloud Shell per usare i servizi di Azure. È possibile usare i comandi preinstallati di Cloud Shell per eseguire il codice contenuto in questo articolo senza dover installare strumenti nell'ambiente locale.
Per avviare Azure Cloud Shell:
| Opzione | Esempio/Collegamento |
|---|---|
| Selezionare Prova nell'angolo superiore destro di un codice o di un blocco di comandi. Selezionando Prova non viene copiato automaticamente il codice o il comando in Cloud Shell. |
|
| Passare a https://shell.azure.com o selezionare il pulsante Avvia Cloud Shell per aprire Cloud Shell nel browser. |
|
| Selezionare il pulsante Cloud Shell nella barra dei menu in alto a destra nel portale di Azure. |
|
Per usare Azure Cloud Shell:
Avviare Cloud Shell.
Selezionare il pulsante Copia in un blocco di codice (o blocco di comandi) per copiare il codice o il comando.
Incollare il codice o il comando nella sessione di Cloud Shell selezionando CTRL+MAIUSC+V in Windows e Linux oppure selezionando CMD+MAIUSC+V in macOS.
Selezionare INVIO per eseguire il codice o il comando.
Creare un insieme di credenziali delle chiavi di Azure abilitato per la crittografia dei dischi
Azure Key Vault può archiviare chiavi, segreti o password che consentono di implementarli in modo sicuro nelle applicazioni e nei servizi. Le chiavi crittografiche vengono archiviate in Azure Key Vault usando la protezione software oppure è possibile importare o generare le chiavi nei moduli di protezione hardware (HSM) certificati per gli standard convalidati FIPS 140 . Queste chiavi crittografiche vengono usate per crittografare e decrittografare i dischi virtuali collegati alla macchina virtuale. È possibile mantenere il controllo di queste chiavi crittografiche e controllarne l'uso.
Creare un Key Vault con New-AzKeyVault. Per utilizzare Key Vault per crittografare il disco, configurare il parametro EnabledForDiskEncryption. L'esempio seguente definisce anche le variabili per il nome del gruppo di risorse, il nome dell'insieme di credenziali delle chiavi e la posizione. Specificare un nome univoco per il Key Vault:
$rgName="myResourceGroup"
$vaultName="myuniquekeyvault"
$location = "EastUS"
New-AzResourceGroup -Name $rgName -Location $location
New-AzKeyVault -VaultName $vaultName -ResourceGroupName $rgName -Location $location -EnabledForDiskEncryption
Utilizzare un Key Vault esistente
Questo passaggio è obbligatorio solo se disponi di una Key Vault esistente che vuoi usare con la crittografia del disco. Ignorare questo passaggio se hai creato un Key Vault nella sezione precedente.
È possibile abilitare un insieme di credenziali delle chiavi esistente nella stessa sottoscrizione e nella stessa area del set di scalabilità per la crittografia dei dischi con Set-AzKeyVaultAccessPolicy. Definisci il nome del tuo Key Vault esistente nella variabile $vaultName come segue:
$vaultName="myexistingkeyvault"
Set-AzKeyVaultAccessPolicy -VaultName $vaultName -EnabledForDiskEncryption
Creare un set di scalabilità
Importante
A partire da novembre 2023, i set di scalabilità di macchine virtuali creati con PowerShell e l'interfaccia della riga di comando di Azure avranno per impostazione predefinita la modalità di orchestrazione flessibile se non è specificata alcuna modalità di orchestrazione. Per altre informazioni su questa modifica e sulle azioni da eseguire, vedere Modifica che causa un'interruzione per i clienti di PowerShell/CLI di VMSS - Hub della community Microsoft
Prima di tutto, impostare un nome utente e una password di amministratore per le istanze della macchina virtuale con Get-Credential:
$cred = Get-Credential
Creare ora un set di scalabilità di macchine virtuali con il comando New-AzVmss. Per distribuire il traffico alle singole istanze di macchine virtuali, viene creato anche un servizio di bilanciamento del carico. Il servizio di bilanciamento del carico include regole per distribuire il traffico sulla porta TCP 80, nonché consentire il traffico desktop remoto sulla porta TCP 3389 e la comunicazione remota di PowerShell sulla porta TCP 5985:
$vmssName="myScaleSet"
New-AzVmss `
-ResourceGroupName $rgName `
-VMScaleSetName $vmssName `
-OrchestrationMode "flexible" `
-Location $location `
-VirtualNetworkName "myVnet" `
-SubnetName "mySubnet" `
-PublicIpAddressName "myPublicIPAddress" `
-LoadBalancerName "myLoadBalancer" `
-Credential $cred
Abilitare la crittografia
Per crittografare le istanze di macchine virtuali in un set di scalabilità, ottenere prima di tutto alcune informazioni sull'URI e l'ID di risorsa dell'insieme di credenziali delle chiavi con Get-AzKeyVault. Queste variabili vengono usate per avviare il processo di crittografia con Set-AzVmssDiskEncryptionExtension:
$diskEncryptionKeyVaultUrl=(Get-AzKeyVault -ResourceGroupName $rgName -Name $vaultName).VaultUri
$keyVaultResourceId=(Get-AzKeyVault -ResourceGroupName $rgName -Name $vaultName).ResourceId
Set-AzVmssDiskEncryptionExtension -ResourceGroupName $rgName -VMScaleSetName $vmssName `
-DiskEncryptionKeyVaultUrl $diskEncryptionKeyVaultUrl -DiskEncryptionKeyVaultId $keyVaultResourceId -VolumeType "All"
Quando richiesto, digitare y per continuare il processo di crittografia dei dischi nelle istanze di macchine virtuali del set di scalabilità.
Abilitare la crittografia tramite kek per eseguire il wrapping della chiave
È anche possibile usare una chiave di crittografia principale per una maggiore sicurezza durante la crittografia del set di scalabilità delle macchine virtuali.
$diskEncryptionKeyVaultUrl=(Get-AzKeyVault -ResourceGroupName $rgName -Name $vaultName).VaultUri
$keyVaultResourceId=(Get-AzKeyVault -ResourceGroupName $rgName -Name $vaultName).ResourceId
$keyEncryptionKeyUrl = (Get-AzKeyVaultKey -VaultName $vaultName -Name $keyEncryptionKeyName).Key.kid;
Set-AzVmssDiskEncryptionExtension -ResourceGroupName $rgName -VMScaleSetName $vmssName `
-DiskEncryptionKeyVaultUrl $diskEncryptionKeyVaultUrl -DiskEncryptionKeyVaultId $keyVaultResourceId `
-KeyEncryptionKeyUrl $keyEncryptionKeyUrl -KeyEncryptionKeyVaultId $keyVaultResourceId -VolumeType "All"
Annotazioni
La sintassi per il valore del parametro disk-encryption-keyvault è la stringa completa dell'identificatore:
/subscriptions/[subscription-id-guid]/resourceGroups/[resource-group-name]/providers/Microsoft.KeyVault/vaults/[keyvault-name]
La sintassi per il valore del parametro key-encryption-key è l'URI completo al KEK, come in:
https://[keyvault-name].vault.azure.net/keys/[kekname]/[kek-unique-id]
Controllare lo stato di avanzamento della crittografia
Per verificare lo stato della crittografia del disco, usare Get-AzVmssDiskEncryption:
Get-AzVmssDiskEncryption -ResourceGroupName $rgName -VMScaleSetName $vmssName
Quando le istanze di macchina virtuale sono crittografate, il codice EncryptionSummary segnala ProvisioningState/succeeded come illustrato nell'output di esempio seguente:
ResourceGroupName : myResourceGroup
VmScaleSetName : myScaleSet
EncryptionSettings :
KeyVaultURL : https://myuniquekeyvault.vault.azure.net/
KeyEncryptionKeyURL :
KeyVaultResourceId : /subscriptions/guid/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myuniquekeyvault
KekVaultResourceId :
KeyEncryptionAlgorithm :
VolumeType : All
EncryptionOperation : EnableEncryption
EncryptionSummary[0] :
Code : ProvisioningState/succeeded
Count : 2
EncryptionEnabled : True
EncryptionExtensionInstalled : True
Disabilitare la crittografia
Se non si vogliono più usare dischi delle istanze di vm crittografate, è possibile disabilitare la crittografia con Disable-AzVmssDiskEncryption come indicato di seguito:
Disable-AzVmssDiskEncryption -ResourceGroupName $rgName -VMScaleSetName $vmssName
Passaggi successivi
- In questo articolo è stato usato Azure PowerShell per crittografare un set di scalabilità di macchine virtuali. È anche possibile usare l'interfaccia della riga di comando di Azure o i modelli di Azure Resource Manager.
- Se si desidera applicare la crittografia del disco di Azure dopo che è stata effettuata la configurazione di un'altra estensione, puoi utilizzare il sequenziamento delle estensioni.