Met een versleutelingsbereik kunt u versleuteling op het niveau van een afzonderlijke blob of container beheren. U kunt versleutelingsbereiken gebruiken om veilige grenzen te maken tussen gegevens die zich in hetzelfde opslagaccount bevinden, maar tot verschillende klanten behoren. Zie Versleutelingsbereiken voor Blob Storage voor meer informatie over versleutelingsbereiken.
In dit artikel wordt beschreven hoe u een versleutelingsbereik maakt. U ziet ook hoe u een versleutelingsbereik opgeeft wanneer u een blob of container maakt.
U kunt een versleutelingsbereik maken dat is beveiligd met een door Microsoft beheerde sleutel of met een door de klant beheerde sleutel die is opgeslagen in een Azure Key Vault of in een door de klant beheerde Azure Key Vault-HSM (Managed Hardware Security Model). Als u een versleutelingsbereik wilt maken met een door de klant beheerde sleutel, moet u eerst een sleutelkluis of beheerde HSM maken en de sleutel toevoegen die u voor het bereik wilt gebruiken. Voor de sleutelkluis of beheerde HSM moet beveiliging tegen opschonen zijn ingeschakeld.
Het opslagaccount en de sleutelkluis kunnen zich in dezelfde tenant of in verschillende tenants bevinden. In beide gevallen kunnen het opslagaccount en de sleutelkluis zich in verschillende regio's bevinden.
Een versleutelingsbereik wordt automatisch ingeschakeld wanneer u het maakt. Nadat u het versleutelingsbereik hebt gemaakt, kunt u dit opgeven wanneer u een blob maakt. U kunt ook een standaardversleutelingsbereik opgeven wanneer u een container maakt, die automatisch van toepassing is op alle blobs in de container.
Wanneer u een versleutelingsbereik configureert, wordt u minimaal één maand (30 dagen) gefactureerd. Na de eerste maand worden de kosten voor een versleutelingsbereik naar rato per uur berekend. Zie Facturering voor versleutelingsbereiken voor meer informatie.
Voer de volgende stappen uit om een versleutelingsbereik te maken in Azure Portal:
Ga in Azure Portal naar uw opslagaccount.
Selecteer Versleuteling onder Beveiliging en netwerken.
Selecteer het tabblad Versleutelingsbereiken .
Klik op de knop Toevoegen om een nieuw versleutelingsbereik toe te voegen.
Voer in het deelvenster Versleutelingsbereik maken een naam in voor het nieuwe bereik.
Selecteer het gewenste type ondersteuning voor versleutelingssleutels, ofwel door Microsoft beheerde sleutels of door de klant beheerde sleutels.
- Als u door Microsoft beheerde sleutels hebt geselecteerd, klikt u op Maken om het versleutelingsbereik te maken.
- Als u door de klant beheerde sleutels hebt geselecteerd, selecteert u een abonnement en geeft u een sleutelkluis en een sleutel op die u voor dit versleutelingsbereik wilt gebruiken. Als de gewenste sleutelkluis zich in een andere regio bevindt, selecteert u De sleutel-URI invoeren en geeft u de sleutel-URI op.
Als infrastructuurversleuteling is ingeschakeld voor het opslagaccount, wordt deze automatisch ingeschakeld voor het nieuwe versleutelingsbereik. Anders kunt u kiezen of u infrastructuurversleuteling wilt inschakelen voor het versleutelingsbereik.
Als u een versleutelingsbereik wilt maken met PowerShell, installeert u de Az.Storage PowerShell-module, versie 3.4.0 of hoger.
Een versleutelingsbereik maken dat wordt beveiligd door door Microsoft beheerde sleutels
Als u een versleutelingsbereik wilt maken dat wordt beveiligd door door Microsoft beheerde sleutels, roept u de opdracht New-AzStorageEncryptionScope aan met de -StorageEncryption
parameter.
Als infrastructuurversleuteling is ingeschakeld voor het opslagaccount, wordt deze automatisch ingeschakeld voor het nieuwe versleutelingsbereik. Anders kunt u kiezen of u infrastructuurversleuteling wilt inschakelen voor het versleutelingsbereik. Als u het nieuwe bereik wilt maken waarvoor infrastructuurversleuteling is ingeschakeld, neemt u de -RequireInfrastructureEncryption
parameter op.
Vergeet niet om de tijdelijke aanduidingen in het voorbeeld te vervangen door uw eigen waarden:
$rgName = "<resource-group>"
$accountName = "<storage-account>"
$scopeName = "<encryption-scope>"
New-AzStorageEncryptionScope -ResourceGroupName $rgName `
-StorageAccountName $accountName `
-EncryptionScopeName $scopeName1 `
-StorageEncryption
Een versleutelingsbereik maken dat wordt beveiligd door door de klant beheerde sleutels in dezelfde tenant
Als u een versleutelingsbereik wilt maken dat wordt beveiligd door door de klant beheerde sleutels die zijn opgeslagen in een sleutelkluis of beheerde HSM die zich in dezelfde tenant als het opslagaccount bevindt, configureert u eerst door de klant beheerde sleutels voor het opslagaccount. U moet een beheerde identiteit toewijzen aan het opslagaccount met machtigingen voor toegang tot de sleutelkluis. De beheerde identiteit kan een door de gebruiker toegewezen beheerde identiteit of een door het systeem toegewezen beheerde identiteit zijn. Zie Door de klant beheerde sleutels configureren in dezelfde tenant voor een bestaand opslagaccount voor meer informatie over het configureren van door de klant beheerde sleutels.
Als u de beheerde identiteit machtigingen wilt verlenen voor toegang tot de sleutelkluis, wijst u de rol Key Vault Crypto Service Encryption User toe aan de beheerde identiteit.
Als u door de klant beheerde sleutels wilt configureren voor gebruik met een versleutelingsbereik, moet beveiliging tegen opschonen zijn ingeschakeld in de sleutelkluis of beheerde HSM.
In het volgende voorbeeld ziet u hoe u een versleutelingsbereik configureert met een door het systeem toegewezen beheerde identiteit. Vergeet niet om de tijdelijke aanduidingen in het voorbeeld te vervangen door uw eigen waarden:
$rgName = "<resource-group>"
$accountName = "<storage-account>"
$keyVaultName = "<key-vault>"
$scopeName = "<encryption-scope>"
# Assign a system-assigned managed identity to the storage account.
$storageAccount = Set-AzStorageAccount -ResourceGroupName $rgName `
-Name $accountName `
-AssignIdentity
# Assign the necessary permissions to the managed identity
# so that it can access the key vault.
$principalId = $storageAccount.Identity.PrincipalId
$keyVault = Get-AzKeyVault $keyVaultName
New-AzRoleAssignment -ObjectId $storageAccount.Identity.PrincipalId `
-RoleDefinitionName "Key Vault Crypto Service Encryption User" `
-Scope $keyVault.ResourceId
Roep vervolgens de opdracht New-AzStorageEncryptionScope aan met de -KeyvaultEncryption
parameter en geef de sleutel-URI op. Het opnemen van de sleutelversie op de sleutel-URI is optioneel. Als u de sleutelversie weglaat, gebruikt het versleutelingsbereik automatisch de meest recente sleutelversie. Als u de sleutelversie opneemt, moet u de sleutelversie handmatig bijwerken om een andere versie te gebruiken.
De indeling van de sleutel-URI is vergelijkbaar met de volgende voorbeelden en kan worden samengesteld op basis van de vaultUri-eigenschap van de sleutelkluis en de sleutelnaam:
# Without the key version
https://<key-vault>.vault.azure.net/keys/<key>
# With the key version
https://<key-vault>.vault.azure.net/keys/<key>/<version>
Als infrastructuurversleuteling is ingeschakeld voor het opslagaccount, wordt deze automatisch ingeschakeld voor het nieuwe versleutelingsbereik. Anders kunt u kiezen of u infrastructuurversleuteling wilt inschakelen voor het versleutelingsbereik. Als u het nieuwe bereik wilt maken waarvoor infrastructuurversleuteling is ingeschakeld, neemt u de -RequireInfrastructureEncryption
parameter op.
Vergeet niet om de tijdelijke aanduidingen in het voorbeeld te vervangen door uw eigen waarden:
$keyUri = $keyVault.VaultUri + "keys/" + $keyName
New-AzStorageEncryptionScope -ResourceGroupName $rgName `
-StorageAccountName $accountName `
-EncryptionScopeName $scopeName `
-KeyUri $keyUri `
-KeyvaultEncryption
Een versleutelingsbereik maken dat wordt beveiligd door door de klant beheerde sleutels in een andere tenant
Als u een versleutelingsbereik wilt maken dat wordt beveiligd door door de klant beheerde sleutels die zijn opgeslagen in een sleutelkluis of beheerde HSM die zich in een andere tenant bevindt dan het opslagaccount, configureert u eerst door de klant beheerde sleutels voor het opslagaccount. U moet een door de gebruiker toegewezen beheerde identiteit configureren voor het opslagaccount met machtigingen voor toegang tot de sleutelkluis in de andere tenant. Zie Door de klant beheerde sleutels voor meerdere tenants configureren voor een bestaand opslagaccount voor meer informatie over het configureren van door de klant beheerde sleutels voor meerdere tenants.
Als u door de klant beheerde sleutels wilt configureren voor gebruik met een versleutelingsbereik, moet beveiliging tegen opschonen zijn ingeschakeld in de sleutelkluis of beheerde HSM.
Nadat u door de klant beheerde sleutels voor meerdere tenants voor het opslagaccount hebt geconfigureerd, kunt u een versleutelingsbereik maken voor het opslagaccount in één tenant die is gericht op een sleutel in een sleutelkluis in de andere tenant. U hebt de sleutel-URI nodig om het versleutelingsbereik tussen tenants te maken.
Vergeet niet om de tijdelijke aanduidingen in het voorbeeld te vervangen door uw eigen waarden:
$rgName = "<resource-group>"
$accountName = "<storage-account>"
$scopeName = "<encryption-scope>"
# Construct the key URI from the key vault URI and key name.
$keyUri = $kvUri + "keys/" + $keyName
New-AzStorageEncryptionScope -ResourceGroupName $rgName `
-StorageAccountName $accountName `
-EncryptionScopeName $scopeName `
-KeyUri $keyUri `
-KeyvaultEncryption
Als u een versleutelingsbereik wilt maken met Azure CLI, installeert u eerst Azure CLI versie 2.20.0 of hoger.
Een versleutelingsbereik maken dat wordt beveiligd door door Microsoft beheerde sleutels
Als u een versleutelingsbereik wilt maken dat wordt beveiligd door door Microsoft beheerde sleutels, roept u de opdracht az storage account encryption-scope create aan en geeft u de --key-source
parameter op als Microsoft.Storage
.
Als infrastructuurversleuteling is ingeschakeld voor het opslagaccount, wordt deze automatisch ingeschakeld voor het nieuwe versleutelingsbereik. Anders kunt u kiezen of u infrastructuurversleuteling wilt inschakelen voor het versleutelingsbereik. Als u het nieuwe bereik wilt maken met infrastructuurversleuteling ingeschakeld, neemt u de parameter op en stelt u de --require-infrastructure-encryption
waarde ervan in op true
.
Vergeet niet om de tijdelijke aanduidingen te vervangen door uw eigen waarden:
az storage account encryption-scope create \
--resource-group <resource-group> \
--account-name <storage-account> \
--name <encryption-scope> \
--key-source Microsoft.Storage
Een versleutelingsbereik maken dat wordt beveiligd door door de klant beheerde sleutels in dezelfde tenant
Als u een versleutelingsbereik wilt maken dat wordt beveiligd door door de klant beheerde sleutels die zijn opgeslagen in een sleutelkluis of beheerde HSM die zich in dezelfde tenant als het opslagaccount bevindt, configureert u eerst door de klant beheerde sleutels voor het opslagaccount. U moet een beheerde identiteit toewijzen aan het opslagaccount met machtigingen voor toegang tot de sleutelkluis. De beheerde identiteit kan een door de gebruiker toegewezen beheerde identiteit of een door het systeem toegewezen beheerde identiteit zijn. Zie Door de klant beheerde sleutels configureren in dezelfde tenant voor een bestaand opslagaccount voor meer informatie over het configureren van door de klant beheerde sleutels.
Als u de beheerde identiteit machtigingen wilt verlenen voor toegang tot de sleutelkluis, wijst u de rol Key Vault Crypto Service Encryption User toe aan de beheerde identiteit.
Als u door de klant beheerde sleutels wilt configureren voor gebruik met een versleutelingsbereik, moet beveiliging tegen opschonen zijn ingeschakeld in de sleutelkluis of beheerde HSM.
In het volgende voorbeeld ziet u hoe u een versleutelingsbereik configureert met een door het systeem toegewezen beheerde identiteit. Vergeet niet om de tijdelijke aanduidingen in het voorbeeld te vervangen door uw eigen waarden:
az storage account update \
--name <storage-account> \
--resource-group <resource_group> \
--assign-identity
principalId=$(az storage account show --name <storage-account> \
--resource-group <resource_group> \
--query identity.principalId \
--output tsv)
$kvResourceId=$(az keyvault show \
--resource-group <resource-group> \
--name <key-vault> \
--query id \
--output tsv)
az role assignment create --assignee-object-id $principalId \
--role "Key Vault Crypto Service Encryption User" \
--scope $kvResourceId
Roep vervolgens de opdracht az storage account encryption-scope aan met de --key-uri
parameter en geef de sleutel-URI op. Het opnemen van de sleutelversie op de sleutel-URI is optioneel. Als u de sleutelversie weglaat, gebruikt het versleutelingsbereik automatisch de meest recente sleutelversie. Als u de sleutelversie opneemt, moet u de sleutelversie handmatig bijwerken om een andere versie te gebruiken.
De indeling van de sleutel-URI is vergelijkbaar met de volgende voorbeelden en kan worden samengesteld op basis van de kluis-eigenschap van de sleutelkluis en de sleutelnaam:
# Without the key version
https://<key-vault>.vault.azure.net/keys/<key>
# With the key version
https://<key-vault>.vault.azure.net/keys/<key>/<version>
Als infrastructuurversleuteling is ingeschakeld voor het opslagaccount, wordt deze automatisch ingeschakeld voor het nieuwe versleutelingsbereik. Anders kunt u kiezen of u infrastructuurversleuteling wilt inschakelen voor het versleutelingsbereik. Als u het nieuwe bereik wilt maken met infrastructuurversleuteling ingeschakeld, neemt u de parameter op en stelt u de --require-infrastructure-encryption
waarde ervan in op true
.
Vergeet niet om de tijdelijke aanduidingen in het voorbeeld te vervangen door uw eigen waarden:
az storage account encryption-scope create \
--resource-group <resource-group> \
--account-name <storage-account> \
--name <encryption-scope> \
--key-source Microsoft.KeyVault \
--key-uri <key-uri>
Een versleutelingsbereik maken dat wordt beveiligd door door de klant beheerde sleutels in een andere tenant
Als u een versleutelingsbereik wilt maken dat wordt beveiligd door door de klant beheerde sleutels die zijn opgeslagen in een sleutelkluis of beheerde HSM die zich in een andere tenant bevindt dan het opslagaccount, configureert u eerst door de klant beheerde sleutels voor het opslagaccount. U moet een door de gebruiker toegewezen beheerde identiteit configureren voor het opslagaccount met machtigingen voor toegang tot de sleutelkluis in de andere tenant. Zie Door de klant beheerde sleutels voor meerdere tenants configureren voor een bestaand opslagaccount voor meer informatie over het configureren van door de klant beheerde sleutels voor meerdere tenants.
Als u door de klant beheerde sleutels wilt configureren voor gebruik met een versleutelingsbereik, moet beveiliging tegen opschonen zijn ingeschakeld in de sleutelkluis of beheerde HSM.
Nadat u door de klant beheerde sleutels voor meerdere tenants voor het opslagaccount hebt geconfigureerd, kunt u een versleutelingsbereik maken voor het opslagaccount in één tenant die is gericht op een sleutel in een sleutelkluis in de andere tenant. U hebt de sleutel-URI nodig om het versleutelingsbereik tussen tenants te maken.
Vergeet niet om de tijdelijke aanduidingen in het voorbeeld te vervangen door uw eigen waarden:
az storage account encryption-scope create \
--resource-group <resource-group> \
--account-name <storage-account> \
--name <encryption-scope> \
--key-source Microsoft.KeyVault \
--key-uri <key-uri>
Als u de versleutelingsbereiken voor een opslagaccount in Azure Portal wilt weergeven, gaat u naar de instelling Versleutelingsbereiken voor het opslagaccount. In dit deelvenster kunt u een versleutelingsbereik in- of uitschakelen of de sleutel voor een versleutelingsbereik wijzigen.
Als u details wilt weergeven voor een door de klant beheerde sleutel, inclusief de sleutel-URI en versie en of de sleutelversie automatisch wordt bijgewerkt, volgt u de koppeling in de kolom Sleutel .
Als u de versleutelingsbereiken wilt weergeven die beschikbaar zijn voor een opslagaccount met PowerShell, roept u de opdracht Get-AzStorageEncryptionScope aan . Vergeet niet om de tijdelijke aanduidingen in het voorbeeld te vervangen door uw eigen waarden:
Get-AzStorageEncryptionScope -ResourceGroupName $rgName `
-StorageAccountName $accountName
Als u alle versleutelingsbereiken in een resourcegroep per opslagaccount wilt weergeven, gebruikt u de syntaxis van de pijplijn:
Get-AzStorageAccount -ResourceGroupName $rgName | Get-AzStorageEncryptionScope
Als u de versleutelingsbereiken wilt weergeven die beschikbaar zijn voor een opslagaccount met Azure CLI, roept u de opdracht az storage account encryption-scope list aan. Vergeet niet om de tijdelijke aanduidingen in het voorbeeld te vervangen door uw eigen waarden:
az storage account encryption-scope list \
--account-name <storage-account> \
--resource-group <resource-group>
Wanneer u een container maakt, kunt u een standaardversleutelingsbereik opgeven. Blobs in die container gebruiken dat bereik standaard.
Een afzonderlijke blob kan worden gemaakt met een eigen versleutelingsbereik, tenzij de container zodanig is geconfigureerd dat alle blobs het standaardbereik gebruiken. Zie Versleutelingsbereiken voor containers en blobs voor meer informatie.
Als een client probeert een bereik op te geven bij het uploaden van een blob naar een container met een standaardversleutelingsbereik en de container is geconfigureerd om te voorkomen dat blobs het standaardbereik overschrijven, mislukt de bewerking met een bericht dat aangeeft dat de aanvraag niet is toegestaan door het containerversleutelingsbeleid.
Wanneer u een blob uploadt, kunt u een versleutelingsbereik voor die blob opgeven of het standaardversleutelingsbereik voor de container gebruiken als deze is opgegeven.
Voer de volgende stappen uit om de sleutel te wijzigen die een bereik beveiligt in Azure Portal:
- Navigeer naar het tabblad Versleutelingsbereiken om de lijst met versleutelingsbereiken voor het opslagaccount weer te geven.
- Selecteer de knop Meer naast het bereik dat u wilt wijzigen.
- In het deelvenster Versleutelingsbereik bewerken kunt u het versleutelingstype wijzigen van door Microsoft beheerde sleutel in door de klant beheerde sleutel of omgekeerd.
- Als u een nieuwe door de klant beheerde sleutel wilt selecteren, selecteert u Een nieuwe sleutel gebruiken en geeft u de sleutelkluis, sleutel en sleutelversie op.
Als u de sleutel wilt wijzigen die een versleutelingsbereik beveiligt van een door de klant beheerde sleutel in een door Microsoft beheerde sleutel met PowerShell, roept u de opdracht Update-AzStorageEncryptionScope aan en geeft u de -StorageEncryption
parameter door:
Update-AzStorageEncryptionScope -ResourceGroupName $rgName `
-StorageAccountName $accountName `
-EncryptionScopeName $scopeName2 `
-StorageEncryption
Roep vervolgens de opdracht Update-AzStorageEncryptionScope aan en geef de -KeyUri
parameters -KeyvaultEncryption
door:
Update-AzStorageEncryptionScope -ResourceGroupName $rgName `
-StorageAccountName $accountName `
-EncryptionScopeName $scopeName1 `
-KeyUri $keyUri `
-KeyvaultEncryption
Als u de sleutel die een versleutelingsbereik beveiligt van een door de klant beheerde sleutel wilt wijzigen in een door Microsoft beheerde sleutel met Azure CLI, roept u de opdracht az storage account encryption-scope update aan en geeft u de --key-source
parameter door met de waarde Microsoft.Storage
:
az storage account encryption-scope update \
--account-name <storage-account> \
--resource-group <resource-group>
--name <encryption-scope> \
--key-source Microsoft.Storage
Roep vervolgens de opdracht az storage account encryption-scope update aan, geef de --key-uri
parameter door en geef de --key-source
parameter door met de waarde Microsoft.KeyVault
:
az storage account encryption-scope update \
--resource-group <resource-group> \
--account-name <storage-account> \
--name <encryption-scope> \
--key-source Microsoft.KeyVault \
--key-uri <key-uri>