3
votes

La machine virtuelle a signalé un échec lors du traitement de l'extension AzureDiskEncryption

J'exécute le script suivant:

$keyVault = Get-AzKeyVault -VaultName $keyVaultName -ResourceGroupName $rgName;
$diskEncryptionKeyVaultUrl = $keyVault.VaultUri;
$keyVaultResourceId = $keyVault.ResourceId;
$keyEncryptionKeyUrl = (Get-AzureKeyVaultKey -VaultName $keyVaultName -Name myKey).Key.kid;

Set-AzVMDiskEncryptionExtension -ResourceGroupName $rgName `
-VMName "myVM" `
-DiskEncryptionKeyVaultUrl $diskEncryptionKeyVaultUrl `
-DiskEncryptionKeyVaultId $keyVaultResourceId `
-KeyEncryptionKeyUrl $keyEncryptionKeyUrl `
-KeyEncryptionKeyVaultId $keyVaultResourceId

qui renvoie le suivant environ 1 minute de traitement:

Set-AzureRmVmDiskEncryptionExtension: échec de l'opération de longue durée avec le statut «Échec». Informations supplémentaires: «La VM a signalé un échec lorsque traitement de l'extension 'AzureDiskEncryption'. Message d'erreur: "Échec de envoyer DiskEncryptionData, vérifier les entrées KeyVault, ResourceIds et réessayer opération de chiffrement ". ' ErrorCode: VMExtensionProvisioningError ErrorMessage: la VM a signalé un échec lors du traitement de l'extension «AzureDiskEncryption». Message d'erreur: "Échec de l'envoi DiskEncryptionData, vérifier les entrées KeyVault, ResourceIds et réessayer opération de chiffrement ". ErrorTarget: StartTime: 3/2/19 2:10:59 PM Heure de fin: 02/03/19 14:10:59

J'ai vérifié que les valeurs sont toutes correctement passées à la commande set et qu'aucune valeur nulle n'est passée.


6 commentaires

le kv est-il activé pour le chiffrement de disque? avez-vous des autorisations sur le kv?


sous la clé réelle, les cases à cocher crypter / décrypter, signer, vérifier, envelopper et déballer la clé sont signées, mais je ne trouve pas de propriété indiquant activer le cryptage du disque? est-ce ailleurs? J'ai créé le coffre de clés azure, la clé, la machine virtuelle et le disque dur et j'ai exécuté la commande powershell sous le même compte. existe-t-il un moyen de m'assurer que j'ai les autorisations pour accéder au coffre de clés? je peux y accéder très bien via l'interface graphique


sous autorisations, il existe des autorisations avancées, vous pouvez activer KV pour le cryptage du disque là-bas


J'ai pu trouver la politique d'accès sous le coffre de clés et j'ai remarqué que sous les autorisations de clé, les opérations cryptographiques n'étaient pas autorisées. cependant, même après avoir coché tous (chiffrer, déchiffrer, signer, vérifier, envelopper la clé, ouvrir la clé), le message d'erreur émis est le même. y a-t-il un certain laps de temps pendant lequel les changements prennent effet ou à l'instant même?


vous avez également besoin de politiques d'accès avancées, cela ne fonctionnera pas sans elles. user-images.githubusercontent.com/2538465/ …


Je vous remercie. ça a marché. pourriez-vous l'ajouter comme réponse et je l'accepterai.


3 Réponses :


10
votes

dans ce cas, OP nécessaire pour activer Key Vault pour le chiffrement de disque, dans le cadre de politiques d'accès avancées.

 entrez la description de l'image ici


0 commentaires

4
votes

J'ai eu ce problème, mais je me suis cogné la tête pendant des jours, les étapes ci-dessous ont résolu mon problème.

  1. Vérifiez les valeurs de $ KeyVault, $ DiskEncryptionKeyVaultUrl et $ KeyVaultResourceId variables et assurez-vous qu'elles ne sont ni nulles ni vides.
  2. Si l'étape 1 est terminée, vérifiez soigneusement le processus de création de Key Vault, et vérifier s'il est dans la même région que la VM et qu'il a été activé pour le chiffrement de disque: Set-AzureRmKeyVaultAccessPolicy -VaultName $ keyVaultName - EnabledForDiskEncryption

1 commentaires

L'activation de cette politique n'a pas résolu le problème pour moi au début. J'ai exécuté le script dans le cloud shell Azure et j'ai découvert que la session semble mettre en cache les paramètres de keyvault. Après avoir fermé la session et en avoir ouvert une nouvelle, cela a fonctionné tout de suite.



4
votes

Si vous rencontrez toujours le problème, vous pouvez essayer ceci:

  1. Accédez au disque d'une machine virtuelle qui doit être chiffrée.
  2. Identité du clic
  3. Réglez l'état sur "ON" pour un système ou un utilisateur attribué.

 entrez la description de l'image ici

Ensuite, exécutez les commandes ci-dessous. Il est disponible avec des explications sur https: // docs. microsoft.com/en-us/azure/virtual-machines/windows/encrypt-disks

$ keyVault = Get-AzKeyVault -VaultName $ keyVaultName -ResourceGroupName $ rgName;

$ diskEncryptionKeyVaultUrl = $ keyVault.VaultUri;

$ keyVaultResourceId = $ keyVault.ResourceId;

$ keyEncryptionKeyUrl = (Get-AzKeyVaultKey -VaultName $ keyVaultName -Name myKey) .Key. kid;

Set-AzVMDiskEncryptionExtension -ResourceGroupName $ rgName `

-VMName "myVM" 
-DiskEncryptionKeyVaultUrl $diskEncryptionKeyVaultUrl `
-DiskEncryptionKeyVaultId $keyVaultResourceId `
-KeyEncryptionKeyUrl $keyEncryptionKeyUrl `
-KeyEncryptionKeyVaultId $keyVaultResourceId$


0 commentaires