Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Important
O Azure Disk Encryption está programado para ser descontinuado a 15 de setembro de 2028. Até essa data, pode continuar a usar o Azure Disk Encryption sem interrupções. A 15 de setembro de 2028, cargas de trabalho com ADE continuarão a funcionar, mas os discos encriptados não conseguirão desbloquear após o reinício da VM, resultando em interrupção do serviço.
Use encriptação no host para novas VMs. Todas as VMs habilitadas por ADE (incluindo backups) devem migrar para encriptação no host antes da data de desativação para evitar interrupções do serviço. Consulte Migrar de Encriptação de Disco Azure para Encriptação no Host para mais detalhes.
Aplica-se a: ✔️ Linux VMs ✔️ Conjuntos de escala flexível
O escopo deste artigo é validar o status de criptografia de uma máquina virtual usando métodos diferentes: o portal do Azure, o PowerShell, a CLI do Azure ou o sistema operacional da máquina virtual (VM).
Você pode validar o status da criptografia durante ou após a criptografia:
- Verificar os discos conectados a uma VM específica.
- Consultar as configurações de criptografia em cada disco, se o disco está conectado ou desconectado.
Este cenário aplica-se às extensões de passagem dupla e de passo único da Encriptação de Disco do Azure. As distribuições Linux são o único ambiente para este cenário.
Note
Estamos usando variáveis ao longo do artigo. Substitua os valores adequadamente.
Portal
No portal do Azure, dentro da seção Extensões , selecione a extensão Azure Disk Encryption na lista. As informações da mensagem Status indicam o status atual da criptografia:
Na lista de extensões, você verá a versão correspondente da extensão Azure Disk Encryption. A versão 0.x corresponde à passagem dupla do Azure Disk Encryption e a versão 1.x corresponde à passagem única do Azure Disk Encryption.
Você pode obter mais detalhes selecionando a extensão e, em seguida, selecionando Exibir status detalhado. O status detalhado do processo de criptografia aparece no formato JSON.
Outra maneira de validar o status de criptografia é observando a seção Configurações de disco .
Note
Esse status significa que os discos têm configurações de criptografia carimbadas, não que eles foram realmente criptografados no nível do sistema operacional.
Por design, os discos são carimbados primeiro e criptografados depois. Se o processo de encriptação falhar, os discos podem acabar carimbados mas não encriptados.
Para confirmar se os discos estão realmente encriptados, pode verificar novamente a encriptação de cada disco ao nível do SO.
PowerShell
Você pode validar o status geral de criptografia de uma VM criptografada usando os seguintes comandos do PowerShell:
$VMNAME="VMNAME"
$RGNAME="RGNAME"
Get-AzVmDiskEncryptionStatus -ResourceGroupName ${RGNAME} -VMName ${VMNAME}
Você pode capturar as configurações de criptografia de cada disco usando os seguintes comandos do PowerShell.
Passe único
Em uma única passagem, as configurações de criptografia são estampadas em cada um dos discos (sistema operacional e dados). Você pode capturar as configurações de criptografia para um disco do sistema operacional em uma única passagem da seguinte maneira:
$RGNAME = "RGNAME"
$VMNAME = "VMNAME"
$VM = Get-AzVM -Name ${VMNAME} -ResourceGroupName ${RGNAME}
$Sourcedisk = Get-AzDisk -ResourceGroupName ${RGNAME} -DiskName $VM.StorageProfile.OsDisk.Name
Write-Host "============================================================================================================================================================="
Write-Host "Encryption Settings:"
Write-Host "============================================================================================================================================================="
Write-Host "Enabled:" $Sourcedisk.EncryptionSettingsCollection.Enabled
Write-Host "Version:" $Sourcedisk.EncryptionSettingsCollection.EncryptionSettingsVersion
Write-Host "Source Vault:" $Sourcedisk.EncryptionSettingsCollection.EncryptionSettings.DiskEncryptionKey.SourceVault.Id
Write-Host "Secret URL:" $Sourcedisk.EncryptionSettingsCollection.EncryptionSettings.DiskEncryptionKey.SecretUrl
Write-Host "Key URL:" $Sourcedisk.EncryptionSettingsCollection.EncryptionSettings.KeyEncryptionKey.KeyUrl
Write-Host "============================================================================================================================================================="
Se o disco não tiver as configurações de criptografia carimbadas, a saída ficará vazia:
Use os seguintes comandos para capturar configurações de criptografia para discos de dados:
$RGNAME = "RGNAME"
$VMNAME = "VMNAME"
$VM = Get-AzVM -Name ${VMNAME} -ResourceGroupName ${RGNAME}
clear
foreach ($i in $VM.StorageProfile.DataDisks|ForEach-Object{$_.Name})
{
Write-Host "============================================================================================================================================================="
Write-Host "Encryption Settings:"
Write-Host "============================================================================================================================================================="
Write-Host "Checking Disk:" $i
$Disk=(Get-AzDisk -ResourceGroupName ${RGNAME} -DiskName $i)
Write-Host "Encryption Enable: " $Sourcedisk.EncryptionSettingsCollection.Enabled
Write-Host "Encryption KeyEncryptionKey: " $Sourcedisk.EncryptionSettingsCollection.EncryptionSettings.KeyEncryptionKey.KeyUrl;
Write-Host "Encryption DiskEncryptionKey: " $Sourcedisk.EncryptionSettingsCollection.EncryptionSettings.DiskEncryptionKey.SecretUrl;
Write-Host "============================================================================================================================================================="
}
Passe duplo
Em uma passagem dupla, as configurações de criptografia são carimbadas no modelo de VM e não em cada disco individual.
Para verificar se as configurações de criptografia foram carimbadas em uma passagem dupla, use os seguintes comandos:
$RGNAME = "RGNAME"
$VMNAME = "VMNAME"
$vm = Get-AzVm -ResourceGroupName ${RGNAME} -Name ${VMNAME};
$Sourcedisk = Get-AzDisk -ResourceGroupName ${RGNAME} -DiskName $VM.StorageProfile.OsDisk.Name
clear
Write-Host "============================================================================================================================================================="
Write-Host "Encryption Settings:"
Write-Host "============================================================================================================================================================="
Write-Host "Enabled:" $Sourcedisk.EncryptionSettingsCollection.Enabled
Write-Host "Version:" $Sourcedisk.EncryptionSettingsCollection.EncryptionSettingsVersion
Write-Host "Source Vault:" $Sourcedisk.EncryptionSettingsCollection.EncryptionSettings.DiskEncryptionKey.SourceVault.Id
Write-Host "Secret URL:" $Sourcedisk.EncryptionSettingsCollection.EncryptionSettings.DiskEncryptionKey.SecretUrl
Write-Host "Key URL:" $Sourcedisk.EncryptionSettingsCollection.EncryptionSettings.KeyEncryptionKey.KeyUrl
Write-Host "============================================================================================================================================================="
Discos não anexados
Verifique as configurações de criptografia para discos que não estão conectados a uma VM.
Discos gerenciados
$Sourcedisk = Get-AzDisk -ResourceGroupName ${RGNAME} -DiskName ${TARGETDISKNAME}
Write-Host "============================================================================================================================================================="
Write-Host "Encryption Settings:"
Write-Host "============================================================================================================================================================="
Write-Host "Enabled:" $Sourcedisk.EncryptionSettingsCollection.Enabled
Write-Host "Version:" $Sourcedisk.EncryptionSettingsCollection.EncryptionSettingsVersion
Write-Host "Source Vault:" $Sourcedisk.EncryptionSettingsCollection.EncryptionSettings.DiskEncryptionKey.SourceVault.Id
Write-Host "Secret URL:" $Sourcedisk.EncryptionSettingsCollection.EncryptionSettings.DiskEncryptionKey.SecretUrl
Write-Host "Key URL:" $Sourcedisk.EncryptionSettingsCollection.EncryptionSettings.KeyEncryptionKey.KeyUrl
Write-Host "============================================================================================================================================================="
Azure CLI
Você pode validar o status geral de criptografia de uma VM criptografada usando os seguintes comandos da CLI do Azure:
VMNAME="VMNAME"
RGNAME="RGNAME"
az vm encryption show --name ${VMNAME} --resource-group ${RGNAME} --query "substatus"
Passe único
Você pode validar as configurações de criptografia para cada disco usando os seguintes comandos da CLI do Azure:
az vm encryption show -g ${RGNAME} -n ${VMNAME} --query "disks[*].[name, statuses[*].displayStatus]" -o table
Important
Se o disco não tiver as configurações de criptografia carimbadas, você verá que o texto Disco não está criptografado.
Use os comandos a seguir para obter configurações detalhadas de status e criptografia.
Disco do SO:
RGNAME="RGNAME"
VMNAME="VNAME"
disk=`az vm show -g ${RGNAME} -n ${VMNAME} --query storageProfile.osDisk.name -o tsv`
for disk in $disk; do \
echo "============================================================================================================================================================="
echo -ne "Disk Name: "; az disk show -g ${RGNAME} -n ${disk} --query name -o tsv; \
echo -ne "Encryption Enabled: "; az disk show -g ${RGNAME} -n ${disk} --query encryptionSettingsCollection.enabled -o tsv; \
echo -ne "Version: "; az disk show -g ${RGNAME} -n ${TARGETDISKNAME} --query encryptionSettingsCollection.encryptionSettingsVersion -o tsv; \
echo -ne "Disk Encryption Key: "; az disk show -g ${RGNAME} -n ${disk} --query encryptionSettingsCollection.encryptionSettings[].diskEncryptionKey.secretUrl -o tsv; \
echo -ne "key Encryption Key: "; az disk show -g ${RGNAME} -n ${disk} --query encryptionSettingsCollection.encryptionSettings[].keyEncryptionKey.keyUrl -o tsv; \
echo "============================================================================================================================================================="
done
Discos de dados:
RGNAME="RGNAME"
VMNAME="VMNAME"
az vm encryption show --name ${VMNAME} --resource-group ${RGNAME} --query "substatus"
for disk in `az vm show -g ${RGNAME} -n ${VMNAME} --query storageProfile.dataDisks[].name -o tsv`; do \
echo "============================================================================================================================================================="; \
echo -ne "Disk Name: "; az disk show -g ${RGNAME} -n ${disk} --query name -o tsv; \
echo -ne "Encryption Enabled: "; az disk show -g ${RGNAME} -n ${disk} --query encryptionSettingsCollection.enabled -o tsv; \
echo -ne "Version: "; az disk show -g ${RGNAME} -n ${TARGETDISKNAME} --query encryptionSettingsCollection.encryptionSettingsVersion -o tsv; \
echo -ne "Disk Encryption Key: "; az disk show -g ${RGNAME} -n ${disk} --query encryptionSettingsCollection.encryptionSettings[].diskEncryptionKey.secretUrl -o tsv; \
echo -ne "key Encryption Key: "; az disk show -g ${RGNAME} -n ${disk} --query encryptionSettingsCollection.encryptionSettings[].keyEncryptionKey.keyUrl -o tsv; \
echo "============================================================================================================================================================="
done
Passe duplo
az vm encryption show --name ${VMNAME} --resource-group ${RGNAME} -o table
Você também pode verificar as configurações de criptografia no perfil de armazenamento do modelo de VM do disco do sistema operacional:
disk=`az vm show -g ${RGNAME} -n ${VMNAME} --query storageProfile.osDisk.name -o tsv`
for disk in $disk; do \
echo "============================================================================================================================================================="; \
echo -ne "Disk Name: "; az disk show -g ${RGNAME} -n ${disk} --query name -o tsv; \
echo -ne "Encryption Enabled: "; az disk show -g ${RGNAME} -n ${disk} --query encryptionSettingsCollection.enabled -o tsv; \
echo -ne "Version: "; az disk show -g ${RGNAME} -n ${TARGETDISKNAME} --query encryptionSettingsCollection.encryptionSettingsVersion -o tsv; \
echo -ne "Disk Encryption Key: "; az disk show -g ${RGNAME} -n ${disk} --query encryptionSettingsCollection.encryptionSettings[].diskEncryptionKey.secretUrl -o tsv; \
echo -ne "key Encryption Key: "; az disk show -g ${RGNAME} -n ${disk} --query encryptionSettingsCollection.encryptionSettings[].keyEncryptionKey.keyUrl -o tsv; \
echo "============================================================================================================================================================="
done
Discos não anexados
Verifique as configurações de criptografia para discos que não estão conectados a uma VM.
Discos gerenciados
RGNAME="RGNAME"
TARGETDISKNAME="DISKNAME"
echo "============================================================================================================================================================="
echo -ne "Disk Name: "; az disk show -g ${RGNAME} -n ${TARGETDISKNAME} --query name -o tsv; \
echo -ne "Encryption Enabled: "; az disk show -g ${RGNAME} -n ${TARGETDISKNAME} --query encryptionSettingsCollection.enabled -o tsv; \
echo -ne "Version: "; az disk show -g ${RGNAME} -n ${TARGETDISKNAME} --query encryptionSettingsCollection.encryptionSettingsVersion -o tsv; \
echo -ne "Disk Encryption Key: "; az disk show -g ${RGNAME} -n ${TARGETDISKNAME} --query encryptionSettingsCollection.encryptionSettings[].diskEncryptionKey.secretUrl -o tsv; \
echo -ne "key Encryption Key: "; az disk show -g ${RGNAME} -n ${TARGETDISKNAME} --query encryptionSettingsCollection.encryptionSettings[].keyEncryptionKey.keyUrl -o tsv; \
echo "============================================================================================================================================================="
Discos não administrados
Discos não gerenciados são arquivos VHD armazenados como blobs de página em contas de armazenamento do Azure.
Para obter os detalhes de um disco específico, você precisa fornecer:
- A ID da conta de armazenamento que contém o disco.
- Uma cadeia de conexão para essa conta de armazenamento específica.
- O nome do contêiner que armazena o disco.
- O nome do disco.
Este comando lista todos os IDs de todas as suas contas de armazenamento:
az storage account list --query [].[id] -o tsv
Os IDs da conta de armazenamento estão listados da seguinte forma:
/subscriptions/<id de subscrição>/resourceGroups/<nome do grupo de recursos>/providers/Microsoft.Storage/storageAccounts/<nome da conta de armazenamento>
Selecione o ID apropriado e armazene-o em uma variável:
id="/subscriptions/<subscription id>/resourceGroups/<resource group name>/providers/Microsoft.Storage/storageAccounts/<storage account name>"
Este comando obtém a cadeia de conexão para uma conta de armazenamento específica e a armazena em uma variável:
ConnectionString=$(az storage account show-connection-string --ids $id --query connectionString -o tsv)
O comando a seguir lista todos os contêineres em uma conta de armazenamento:
az storage container list --connection-string $ConnectionString --query [].[name] -o tsv
O contêiner usado para discos é normalmente chamado de "vhds".
Armazene o nome do contêiner em uma variável:
ContainerName="name of the container"
Use este comando para listar todos os blobs em um contêiner específico:
az storage blob list -c ${ContainerName} --connection-string $ConnectionString --query [].[name] -o tsv
Escolha o disco que você deseja consultar e armazene seu nome em uma variável:
DiskName="diskname.vhd"
Consulte as configurações de criptografia de disco:
az storage blob show -c ${ContainerName} --connection-string ${ConnectionString} -n ${DiskName} --query metadata.DiskEncryptionSettings
Sistema operativo
Valide se as partições do disco de dados estão encriptadas (e o disco do SO não).
Quando uma partição ou disco é encriptado, é apresentado como um tipo de encriptação . Quando não está encriptado, é apresentado como um tipo de peça/disco .
sudo lsblk
Você pode obter mais detalhes usando a seguinte variante lsblk .
Você verá uma camada do tipo crypt montada pela extensão. O exemplo a seguir mostra volumes lógicos e discos normais com crypto_LUKS FSTYPE.
sudo lsblk -o NAME,TYPE,FSTYPE,LABEL,SIZE,RO,MOUNTPOINT
Como etapa extra, você pode validar se o disco de dados tem alguma chave carregada:
sudo cryptsetup luksDump /dev/VGNAME/LVNAME
sudo cryptsetup luksDump /dev/sdd1
E você pode verificar quais dispositivos dm estão listados como crypt:
sudo dmsetup ls --target crypt