Activer le chiffrement de bout en bout à l’aide du chiffrement sur l’hôte avec Azure PowerShell

S’applique à : ✔️ Machine virtuelles Windows

Lorsque vous activez le chiffrement sur l'hôte, les données stockées sur l'hôte de machine virtuelle sont chiffrées au repos et les flux sont chiffrés dans le service de stockage. Si vous souhaitez obtenir des informations conceptuelles concernant le chiffrement au niveau de l'hôte et sur d'autres types de chiffrement de disque managé, veuillez consulter Chiffrement de l'hôte : chiffrement de bout en bout pour vos données de machine virtuelle.

Restrictions

  • Ne peut pas être activé sur les machines virtuelles (VM) ou les groupes de machines virtuelles identiques sur lesquels Azure Disk Encryption est actuellement activé ou l’a déjà été.
  • Azure Disk Encryption ne peut pas être activé sur les disques sur lesquels le chiffrement est activé sur l’hôte.
  • Le chiffrement peut être activé sur des groupes de machines virtuelles identiques existants. Toutefois, seules les nouvelles machines virtuelles créées après l’activation du chiffrement sont automatiquement chiffrées.
  • Les machines virtuelles existantes doivent être libérées et réallouées afin d’être chiffrées.

Les restrictions suivantes s’appliquent uniquement aux disques Ultra et ssd Premium v2 :

  • Les disques utilisant une taille de secteur 512e doivent avoir été créés après le 13/5/2023.

Tailles des machines virtuelles prises en charge

La liste complète des tailles de machines virtuelles prises en charge peut être extraite par programmatique. Pour savoir comment les récupérer par programmation, reportez-vous à la section Rechercher les tailles de machine virtuelle prises en charge. La mise à niveau de la taille de machine virtuelle déclenche la validation qui vérifie si la nouvelle taille de machine virtuelle prend en charge la EncryptionAtHost fonctionnalité.

Prérequis

Vous devez activer la fonctionnalité pour votre abonnement avant d’utiliser la propriété EncryptionAtHost de votre machine virtuelle ou de votre groupe de machines virtuelles identiques. Pour activer la fonctionnalité pour votre abonnement, procédez comme suit :

  1. Exécutez la commande suivante pour inscrire la fonctionnalité pour votre abonnement

     Register-AzProviderFeature -FeatureName "EncryptionAtHost" -ProviderNamespace "Microsoft.Compute" 
    
  2. Vérifiez que l’état de l’inscription est bien Inscrit (ceci prend quelques minutes) à l’aide de la commande ci-dessous, avant d’essayer la fonctionnalité.

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

Créer un Azure Key Vault et un jeu de chiffrement de disque

Remarque

Cette section s’applique uniquement aux configurations avec des clés gérées par le client. Si vous utilisez des clés gérées par la plateforme, vous pouvez passer à Créer et mettre à jour des machines virtuelles et des groupes de machines virtuelles identiques avec chiffrement sur l’hôte.

Lorsque vous activez la fonctionnalité, configurez une Azure Key Vault et un jeu de chiffrement de disque, si vous ne les avez pas déjà.

  1. Installez la dernière version Azure PowerShell et connectez-vous à votre compte Azure avec Connect-AzAccount.

  2. Créer une instance Azure Key Vault et une clé de chiffrement.

    Quand vous créez l’instance Key Vault, vous devez activer la protection de purge. La protection de purge garantit qu’une clé supprimée ne peut pas être supprimée définitivement tant que la période de rétention n’est pas écoulée. Ces paramètres vous protègent contre la perte de données en raison d’une suppression accidentelle. Ces paramètres sont obligatoires lors de l’utilisation d’un coffre de clés Key Vault pour le chiffrement des disques managés.

    $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. Créez un jeu de chiffrement de disque. Ce script définit RotationToLatestKeyVersionEnabled égal à $true pour activer la rotation automatique de la clé. Lorsque vous activez la rotation automatique, le système met automatiquement à jour tous les disques managés, captures instantanées et images référençant le jeu de chiffrement de disque pour utiliser la nouvelle version de la clé dans un délai d’une heure.

    $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. Accordez au jeu de chiffrement de disque l’accès au coffre de clés.

    Remarque

    Il se peut qu’Azure prenne quelques minutes pour créer l’identité de votre ensemble de chiffrement de disque dans Microsoft Entra ID. Si vous recevez une erreur comme « Impossible de trouver l’objet Active Directory » lors de l’exécution de la commande suivante, attendez quelques minutes et réessayez.

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

Utilisation d’un coffre de clés dans un autre abonnement

Vous pouvez également gérer vos coffres de clés Azure de manière centralisée à partir d’un seul abonnement, et utiliser les clés stockées dans le Key Vault pour chiffrer des disques managés et des captures instantanées dans d’autres abonnements de votre organisation. Cela permet à votre équipe de sécurité d’appliquer et de gérer facilement une stratégie de sécurité fiable à un seul abonnement.

Important

Pour cette configuration, votre Key Vault et votre ensemble de chiffrement de disque doivent se trouver dans la même région et être associés au même locataire.

Le script suivant illustre la façon de configurer un jeu de chiffrement de disque pour utiliser une clé d’un Key Vault dans un abonnement différent, mais situé dans la même région :

$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

Configurer le chiffrement au niveau de l’hôte pour les machines virtuelles et les groupes identiques de machines virtuelles

Vous pouvez activer le chiffrement sur l’hôte en définissant la propriété EncryptionAtHost sous securityProfile pour les machines virtuelles ou les groupes identiques de machines virtuelles à l’aide de la version d’API 2020-06-01 ou d’une version ultérieure.

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

Créer et mettre à jour des machines virtuelles et des groupes identiques de machines virtuelles avec chiffrement au niveau de l’hôte

