Dela via


Säker åtkomst till data i Azure Cosmos DB

GÄLLER FÖR: NoSQL

Den här artikeln innehåller en översikt över dataåtkomstkontroll i Azure Cosmos DB.

Azure Cosmos DB innehåller tre sätt att styra åtkomsten till dina data.

Typ av åtkomstkontroll Egenskaper
Primära/sekundära nycklar Delad hemlighet som tillåter hantering eller dataåtgärder. Den finns i både skrivskyddade och skrivskyddade varianter.
Rollbaserad åtkomstkontroll (RBAC) Detaljerad rollbaserad behörighetsmodell som använder Microsoft Entra-identiteter för autentisering.

Primära/sekundära nycklar

Primära/sekundära nycklar ger åtkomst till alla administrativa resurser för databaskontot. Varje konto består av två nycklar: en primärnyckel och en sekundär nyckel. Syftet med dubbla nycklar är att du ska kunna återskapa eller rulla nycklar, vilket ger kontinuerlig åtkomst till ditt konto och dina data. Mer information om primära/sekundära nycklar finns i Översikt över databassäkerhet i Azure Cosmos DB.

Om du vill se dina kontonycklar väljer du Nycklar på den vänstra menyn. Välj sedan ikonen Visa till höger om varje nyckel. Välj knappen Kopiera för att kopiera den valda nyckeln. Du kan dölja dem efteråt genom att välja samma ikon per nyckel, vilket uppdaterar ikonen till en Dölj-knapp .

Skärmbild av Visa kontonyckel för Azure Cosmos DB.

Nyckelrotation och regenerering

Kommentar

I följande avsnitt beskrivs stegen för att rotera och återskapa nycklar för API:et för NoSQL. Om du använder ett annat API kan du läsa avsnitten API för MongoDB, API för Cassandra, API för Gremlin eller API för tabell .

Information om hur du övervakar ditt konto för viktiga uppdateringar och nyckelåtergenerering finns i Övervaka ditt Azure Cosmos DB-konto för nyckeluppdateringar och nyckelåtergenerering.

Processen för nyckelrotation och regenerering är enkel. Kontrollera först att programmet konsekvent använder antingen den primära nyckeln eller den sekundära nyckeln för att få åtkomst till ditt Azure Cosmos DB-konto. Följ sedan stegen i nästa avsnitt.

  1. Gå till ditt Azure Cosmos DB-konto i Azure Portal.

  2. Välj Nycklar på den vänstra menyn och välj sedan Återskapa sekundär nyckel från ellipsen till höger om den sekundära nyckeln.

    Skärmbild som visar Azure Portal som visar hur du återskapar den sekundära nyckeln.

  3. Kontrollera att den nya sekundära nyckeln fungerar konsekvent mot ditt Azure Cosmos DB-konto. Nyckelåtergenerering kan ta allt från en minut till flera timmar beroende på storleken på Azure Cosmos DB-kontot.

  4. Ersätt din primära nyckel med den sekundära nyckeln i programmet.

  5. Gå tillbaka till Azure Portal och utlöser regenereringen av primärnyckeln.

    Skärmbild som visar Azure Portal som visar hur du återskapar primärnyckeln.

Kodexempel för att använda en primärnyckel

Följande kodexempel visar hur du använder en Azure Cosmos DB-kontoslutpunkt och primärnyckel för att instansiera en CosmosClient:

// Read the Azure Cosmos DB endpointUrl and authorization keys from config.
// These values are available from the Azure portal on the Azure Cosmos DB account blade under "Keys".
// Keep these values in a safe and secure location. Together they provide Administrative access to your Azure Cosmos DB account.

private static readonly string endpointUrl = ConfigurationManager.AppSettings["EndPointUrl"];
private static readonly string authorizationKey = ConfigurationManager.AppSettings["AuthorizationKey"];

CosmosClient client = new CosmosClient(endpointUrl, authorizationKey);

Rollbaserad åtkomstkontroll

Azure Cosmos DB exponerar ett inbyggt RBAC-system som gör att du kan:

  • Autentisera dina databegäranden med en Microsoft Entra-identitet.
  • Auktorisera dina databegäranden med en detaljerad rollbaserad behörighetsmodell.

Azure Cosmos DB RBAC är den perfekta åtkomstkontrollmetoden i situationer där:

  • Du vill inte använda en delad hemlighet som primärnyckeln och föredrar att förlita dig på en tokenbaserad autentiseringsmekanism.
  • Du vill använda Microsoft Entra-identiteter för att autentisera dina begäranden.
  • Du behöver en detaljerad behörighetsmodell för att noggrant begränsa vilka databasåtgärder som dina identiteter tillåts utföra.
  • Du vill materialisera dina åtkomstkontrollprinciper som "roller" som du kan tilldela till flera identiteter.

Mer information om Azure Cosmos DB RBAC finns i Konfigurera rollbaserad åtkomstkontroll för ditt Azure Cosmos DB-konto.

Information och exempelkod för att konfigurera RBAC för Azure Cosmos DB för MongoDB finns i Konfigurera rollbaserad åtkomstkontroll för Azure Cosmos DB för MongoDB.

Lägg till användare och tilldela roller

Om du vill lägga till åtkomst för Azure Cosmos DB-kontoläsare till ditt användarkonto måste du låta en prenumerationsägare utföra följande steg i Azure Portal.

  1. Öppna Azure Portal och välj ditt Azure Cosmos DB-konto.

  2. Välj Åtkomstkontroll (IAM) .

  3. Välj Lägg till>rolltilldelning för att öppna sidan Lägg till rolltilldelning.

  4. Tilldela följande roll. Detaljerade steg finns i Tilldela Azure-roller med hjälp av Azure Portal.

    Inställning Värde
    Roll Cosmos DB-kontoläsare.
    Tilldela åtkomst till Användare, grupp eller tjänstens huvudnamn.
    Medlemmar Användaren, gruppen eller programmet i din katalog som du vill bevilja åtkomst till.

    Skärmbild som visar sidan Lägg till rolltilldelning i Azure Portal.

Entiteten kan nu läsa Azure Cosmos DB-resurser.

Ta bort eller exportera användardata

Som databastjänst gör Azure Cosmos DB att du kan söka, välja, ändra och ta bort data som finns i databasen eller containrarna. Det är ditt ansvar att använda de angivna API:erna och definiera logik som krävs för att hitta och radera personliga data om det behövs.

Varje API för flera modeller (SQL, MongoDB, Gremlin, Cassandra eller Table) innehåller olika språk-SDK:er som innehåller metoder för att söka efter och ta bort data baserat på anpassade predikat. Du kan också aktivera funktionen time to live (TTL) för att ta bort data automatiskt efter en angiven period, utan att medföra någon mer kostnad.

Kommentar

I Azure-begäranden från registrerad person för GDPR finns det information om att visa eller ta bort personuppgifter. Mer information om GDPR finns i avsnittet GDPR i Microsoft Trust Center och GDPR-avsnittet i Service Trust-portalen.