Ao habilitar Azure Disk Encryption para sua máquina virtual (VM), você pode encontrar o seguinte erro:
JSON'code': 'VMExtensionProvisioningError',
'message': 'VM has reported a failure when processing extension 'AzureDiskEncryption' (publisher 'Microsoft.Azure.Security' and type 'AzureDiskEncryption'). Error message: '[2.5.0.3] Failed to enable Azure Disk Encryption on the VM with the following exception details:\n Microsoft.Cis.Security.BitLocker.BitlockerIaasVMExtension.BitlockerFailedToSendEncryptionSettingsException: The fault reason was: '0xc142506f RUNTIME_E_KEYVAULT_SECRET_WRAP_WITH_KEK_FAILED Key vault secret wrap with key encryption key failed.'.\r\n at Microsoft.Cis.Security.BitLocker.BitlockerIaasVMExtension.WireProtocol.WireProtocolMessage.SendEncryptionSettingsToHost() in C:\\__w\\1\\s\\src\\BitLocker\\BitlockerIaasVMExtension\\WireProtocol\\WireProtocolMessage.cs:line 210\r\n at Microsoft.Cis.Security.BitLocker.BitlockerIaasVMExtension.BitlockerExtension.SendEncryptionSettingsToHostV3(VmEncryptionSettings vmSettings) in C:\\__w\\1\\s\\src\\BitLocker\\BitlockerIaasVMExtension\\BitlockerExtension.cs:line 1092'. More information on troubleshooting is available at https://aka.ms/VMExtensionADEWindowsTroubleshoot.'
Análise do erro
A mensagem de erro indica que o problema decorre da exceção RUNTIME_E_KEYVAULT_SECRET_WRAP_WITH_KEK_FAILED. Isso significa que Key Vault falhou durante a operação de encapsular a chave de criptografia usando a chave de criptografia de chave (KEK).
É importante observar que o sistema operacional da VM em uso é Windows 11 Pro, que tem problemas de compatibilidade conhecidos com o Azure Disk Encryption devido à falta de suporte para chaves RSA de 2048 bits.
Causas comuns
- Comprimento da chave RSA: O Windows 11 e o Windows Server 2022 não oferecem suporte a chaves RSA de 2048 bits para o Azure Disk Encryption.
- Dependências ausentes: Algumas configurações do Windows Server exigem componentes adicionais, como
bdehdcfgou.NET Framework.
Documentação oficial
A Microsoft reconheceu essa limitação no artigo Habilitar a Criptografia de Disco do Azure para VMs do Windows e oferece uma seção de perguntas frequentes que recomenda o uso de comprimentos de chave RSA maiores para determinadas versões do sistema operacional.
Soluções recomendadas
Para resolver o erro e habilitar com êxito o Azure Disk Encryption, siga uma das duas abordagens detalhadas abaixo:
Solução 1: usar a chave de criptografia do BitLocker (BEK)
O Azure Disk Encryption oferece suporte à criptografia usando a chave de criptografia do BitLocker (BEK). Usar BEK em vez de uma chave de criptografia de chave (KEK) pode contornar o problema de encapsulamento no Key Vault.
- Modificar as configurações de criptografia:
- Abra o Portal do Azure.
- Acesse sua VM e selecione Disks.
- Configure a criptografia de disco usando BEK em vez de KEK.
- Testar a criptografia:
- Reinicie a VM após habilitar a criptografia de disco.
- Verifique se a criptografia foi aplicada com êxito e sem erros.
Solução 2: aumentar o comprimento da chave RSA
O Windows 11 e o Windows Server 2022 exigem um comprimento de chave RSA superior a 2048 bits. Atualize suas chaves do Key Vault para RSA 3072 ou RSA 4096 para resolver esse problema.
- Criar uma nova chave RSA:
- Acesse Azure Key Vault no Portal do Azure.
- Selecione Keys e clique em Generate/Import.
- Escolha RSA-HSM com um tamanho de chave de 3072 ou 4096 bits.
- Atualizar as configurações de criptografia de disco:
- Use a nova chave RSA na sua configuração de criptografia.
- Reinicie a VM para aplicar as alterações.
- Verificar a criptografia:
- Verifique o estado de provisionamento para garantir que a extensão de criptografia de disco seja bem-sucedida.
Considerações importantes
Para outras versões do Windows Server, verifique se as seguintes dependências estão instaladas:
| Sistema operacional | Requisito |
|---|---|
| Windows Server 2012 R2 Core | Instale o componente bdehdcfg . |
| Windows Server 2016 Core | Instale o componente bdehdcfg . |
| Windows Server 2008 R2 | Instale .NET Framework 4.5 por meio do Windows Update (KB2901983). |
Consulte a documentação sobre pré-requisitos do Azure Disk Encryption.
Exemplo de trecho de código
Abaixo está um exemplo de CLI do Azure para atualizar o comprimento da chave RSA do Key Vault:
BASH# Create a new RSA key with 4096 bits in Azure Key Vault
az keyvault key create \
--vault-name <YourKeyVaultName> \
--name <YourKeyName> \
--kty RSA \
--size 4096
Lembre-se de substituir <YourKeyVaultName> e <YourKeyName> pelos nomes reais do seu Key Vault e da sua chave.
Referências
Para mais solução de problemas e orientações, explore os seguintes recursos: