{Azure Key Vault}Azure CLI を使用して、マネージド ディスクでカスタマー マネージド キーを使用し、サーバー側の暗号化を有効にする

 

https://learn.microsoft.com/ja-jp/azure/virtual-machines/linux/disks-enable-customer-managed-keys-cli

https://learn.microsoft.com/ja-jp/azure/virtual-machines/linux/disks-enable-host-based-encryption-cli

 

-- 1. 前作業

az login --use-device-code
az account show

az version

az configure --list-defaults
az configure --defaults location=japaneast
az configure --list-defaults

az group create \
--name rg9999999 \
--location centralus


az group list

az upgrade


-- 2. キーコンテナの作成


az keyvault create \
--name vault123 \
--resource-group rg9999999 \
--retention-days 7 \
--sku standard \
--enable-purge-protection true

az keyvault list \
--resource-group rg9999999


az keyvault show \
--name vault123 \
--resource-group rg9999999


-- 3. キーの作成

az keyvault key create \
--vault-name vault123 \
--name key01 \
--protection software

az keyvault key list \
--vault-name vault123


az keyvault key show \
--vault-name vault123 \
--name key01

 


-- 4. ディスク暗号化セットの作成


az keyvault key show \
--vault-name vault123 \
--name key01 \
--query "key.kid" \
--output tsv

az keyvault show \
--name vault123 \
--resource-group rg9999999 \
--query "id" \
--output tsv


az disk-encryption-set create \
--key-url https://vault123.vault.azure.net/keys/key01/11111111111111111111111111111111 \
--resource-group rg9999999 \
--name des01 \
--source-vault /subscriptions/22222222-2222-2222-2222-222222222222/resourceGroups/rg9999999/providers/Microsoft.KeyVault/vaults/vault123 \
--auto-rotation false

az disk-encryption-set list \
--resource-group rg9999999


az disk-encryption-set show \
--resource-group rg9999999 \
--name des01 


-- 5. ディスク暗号化セットに Key Vault へのアクセス権を付与


az disk-encryption-set show \
--resource-group rg9999999 \
--name des01 \
--query "identity.principalId" \
--output tsv


az keyvault set-policy \
--name vault123 \
--resource-group rg9999999 \
--object-id 33333333-3333-3333-3333-333333333333 \
--key-permissions all

 

-- 6. 暗号化vm作成

-- 6.1 カスタマー マネージド キーで OS とデータ ディスクを暗号化する


az disk-encryption-set show \
--resource-group rg9999999 \
--name des01 \
--query "id" \
--output tsv


az vm create \
--resource-group rg9999999 \
--name vm01 \
--image UbuntuLTS \
--size Standard_B1ls \
--admin-username azureuser \
--generate-ssh-keys \
--storage-sku Standard_LRS \
--os-disk-encryption-set /subscriptions/22222222-2222-2222-2222-222222222222/resourceGroups/rg9999999/providers/Microsoft.Compute/diskEncryptionSets/des01 \
--os-disk-delete-option Delete \
--data-disk-sizes-gb 8  \
--data-disk-encryption-sets /subscriptions/22222222-2222-2222-2222-222222222222/resourceGroups/rg9999999/providers/Microsoft.Compute/diskEncryptionSets/des01 \
--data-disk-delete-option Delete

 

-- 6.2 カスタマー マネージド キーを使用して、ホストでの暗号化が有効な VM を作成します

ホストの暗号化 = ディスクの暗号化 + (一時ディスク、キャッシュの暗号化)

az feature register --namespace Microsoft.Compute --name EncryptionAtHost
az feature show --namespace Microsoft.Compute --name EncryptionAtHost

az vm create \
--resource-group rg9999999 \
--name vm02 \
--image UbuntuLTS \
--size Standard_B1ls \
--admin-username azureuser \
--generate-ssh-keys \
--storage-sku Standard_LRS \
--os-disk-encryption-set /subscriptions/22222222-2222-2222-2222-222222222222/resourceGroups/rg9999999/providers/Microsoft.Compute/diskEncryptionSets/des01 \
--os-disk-delete-option Delete \
--data-disk-sizes-gb 8  \
--data-disk-encryption-sets /subscriptions/22222222-2222-2222-2222-222222222222/resourceGroups/rg9999999/providers/Microsoft.Compute/diskEncryptionSets/des01 \
--data-disk-delete-option Delete \
--encryption-at-host 

 


-- 7. クリーンアップ

az vm delete \
--resource-group rg9999999 \
--name vm01 \
--yes


az vm delete \
--resource-group rg9999999 \
--name vm02 \
--yes

 


az disk-encryption-set delete \
--resource-group rg9999999 \
--name des01 


az keyvault key delete \
--vault-name vault123 \
--name key01

 

az keyvault delete \
--name vault123 \
--resource-group rg9999999


az group list

az group delete \
--name rg9999999 \
--yes