Versleuteling configureren met door de klant beheerde sleutels die zijn opgeslagen in Azure Key Vault Managed HSM

Azure Storage versleutelt alle gegevens in een opslagaccount-at-rest. Standaard worden gegevens versleuteld met door Microsoft beheerde sleutels. Voor meer controle over versleutelingssleutels kunt u uw eigen sleutels beheren. Door de klant beheerde sleutels moeten worden opgeslagen in Azure Key Vault of Key Vault Managed Hardware Security Model (HSM). Een door Azure Key Vault beheerde HSM is een met FIPS 140-2 niveau 3 gevalideerde HSM.

In dit artikel wordt beschreven hoe u versleuteling configureert met door de klant beheerde sleutels die zijn opgeslagen in een beheerde HSM met behulp van Azure CLI. Zie Versleuteling configureren met door de klant beheerde sleutels die zijn opgeslagen in Azure Key Vault voor meer informatie over het configureren van versleuteling met door de klant beheerde sleutels die zijn opgeslagen in een sleutelkluis.

Notitie

Azure Key Vault en Azure Key Vault Managed HSM ondersteunen dezelfde API's en beheerinterfaces voor configuratie.

Een identiteit toewijzen aan het opslagaccount

Wijs eerst een door het systeem toegewezen beheerde identiteit toe aan het opslagaccount. U gebruikt deze beheerde identiteit om het opslagaccount machtigingen te verlenen voor toegang tot de beheerde HSM. Zie Wat zijn beheerde identiteiten voor Azure-resources? voor meer informatie over door het systeem toegewezen beheerde identiteiten.

Als u een beheerde identiteit wilt toewijzen met behulp van Azure CLI, roept u az storage account update aan. Vergeet niet om de tijdelijke aanduidingen tussen haakjes te vervangen door uw eigen waarden:

az storage account update \
    --name <storage-account> \
    --resource-group <resource_group> \
    --assign-identity

Een rol toewijzen aan het opslagaccount voor toegang tot de beheerde HSM

Wijs vervolgens de rol Gebruiker voor Crypto-serviceversleuteling van beheerde HSM toe aan de beheerde identiteit van het opslagaccount, zodat het opslagaccount machtigingen heeft voor de beheerde HSM. Microsoft raadt u aan de roltoewijzing te instellen op het niveau van de afzonderlijke sleutel om de zo min mogelijk bevoegdheden toe te kennen aan de beheerde identiteit.

Als u de roltoewijzing voor het opslagaccount wilt maken, roept u az key vault role assignment create aan. Vergeet niet om de tijdelijke aanduidingen tussen haakjes te vervangen door uw eigen waarden.

storage_account_principal = $(az storage account show \
    --name <storage-account> \
    --resource-group <resource-group> \
    --query identity.principalId \
    --output tsv)

az keyvault role assignment create \
    --hsm-name <hsm-name> \
    --role "Managed HSM Crypto Service Encryption User" \
    --assignee $storage_account_principal \
    --scope /keys/<key-name>

Versleuteling configureren met een sleutel in de beheerde HSM

Configureer ten slotte Azure Storage-versleuteling met door de klant beheerde sleutels om een sleutel te gebruiken die is opgeslagen in de beheerde HSM. Ondersteunde sleuteltypen zijn RSA-HSM-sleutels met de grootte 2048, 3072 en 4096. Zie Een HSM-sleutel maken voor meer informatie over het maken van een sleutel in een beheerde HSM.

Installeer Azure CLI 2.12.0 of hoger om versleuteling te configureren voor het gebruik van een door de klant beheerde sleutel in een beheerde HSM. Zie De Azure CLI installeren voor meer informatie.

Als u de sleutelversie voor een door de klant beheerde sleutel automatisch wilt bijwerken, laat u de sleutelversie weg wanneer u versleuteling configureert met door de klant beheerde sleutels voor het opslagaccount. Zie De sleutelversie bijwerken voor meer informatie over het configureren van versleuteling voor automatische sleutelrotatie.

Roep vervolgens az storage account update aan om de versleutelingsinstellingen van het opslagaccount bij te werken, zoals wordt weergegeven in het volgende voorbeeld. Neem de --encryption-key-source parameter op en stel deze in op Microsoft.Keyvault om door de klant beheerde sleutels in te schakelen voor het account. Vergeet niet om de tijdelijke aanduidingen tussen haakjes te vervangen door uw eigen waarden.

hsmurl = $(az keyvault show \
    --hsm-name <hsm-name> \
    --query properties.hsmUri \
    --output tsv)

az storage account update \
    --name <storage-account> \
    --resource-group <resource_group> \
    --encryption-key-name <key> \
    --encryption-key-source Microsoft.Keyvault \
    --encryption-key-vault $hsmurl

Als u de versie voor een door de klant beheerde sleutel handmatig wilt bijwerken, neemt u de sleutelversie op wanneer u versleuteling voor het opslagaccount configureert:

az storage account update
    --name <storage-account> \
    --resource-group <resource_group> \
    --encryption-key-name <key> \
    --encryption-key-version $key_version \
    --encryption-key-source Microsoft.Keyvault \
    --encryption-key-vault $hsmurl

Wanneer u de sleutelversie handmatig bijwerkt, moet u de versleutelingsinstellingen van het opslagaccount bijwerken om de nieuwe versie te kunnen gebruiken. Voer eerst een query uit voor de sleutelkluis-URI door az keyvault show aan te roepen en voor de sleutelversie door az keyvault key list-versions aan te roepen. Roep vervolgens az storage account update aan om de versleutelingsinstellingen van het opslagaccount bij te werken om de nieuwe versie van de sleutel te gebruiken, zoals in het vorige voorbeeld.

Volgende stappen