Azure PowerShell モジュールを使用して、マネージド ディスクの保存時の二重暗号化を有効にします。

適用対象: ✔️ Windows VM

Azure Disk Storage は、マネージド ディスクに対する保存時の二重暗号化をサポートしています。 保存時の二重暗号化とその他のマネージド ディスクの暗号化の概念については、ディスクの暗号化に関する次の記事で「保存時の二重暗号化」セクションを参照してください。

制限

現在、保存時の二重暗号化は、Ultra Disks または Premium SSD v2 ディスクではサポートされていません。

前提条件

最新の Azure PowerShell バージョンをインストールし、Connect-AzAccount を使用して Azure アカウントにサインインします。

作業の開始

  1. Azure Key Vault と暗号化キーのインスタンスを作成します。

    Key Vault インスタンスを作成する場合、論理的な削除と消去保護を有効にする必要があります。 論理的な削除では、Key Vault は削除されたキーを特定の保持期間 (既定では90日) にわたって保持します。 消去保護では、保持期間が経過するまで、削除されたキーを完全に削除できないようになります。 これらの設定は、誤って削除したためにデータが失われるのを防ぎます。 これらの設定は、Key Vault を使用してマネージド ディスクを暗号化する場合は必須です。

    $ResourceGroupName="yourResourceGroupName"
    $LocationName="westus2"
    $keyVaultName="yourKeyVaultName"
    $keyName="yourKeyName"
    $keyDestination="Software"
    $diskEncryptionSetName="yourDiskEncryptionSetName"
    
    $keyVault = New-AzKeyVault -Name $keyVaultName -ResourceGroupName $ResourceGroupName -Location $LocationName -EnableSoftDelete -EnablePurgeProtection
    
    $key = Add-AzKeyVaultKey -VaultName $keyVaultName -Name $keyName -Destination $keyDestination  
    
  2. 作成したキーの URL を取得します。これは、後続のコマンドで必要です。 Get-AzKeyVaultKey からの ID 出力はキー URL です。

    Get-AzKeyVaultKey -VaultName $keyVaultName -KeyName $keyName
    
  3. 作成した Key Vault インスタンスのリソース ID を取得します。これは、後続のコマンドで必要です。

    Get-AzKeyVault -VaultName $keyVaultName
    
  4. EncryptionAtRestWithPlatformAndCustomerKeys として encryptionType を設定して、DiskEncryptionSet を作成します。 yourKeyURLyourKeyVaultURL を以前に取得した URL に置き換えます。

    $config = New-AzDiskEncryptionSetConfig -Location $locationName -KeyUrl "yourKeyURL" -SourceVaultId 'yourKeyVaultURL' -IdentityType 'SystemAssigned'
    
    $config | New-AzDiskEncryptionSet -ResourceGroupName $ResourceGroupName -Name $diskEncryptionSetName -EncryptionType EncryptionAtRestWithPlatformAndCustomerKeys
    
  5. DiskEncryptionSet リソースに Key Vault へのアクセス権を付与します。

    Note

    Azure が Microsoft Entra ID で DiskEncryptionSet の ID を作成するまで、数分かかる場合があります。 次のコマンドを実行しているときに "Active Directory オブジェクトが見つかりません" のようなエラーが表示された場合は、数分待ってから再試行してください。

    $des=Get-AzDiskEncryptionSet -name $diskEncryptionSetName -ResourceGroupName $ResourceGroupName
    Set-AzKeyVaultAccessPolicy -VaultName $keyVaultName -ObjectId $des.Identity.PrincipalId -PermissionsToKeys wrapkey,unwrapkey,get
    

次のステップ

これらのリソースを作成し、構成したので、これらを使用してマネージド ディスクをセキュリティで保護することができます。 次のリンクには、個々のシナリオごとにスクリプトの例が含まれています。これは、マネージド ディスクをセキュリティで保護するために使用できます。