Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
VAN TOEPASSING OP:
NoSQL
MongoDB
Cassandra
Gremlin
Tafel
Raadpleeg de koppeling Door de klant beheerde sleutels configureren met Azure Key Vault
Notitie
Momenteel zijn door de klant beheerde sleutels alleen beschikbaar voor nieuwe Azure Cosmos DB-accounts. U moet deze configureren tijdens het maken van het account.
De Azure Cosmos DB-resourceprovider registreren voor uw Azure-abonnement
Meld u aan bij Azure Portal, ga naar uw Azure-abonnement en selecteer Resourceproviders op het tabblad Instellingen :
Zoek de resourceprovider Microsoft.DocumentDB op. Controleer of de resourceprovider al is gemarkeerd als geregistreerd. Zo niet, kiest u de resourceprovider en selecteert u Registreren:
Azure Managed HSM Key Vault configureren
Als u klantbeheer sleutels gebruikt met Azure Cosmos DB, moet u twee eigenschappen instellen op het Azure Key Vault-exemplaar dat u wilt gebruiken om uw versleutelingssleutels te hosten: Zachte verwijdering en Zuiveringsbescherming.
Omdat zacht verwijderen standaard is ingeschakeld, hoeft alleen beveiliging tegen opschonen ingeschakeld te zijn. Gebruik de volgende CLI-opdracht bij het maken van uw beheerde HSM:
objectId = az ad signed-in-user show --query id -o tsv
az keyvault create --hsm-name $hsmName --resource-group $rgName --location $location --enable-purge-protection true --administrators $objectId --retention-days 7
Als u een bestaand Azure Managed HSM Key Vault-exemplaar gebruikt, kunt u controleren of deze eigenschappen zijn ingeschakeld door de sectie Eigenschappen te bekijken met de volgende opdracht:
az keyvault show $hsmName $rgName
Als opschoningsbeveiliging niet is ingeschakeld, kan de volgende opdracht worden gebruikt:
az keyvault update-hsm --enable-purge-protection true --hsm-name $hsmName --resource-group $rgName
Raadpleeg de volgende Azure Key Vault voor meer informatie over de CLI-opdrachten die beschikbaar zijn voor beheerde HSM
De versleutelingssleutel maken en de correspondentrollen toewijzen
Zodra de beheerde HSM is geactiveerd, moet de sleutel die wordt gebruikt voor het CMK-account worden gemaakt. Hiervoor wordt de rol 'Beheerde HSM Crypto-gebruiker' toegewezen aan de beheerder. Raadpleeg de volgende artikelen voor meer informatie over de werking van RBAC (op rollen gebaseerd toegangsbeheer) met Managed HSM: Managed HSM lokale ingebouwde RBAC-rollen - Azure Key Vault | Microsoft Learn en Azure Managed HSM toegangsbeheer | Microsoft Learn
objectId = az ad signed-in-user show --query id -o tsv
$keyName = "Name of your key"
az keyvault role assignment create --hsm-name $hsmName --role "Managed HSM Crypto User" --assignee $objectId --scope /keys
az keyvault key create --hsm-name $hsmName --name $keyName --ops wrapKey unwrapKey --kty RSA-HSM --size 3072
Nu de sleutel is gemaakt, moet de rol van de correspondent worden toegewezen aan de Cosmos DB-principal-id of de door Azure beheerde identiteit voor het inrichten van het account. De rol Managed HSM Crypto Service Encryption User wordt gebruikt omdat deze de enige drie machtigingen heeft die nodig zijn om te werken met een CMK-account, namelijk: ophalen, verpakken en uitpakken. Deze machtigingen zijn ook bedoeld om alleen nuttig te zijn voor de sleutels die zijn opgeslagen op de Azure Managed HSM.
Zonder beheerde Azure-identiteit:
$cosmosPrincipal = az ad sp show --id a232010e-820c-4083-83bb-3ace5fc29d0b --query id -o tsv
az keyvault role assignment create --hsm-name $hsmName --role "Managed HSM Crypto Service Encryption User" --assignee $cosmosPrincipal --scope /keys
$keyURI = "https://{0}.managedhsm.azure.net/keys/{1}" -f $hsmName, $keyName
az cosmosdb create -n $cosmosName -g $rgName --key-uri $keyURI
Met een door Azure beheerde identiteit:
$identityResourceID = az identity show -g $rgName -n $identityName --query id -o tsv
$identityPrincipal = az identity show -g $rgName -n $identityName --query principalId -o tsv
$defaultIdentity = "UserAssignedIdentity={0}" -f $identityResourceID
az keyvault role assignment create --hsm-name $hsmName --role "Managed HSM Crypto Service Encryption User" --assignee $cosmosPrincipal --scope /keys
$keyURI = "https://{0}.managedhsm.azure.net/keys/{1}" -f $hsmName, $keyName
az cosmosdb create -n $cosmosName -g $rgName --key-uri $keyURI --assign-identity $identityResourceID --default-identity $defaultIdentity
Hiermee wordt een Cosmos DB CMK-account ingericht met een sleutel die is opgeslagen in een Azure Managed HSM Key Vault.
Overschakelen naar door het systeem toegewezen beheerde identiteit.
Cosmos DB ondersteunt het gebruik van een door het systeem toegewezen beheerde identiteit voor een CMK Cosmos DB-account. Raadpleeg voor meer informatie over door het systeem toegewezen beheerde identiteit CMK: Door de klant beheerde sleutels configureren voor uw Azure Cosmos DB-account
Voer de volgende opdrachten uit om over te schakelen van standaardidentiteit naar door het systeem toegewezen beheerde identiteit:
az cosmosdb identity assign -n $cosmosName -g $rgName
$principalMSIId = az cosmosdb identity show -n $cosmosName -g $rgName --query principalId -o tsv
az keyvault role assignment create --hsm-name $hsmName --role "Managed HSM Crypto Service Encryption User" --assignee $principalMSIId --scope /keys
az cosmosdb update --resource-group $rgName --name $cosmosName --default-identity "SystemAssignedIdentity"
Als optionele opmerking kan de oorspronkelijke roltoewijzing aan de principal-id van Cosmos DB of Azure Managed Identity worden verwijderd.
az keyvault role assignment delete --hsm-name $hsmName --role "Managed HSM Crypto Service Encryption User" --assignee $cosmosPrincipal --scope /keys
Volgende stappen
- Meer informatie over gegevensversleuteling in Azure Cosmos DB.