Créer une machine virtuelle avec chiffrement sur l’hôte activé avec des clés gérées par le client

Avant d’exécuter le script, fournissez un groupe de ressources et un jeu de chiffrement de disque existants, ainsi que des valeurs pour les informations d’identification de l’administrateur de machine virtuelle, la région, la taille de machine virtuelle et le réseau virtuel. Le script crée le réseau virtuel et l’interface réseau, utilise New-AzVMConfig avec -EncryptionAtHost, et déploie la machine virtuelle Windows avec New-AzVM. Le jeu de chiffrement de disque chiffre le cache du système d’exploitation et des disques de données avec des clés gérées par le client. Le disque temporaire est chiffré avec des clés gérées par la plateforme.

$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

Créer une machine virtuelle avec chiffrement sur l’hôte activé avec des clés gérées par la plateforme

Avant d’exécuter le script, fournissez un groupe de ressources et des valeurs existants pour les informations d’identification de l’administrateur de machine virtuelle, la région, la taille de machine virtuelle et le réseau virtuel. Le script crée le réseau virtuel et l’interface réseau, utilise New-AzVMConfig avec -EncryptionAtHost, et déploie la machine virtuelle Windows avec New-AzVM. Le chiffrement sur l’hôte chiffre le cache des disques de données et du système d’exploitation, ainsi que le disque temporaire, avec des clés gérées par la plateforme.

$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

Mettre à jour une machine virtuelle pour activer le chiffrement sur l’hôte

$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

Vérifier l’état du chiffrement sur l’hôte pour une machine virtuelle

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

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

$VM.SecurityProfile.EncryptionAtHost

Désactiver le chiffrement sur l’hôte

Vous devez désallouer votre machine virtuelle pour pouvoir désactiver le chiffrement sur l’ordinateur hôte.

$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

Créer un groupe de machines virtuelles identiques avec chiffrement sur l’hôte activé avec des clés gérées par le client

Important

À compter de novembre 2023, les groupes de machines virtuelles identiques créés à l’aide de PowerShell et d’Azure CLI utilisent par défaut le mode d’orchestration flexible si vous ne spécifiez pas de mode d’orchestration. Pour plus d’informations sur cette modification et les actions que vous devez entreprendre, consultez Changement cassant pour les clients VmSS PowerShell/CLI - Microsoft Community Hub

Avant d’exécuter le script, fournissez un groupe de ressources et un jeu de chiffrement de disque existants, ainsi que des valeurs pour les informations d’identification d’administrateur, la région, la taille de machine virtuelle et le réseau virtuel. Le script crée le réseau virtuel, configure un groupe de machines virtuelles identiques en mode Flexible à deux instances avec New-AzVmssConfig et -EncryptionAtHost, puis le déploie avec New-AzVmss. Le jeu de chiffrement de disque chiffre le cache du système d’exploitation et des disques de données avec des clés gérées par le client. Les disques temporaires sont chiffrés avec des clés gérées par la plateforme.

$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

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

Créer un groupe identique de machines virtuelles avec le chiffrement au niveau de l’hôte activé à l’aide de clés gérées par la plateforme

Important

À compter de novembre 2023, les groupes de machines virtuelles identiques créés à l’aide de PowerShell et d’Azure CLI utilisent par défaut le mode d’orchestration flexible si vous ne spécifiez pas de mode d’orchestration. Pour plus d’informations sur cette modification et les actions que vous devez entreprendre, consultez Changement cassant pour les clients VmSS PowerShell/CLI - Microsoft Community Hub

Avant d’exécuter le script, fournissez un groupe de ressources et des valeurs existants pour les informations d’identification d’administrateur, la région, la taille de machine virtuelle et le réseau virtuel. Le script crée le réseau virtuel, configure un groupe de machines virtuelles identiques en mode Flexible à deux instances avec New-AzVmssConfig et -EncryptionAtHost, puis le déploie avec New-AzVmss. Le chiffrement sur l’hôte chiffre le cache des disques de système d’exploitation et de données, ainsi que les disques temporaires, avec des clés gérées par la plateforme.

$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

Mettre à jour un groupe de machines virtuelles identiques pour activer le chiffrement sur l’hôte

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

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

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

Vérifier l’état du chiffrement au niveau de l’hôte pour un groupe de machines virtuelles identiques

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

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

$VMSS.VirtualMachineProfile.SecurityProfile.EncryptionAtHost

Mettre à jour un groupe de machines virtuelles identiques pour désactiver le chiffrement sur l’hôte

Vous pouvez désactiver le chiffrement sur l’hôte dans votre groupe de machines virtuelles identiques, mais cette modification affecte uniquement les machines virtuelles créées après la désactivation du chiffrement sur l’hôte. Pour les machines virtuelles existantes, vous devez désallouer la machine virtuelle, désactiver le chiffrement à l’hôte sur cette machine virtuelle, puis réallouer la machine virtuelle.

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

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

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

Recherche des tailles de machine virtuelle prises en charge

Certaines tailles de machine virtuelle plus anciennes ne sont pas prises en charge. Pour accéder à la liste des tailles de machines virtuelles prises en charge, procédez comme suit :

Appel de l'API Resource Skus et vérification que la capacité EncryptionAtHostSupported a pour valeur True.

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

Ou appelez la cmdlet PowerShell Get-AzComputeResourceSku.

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

Étapes suivantes

Maintenant que vous avez créé et configuré ces ressources, vous pouvez les utiliser pour sécuriser vos disques managés. Le lien suivant contient des exemples de scripts, chacun correspondant à un scénario différent, que vous pouvez utiliser pour sécuriser vos disques managés.

Exemples de modèles Azure Resource Manager