Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
GÄLLER FÖR:
NoSQL
MongoDB
Kassandra
Gremlin
Bord
Azure Cosmos DB kan behöva läsa hemliga/viktiga data från Azure Key Vault. Din Azure Cosmos DB kan till exempel kräva en kundhanterad nyckel som lagras i Azure Key Vault. För att göra detta bör Azure Cosmos DB konfigureras med en hanterad identitet och sedan bör en Azure Key Vault-åtkomstprincip bevilja åtkomst till den hanterade identiteten.
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Skapa ett konto utan kostnad.
- Ett befintligt Azure Cosmos DB-API för NoSQL-konto. Skapa ett Azure Cosmos DB-API för NoSQL-konto
- En befintlig Azure Key Vault-resurs. Skapa ett nyckelvalv med Hjälp av Azure CLI
- Om du vill utföra stegen i den här artikeln installerar du Azure CLI och loggar in på Azure.
Kravkontroll
I ett terminal- eller kommandofönster lagrar du namnen på din Azure Key Vault-resurs, Azure Cosmos DB-konto och resursgrupp som gränssnittsvariabler med namnet
keyVaultName,cosmosNameochresourceGroupName.# Variable for function app name keyVaultName="msdocs-keyvault" # Variable for Azure Cosmos DB account name cosmosName="msdocs-cosmos-app" # Variable for resource group name resourceGroupName="msdocs-cosmos-keyvault-identity"Kommentar
Dessa variabler kommer att återanvändas i senare steg. Det här exemplet förutsätter att ditt Azure Cosmos DB-kontonamn är
msdocs-cosmos-app, ditt nyckelvalvnamn ärmsdocs-keyvaultoch resursgruppens namn ärmsdocs-cosmos-keyvault-identity.
Skapa en systemtilldelad hanterad identitet i Azure Cosmos DB
Skapa först en systemtilldelad hanterad identitet för det befintliga Azure Cosmos DB-kontot.
Viktigt!
Den här guiden förutsätter att du använder en systemtilldelad hanterad identitet. Många av stegen liknar när du använder en användartilldelad hanterad identitet.
Kör
az cosmosdb identity assignför att skapa en ny systemtilldelad hanterad identitet.az cosmosdb identity assign \ --resource-group $resourceGroupName \ --name $cosmosNameHämta metadata för den systemtilldelade hanterade identiteten med ,
az cosmosdb identity showfiltrera för att bara returneraprincipalIdegenskapen med frågeparametern och lagra resultatet i en gränssnittsvariabel med namnetprincipal.principal=$( az cosmosdb identity show \ --resource-group $resourceGroupName \ --name $cosmosName \ --query principalId \ --output tsv ) echo $principalKommentar
Den här variabeln kommer att återanvändas i ett senare steg.
Skapa en Azure Key Vault-åtkomstprincip
I det här steget skapar du en åtkomstprincip i Azure Key Vault med hjälp av den tidigare hanterade identiteten.
az keyvault set-policyAnvänd kommandot för att skapa en åtkomstprincip i Azure Key Vault som ger azure Cosmos DB-hanterad identitet behörighet att komma åt Key Vault. Mer specifikt använder principen nyckelbehörighetsparametrarna för att bevilja behörigheter tillget,listochimportnycklar.az keyvault set-policy \ --name $keyVaultName \ --object-id $principal \ --key-permissions get list import
Nästa steg
- Information om hur du använder kundhanterade nycklar i Azure Key Vault med ditt Azure Cosmos DB-konto finns i konfigurera kundhanterade nycklar
- Information om hur du använder Azure Key Vault för att hantera hemligheter finns i Säkra autentiseringsuppgifter.