Konfigurera rollbaserad åtkomstkontroll med Microsoft Entra-ID för Azure Cosmos DB-kontot

GÄLLER FÖR: NoSQL

Kommentar

Den här artikeln handlar om rollbaserad åtkomstkontroll för dataplansåtgärder i Azure Cosmos DB. Om du använder hanteringsplanåtgärder kan du läsa artikeln rollbaserad åtkomstkontroll som tillämpas på hanteringsplanets åtgärder.

Azure Cosmos DB exponerar ett inbyggt rollbaserat åtkomstkontrollsystem 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.

Begrepp

Rollbaserad åtkomstkontroll i Azure Cosmos DB-dataplanet bygger på begrepp som ofta finns i andra rollbaserade åtkomstkontrollsystem som rollbaserad åtkomstkontroll i Azure:

  • Behörighetsmodellenbestår av en uppsättning åtgärder. Var och en av dessa åtgärder mappar till en eller flera databasåtgärder. Några exempel på åtgärder är att läsa ett objekt, skriva ett objekt eller köra en fråga.
  • Azure Cosmos DB-användare skapar rolldefinitioner som innehåller en lista över tillåtna åtgärder.
  • Rolldefinitioner tilldelas till specifika Microsoft Entra-identiteter via rolltilldelningar. En rolltilldelning definierar också det omfång som rolldefinitionen gäller för. för närvarande är tre omfång:
    • Ett Azure Cosmos DB-konto,
    • En Azure Cosmos DB-databas,
    • En Azure Cosmos DB-container.

Diagram of common role-based access control concepts including role definitions, role assignments, and principals.

Behörighetsmodell

Viktigt!

Den här behörighetsmodellen omfattar endast databasåtgärder som omfattar läsning och skrivning av data. Den omfattar inte någon typ av hanteringsåtgärder för hanteringsresurser, inklusive:

  • Skapa/ersätta/ta bort databas
  • Skapa/ersätta/ta bort container
  • Läsa/ersätta containerdataflöde
  • Skapa/ersätta/ta bort/läsa lagrade procedurer
  • Skapa/ersätta/ta bort/läsa utlösare
  • Skapa/ersätta/ta bort/läsa användardefinierade funktioner

Du kan inte använda azure Cosmos DB-dataplans-SDK för att autentisera hanteringsåtgärder med en Microsoft Entra-identitet. I stället måste du använda rollbaserad åtkomstkontroll i Azure via något av följande alternativ:

Read Database och Read Container betraktas som metadatabegäranden. Åtkomst till dessa åtgärder kan beviljas enligt beskrivningen i följande avsnitt.

I den här tabellen visas alla åtgärder som exponeras av behörighetsmodellen.

Name Motsvarande databasåtgärder
Microsoft.DocumentDB/databaseAccounts/readMetadata Läsa kontometadata. Mer information finns i Metadatabegäranden .
Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/create Skapa ett nytt objekt.
Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/read Läs ett enskilt objekt med dess ID och partitionsnyckel (punktläsning).
Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/replace Ersätt ett befintligt objekt.
Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/upsert "Upsert" ett objekt. Den här åtgärden skapar ett objekt om det inte redan finns eller för att ersätta objektet om det finns.
Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/delete Ta bort ett objekt.
Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/executeQuery Kör en SQL-fråga.
Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/readChangeFeed Läs från containerns ändringsflöde. Kör SQL-frågor med hjälp av SDK:erna.
Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/executeStoredProcedure Kör en lagrad procedur.
Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/manageConflicts Hantera konflikter för konton med flera skrivningsregioner (det vill: lista och ta bort objekt från konfliktflödet).

Kommentar

När du kör frågor via SDK:erna krävs både Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/executeQuery och Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/readChangeFeed behörigheter.

Jokertecken stöds på både container- och objektnivå:

  • Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/*
  • Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/*

Metadatabegäranden

Azure Cosmos DB SDK:er utfärdar skrivskyddade metadatabegäranden under initieringen och för att hantera specifika databegäranden. Dessa begäranden hämtar olika konfigurationsinformation, till exempel:

  • Den globala konfigurationen av ditt konto, som innehåller de Azure-regioner som kontot är tillgängligt i.
  • Partitionsnyckeln för dina containrar eller deras indexeringsprincip.
  • Listan över fysiska partitioner som skapar en container och deras adresser.

De hämtar inte någon av de data som du har lagrat i ditt konto.

För att säkerställa bästa möjliga transparens i vår behörighetsmodell omfattas dessa metadatabegäranden uttryckligen av Microsoft.DocumentDB/databaseAccounts/readMetadata åtgärden. Den här åtgärden bör tillåtas i alla situationer där ditt Azure Cosmos DB-konto nås via någon av Azure Cosmos DB SDK:erna. Den kan tilldelas (via en rolltilldelning) på valfri nivå i Azure Cosmos DB-hierarkin (dvs. konto, databas eller container).

De faktiska metadatabegäranden som tillåts av Microsoft.DocumentDB/databaseAccounts/readMetadata åtgärden beror på omfånget som åtgärden har tilldelats till:

Omfattning Begäranden som tillåts av åtgärden
Konto • Lista databaserna under kontot
• För varje databas under kontot ska de tillåtna åtgärderna i databasomfånget
Databas • Läsa databasmetadata
• Lista containrarna under databasen
• För varje container under databasen ska de tillåtna åtgärderna i containeromfånget
Container • Läsa containermetadata
• Lista fysiska partitioner under containern
• Lösa adressen för varje fysisk partition

Viktigt!

Dataflödet ingår inte i metadata för den här åtgärden.

Inbyggda rolldefinitioner

Azure Cosmos DB exponerar två inbyggda rolldefinitioner:

Viktigt!

Termen rolldefinitioner här refererar till specifika rolldefinitioner i Azure Cosmos DB. Dessa skiljer sig från rolldefinitioner för azure-rollbaserad åtkomstkontroll.

ID Name Inkluderade åtgärder
00000000-0000-0000-0000-000000000001 Inbyggd Cosmos DB-dataläsare Microsoft.DocumentDB/databaseAccounts/readMetadata
Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/read
Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/executeQuery
Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/readChangeFeed
00000000-0000-0000-0000-000000000002 Inbyggd Cosmos DB-datadeltagare Microsoft.DocumentDB/databaseAccounts/readMetadata
Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/*
Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/*

Skapa anpassade rolldefinitioner

När du skapar en anpassad rolldefinition måste du ange:

  • Namnet på ditt Azure Cosmos DB-konto.
  • Resursgruppen som innehåller ditt konto.
  • Typ av rolldefinition: CustomRole.
  • Namnet på rolldefinitionen.
  • En lista över åtgärder som du vill att rollen ska tillåta.
  • Ett eller flera omfång som rolldefinitionen kan tilldelas till. omfång som stöds är:
    • / (kontonivå),
    • /dbs/<database-name> (databasnivå),
    • /dbs/<database-name>/colls/<container-name> (containernivå).

Kommentar

De åtgärder som beskrivs är tillgängliga i:

Använda Azure PowerShell

Skapa en roll med namnet MyReadOnlyRole som endast innehåller läsåtgärder:

$resourceGroupName = "<myResourceGroup>"
$accountName = "<myCosmosAccount>"
New-AzCosmosDBSqlRoleDefinition -AccountName $accountName `
    -ResourceGroupName $resourceGroupName `
    -Type CustomRole -RoleName MyReadOnlyRole `
    -DataAction @( `
        'Microsoft.DocumentDB/databaseAccounts/readMetadata',
        'Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/read', `
        'Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/executeQuery', `
        'Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/readChangeFeed') `
    -AssignableScope "/"

Skapa en roll med namnet MyReadWriteRole som innehåller alla åtgärder:

New-AzCosmosDBSqlRoleDefinition -AccountName $accountName `
    -ResourceGroupName $resourceGroupName `
    -Type CustomRole -RoleName MyReadWriteRole `
    -DataAction @( `
        'Microsoft.DocumentDB/databaseAccounts/readMetadata',
        'Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/*', `
        'Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/*') `
    -AssignableScope "/"

Visa en lista över de rolldefinitioner som du har skapat för att hämta deras ID:n:

Get-AzCosmosDBSqlRoleDefinition -AccountName $accountName `
    -ResourceGroupName $resourceGroupName
RoleName         : MyReadWriteRole
Id               : /subscriptions/<mySubscriptionId>/resourceGroups/<myResourceGroup>/providers/Microsoft.DocumentDB/databaseAcc
                   ounts/<myCosmosAccount>/sqlRoleDefinitions/<roleDefinitionId>
Type             : CustomRole
Permissions      : {Microsoft.Azure.Management.CosmosDB.Models.Permission}
AssignableScopes : {/subscriptions/<mySubscriptionId>/resourceGroups/<myResourceGroup>/providers/Microsoft.DocumentDB/databaseAc
                   counts/<myCosmosAccount>}

RoleName         : MyReadOnlyRole
Id               : /subscriptions/<mySubscriptionId>/resourceGroups/<myResourceGroup>/providers/Microsoft.DocumentDB/databaseAcc
                   ounts/<myCosmosAccount>/sqlRoleDefinitions/<roleDefinitionId>
Type             : CustomRole
Permissions      : {Microsoft.Azure.Management.CosmosDB.Models.Permission}
AssignableScopes : {/subscriptions/<mySubscriptionId>/resourceGroups/<myResourceGroup>/providers/Microsoft.DocumentDB/databaseAc
                   counts/<myCosmosAccount>}

Använda Azure CLI

Skapa en roll med namnet MyReadOnlyRole som endast innehåller läsåtgärder i en fil med namnet role-definition-ro.json:

{
    "RoleName": "MyReadOnlyRole",
    "Type": "CustomRole",
    "AssignableScopes": ["/"],
    "Permissions": [{
        "DataActions": [
            "Microsoft.DocumentDB/databaseAccounts/readMetadata",
            "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/read",
            "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/executeQuery",
            "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/readChangeFeed"
        ]
    }]
}
resourceGroupName='<myResourceGroup>'
accountName='<myCosmosAccount>'
az cosmosdb sql role definition create --account-name $accountName --resource-group $resourceGroupName --body @role-definition-ro.json

Skapa en roll med namnet MyReadWriteRole som innehåller alla åtgärder i en fil med namnet role-definition-rw.json:

{
    "RoleName": "MyReadWriteRole",
    "Type": "CustomRole",
    "AssignableScopes": ["/"],
    "Permissions": [{
        "DataActions": [
            "Microsoft.DocumentDB/databaseAccounts/readMetadata",
            "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/*",
            "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/*"
        ]
    }]
}
az cosmosdb sql role definition create --account-name $accountName --resource-group $resourceGroupName --body @role-definition-rw.json

Visa en lista över de rolldefinitioner som du har skapat för att hämta deras ID:n:

az cosmosdb sql role definition list --account-name $accountName --resource-group $resourceGroupName
[
  {
    "assignableScopes": [
      "/subscriptions/<mySubscriptionId>/resourceGroups/<myResourceGroup>/providers/Microsoft.DocumentDB/databaseAccounts/<myCosmosAccount>"
    ],
    "id": "/subscriptions/<mySubscriptionId>/resourceGroups/<myResourceGroup>/providers/Microsoft.DocumentDB/databaseAccounts/<myCosmosAccount>/sqlRoleDefinitions/<roleDefinitionId>",
    "name": "<roleDefinitionId>",
    "permissions": [
      {
        "dataActions": [
          "Microsoft.DocumentDB/databaseAccounts/readMetadata",
          "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/*",
          "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/*"
        ],
        "notDataActions": []
      }
    ],
    "resourceGroup": "<myResourceGroup>",
    "roleName": "MyReadWriteRole",
    "sqlRoleDefinitionGetResultsType": "CustomRole",
    "type": "Microsoft.DocumentDB/databaseAccounts/sqlRoleDefinitions"
  },
  {
    "assignableScopes": [
      "/subscriptions/<mySubscriptionId>/resourceGroups/<myResourceGroup>/providers/Microsoft.DocumentDB/databaseAccounts/<myCosmosAccount>"
    ],
    "id": "/subscriptions/<mySubscriptionId>/resourceGroups/<myResourceGroup>/providers/Microsoft.DocumentDB/databaseAccounts/<myCosmosAccount>/sqlRoleDefinitions/<roleDefinitionId>",
    "name": "<roleDefinitionId>",
    "permissions": [
      {
        "dataActions": [
          "Microsoft.DocumentDB/databaseAccounts/readMetadata",
          "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/read",
          "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/executeQuery",
          "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/readChangeFeed"
        ],
        "notDataActions": []
      }
    ],
    "resourceGroup": "<myResourceGroup>",
    "roleName": "MyReadOnlyRole",
    "sqlRoleDefinitionGetResultsType": "CustomRole",
    "type": "Microsoft.DocumentDB/databaseAccounts/sqlRoleDefinitions"
  }
]

Använda Azure Resource Manager-mallar

En referens och exempel på hur du använder Azure Resource Manager-mallar för att skapa rolldefinitioner finns i Microsoft.DocumentDB databaseAccounts/sqlRoleDefinitions.

Skapa rolltilldelningar

Du kan associera inbyggda eller anpassade rolldefinitioner med dina Microsoft Entra-identiteter. När du skapar en rolltilldelning måste du ange:

  • Namnet på ditt Azure Cosmos DB-konto.

  • Resursgruppen som innehåller ditt konto.

  • ID för rolldefinitionen som ska tilldelas.

  • Huvud-ID för den identitet som rolldefinitionen ska tilldelas till.

  • Omfånget för rolltilldelningen; omfång som stöds är:

    • / (kontonivå)
    • /dbs/<database-name> (databasnivå)
    • /dbs/<database-name>/colls/<container-name> (containernivå)

    Omfånget måste matcha eller vara ett underscope för något av rolldefinitionens tilldelningsbara omfång.

Kommentar

Om du vill skapa en rolltilldelning för tjänstens huvudnamn ska du använda dess objekt-ID enligt avsnittet Företagsprogrambladet Microsoft Entra-ID-portalen.

Kommentar

De åtgärder som beskrivs är tillgängliga i:

Använda Azure PowerShell

Tilldela en roll till en identitet:

$resourceGroupName = "<myResourceGroup>"
$accountName = "<myCosmosAccount>"
$readOnlyRoleDefinitionId = "<roleDefinitionId>" # as fetched above
# For Service Principals make sure to use the Object ID as found in the Enterprise applications section of the Azure Active Directory portal blade.
$principalId = "<aadPrincipalId>"
New-AzCosmosDBSqlRoleAssignment -AccountName $accountName `
    -ResourceGroupName $resourceGroupName `
    -RoleDefinitionId $readOnlyRoleDefinitionId `
    -Scope "/" `
    -PrincipalId $principalId

Använda Azure CLI

Tilldela en roll till en identitet:

resourceGroupName='<myResourceGroup>'
accountName='<myCosmosAccount>'
readOnlyRoleDefinitionId='<roleDefinitionId>' # as fetched above
# For Service Principals make sure to use the Object ID as found in the Enterprise applications section of the Azure Active Directory portal blade.
principalId='<aadPrincipalId>'
az cosmosdb sql role assignment create --account-name $accountName --resource-group $resourceGroupName --scope "/" --principal-id $principalId --role-definition-id $readOnlyRoleDefinitionId

Använda Bicep/Azure Resource Manager-mallar

För en inbyggd tilldelning med hjälp av en Bicep-mall:

resource sqlRoleAssignment 'Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments@2023-04-15' = {
  name: guid(<roleDefinitionId>, <aadPrincipalId>, <databaseAccountResourceId>)
  parent: databaseAccount
  properties:{
    principalId: <aadPrincipalId>
    roleDefinitionId: '/${subscription().id}/resourceGroups/<databaseAccountResourceGroup>/providers/Microsoft.DocumentDB/databaseAccounts/<myCosmosAccount>/sqlRoleDefinitions/<roleDefinitionId>'
    scope: <databaseAccountResourceId>
  }
}

En referens och exempel på hur du använder Azure Resource Manager-mallar för att skapa rolltilldelningar finns i Microsoft.DocumentDB databaseAccounts/sqlRoleAssignments.

Initiera SDK:t med Microsoft Entra-ID

Om du vill använda rollbaserad åtkomstkontroll i Azure Cosmos DB i ditt program måste du uppdatera hur du initierar Azure Cosmos DB SDK. I stället för att skicka kontots primära nyckel måste du skicka en instans av en TokenCredential klass. Den här instansen ger Azure Cosmos DB SDK den kontext som krävs för att hämta en Microsoft Entra-token för den identitet som du vill använda.

Hur du skapar en TokenCredential instans ligger utanför omfånget för den här artikeln. Det finns många sätt att skapa en sådan instans beroende på vilken typ av Microsoft Entra-identitet du vill använda (användarens huvudnamn, tjänstens huvudnamn, grupp osv.). Viktigast av allt är att din TokenCredential instans måste matcha den identitet (huvudnamns-ID) som du har tilldelat dina roller till. Du hittar exempel på hur du skapar en TokenCredential klass:

I följande exempel används ett huvudnamn för tjänsten med en ClientSecretCredential instans.

I .NET

Rollbaserad åtkomstkontroll i Azure Cosmos DB stöds för närvarande i .NET SDK V3.

TokenCredential servicePrincipal = new ClientSecretCredential(
    "<azure-ad-tenant-id>",
    "<client-application-id>",
    "<client-application-secret>");
CosmosClient client = new CosmosClient("<account-endpoint>", servicePrincipal);

I Java

Rollbaserad åtkomstkontroll i Azure Cosmos DB stöds för närvarande i Java SDK V4.

TokenCredential ServicePrincipal = new ClientSecretCredentialBuilder()
    .authorityHost("https://login.microsoftonline.com")
    .tenantId("<azure-ad-tenant-id>")
    .clientId("<client-application-id>")
    .clientSecret("<client-application-secret>")
    .build();
CosmosAsyncClient Client = new CosmosClientBuilder()
    .endpoint("<account-endpoint>")
    .credential(ServicePrincipal)
    .build();

I JavaScript

Rollbaserad åtkomstkontroll i Azure Cosmos DB stöds för närvarande i JavaScript SDK V3.

const servicePrincipal = new ClientSecretCredential(
    "<azure-ad-tenant-id>",
    "<client-application-id>",
    "<client-application-secret>");
const client = new CosmosClient({
    endpoint: "<account-endpoint>",
    aadCredentials: servicePrincipal
});

I Python

Rollbaserad åtkomstkontroll i Azure Cosmos DB stöds i Python SDK-versionerna 4.3.0b4 och senare.

aad_credentials = ClientSecretCredential(
    tenant_id="<azure-ad-tenant-id>",
    client_id="<client-application-id>",
    client_secret="<client-application-secret>")
client = CosmosClient("<account-endpoint>", aad_credentials)

Autentisera begäranden i REST-API:et

När du skapar REST API-auktoriseringshuvudet anger du typparametern till Microsoft Entra-ID och hash-signaturen (sig) till OAuth-token enligt följande exempel:

type=aad&ver=1.0&sig=<token-from-oauth>

Använda datautforskaren

Kommentar

Datautforskaren som exponeras i Azure-portalen har ännu inte stöd för rollbaserad åtkomstkontroll i Azure Cosmos DB. Om du vill använda din Microsoft Entra-identitet när du utforskar dina data måste du använda Azure Cosmos DB Explorer i stället.

När du kommer åt Azure Cosmos DB Explorer med den specifika ?feature.enableAadDataPlane=true frågeparametern och loggar in används följande logik för att komma åt dina data:

  1. En begäran om att hämta kontots primära nyckel görs för den identitet som är inloggad. Om den här begäran lyckas används den primära nyckeln för att komma åt kontots data.
  2. Om den identitet som är inloggad inte tillåts hämta kontots primära nyckel används den här identiteten direkt för att autentisera dataåtkomst. I det här läget måste identiteten tilldelas rätt rolldefinitioner för att säkerställa dataåtkomst.

Granska databegäranden

Diagnostikloggar utökas med identitets- och auktoriseringsinformation för varje dataåtgärd när du använder rollbaserad åtkomstkontroll i Azure Cosmos DB. Med den här förstoringen kan du utföra detaljerad granskning och hämta Den Microsoft Entra-identitet som används för varje databegäran som skickas till ditt Azure Cosmos DB-konto.

Den här ytterligare informationen flödar i loggkategorin DataPlaneRequests och består av två extra kolumner:

  • aadPrincipalId_g visar huvud-ID för Den Microsoft Entra-identitet som användes för att autentisera begäran.
  • aadAppliedRoleAssignmentId_gvisar rolltilldelningen som tilldelades när begäran godkändes.

Framtvinga rollbaserad åtkomstkontroll som den enda autentiseringsmetoden

I situationer där du vill tvinga klienter att ansluta till Azure Cosmos DB via rollbaserad åtkomstkontroll exklusivt kan du inaktivera kontots primära/sekundära nycklar. När du gör det avvisas alla inkommande begäranden med antingen en primär/sekundär nyckel eller en resurstoken aktivt.

Använda Azure Resource Manager-mallar

När du skapar eller uppdaterar ditt Azure Cosmos DB-konto med hjälp av Azure Resource Manager-mallar anger du disableLocalAuth egenskapen till true:

"resources": [
    {
        "type": " Microsoft.DocumentDB/databaseAccounts",
        "properties": {
            "disableLocalAuth": true,
            // ...
        },
        // ...
    },
    // ...
 ]

Gränser

  • Du kan skapa upp till 100 rolldefinitioner och 2 000 rolltilldelningar per Azure Cosmos DB-konto.
  • Du kan bara tilldela rolldefinitioner till Microsoft Entra-identiteter som tillhör samma Microsoft Entra-klientorganisation som ditt Azure Cosmos DB-konto.
  • Microsoft Entra-gruppmatchning stöds för närvarande inte för identiteter som tillhör fler än 200 grupper.
  • Microsoft Entra-token skickas för närvarande som ett huvud där varje enskild begäran skickas till Azure Cosmos DB-tjänsten, vilket ökar den totala nyttolaststorleken.

Vanliga frågor och svar

Det här avsnittet innehåller vanliga frågor om rollbaserad åtkomstkontroll och Azure Cosmos DB.

Vilka Azure Cosmos DB-API:er stöder rollbaserad åtkomstkontroll på dataplan?

Från och med nu stöds endast NoSQL-API:et.

Går det att hantera rolldefinitioner och rolltilldelningar från Azure-portalen?

Stöd för rollhantering i Azure-portalen är inte tillgängligt ännu.

Vilka SDK:er i Azure Cosmos DB API för NoSQL stöder rollbaserad åtkomstkontroll?

.NET V3, Java V4, JavaScript V3 och Python V4.3+ SDK:er stöds för närvarande.

Uppdateras Microsoft Entra-token automatiskt av Azure Cosmos DB-SDK: er när den upphör att gälla?

Ja.

Går det att inaktivera användningen av kontots primära/sekundära nycklar när du använder rollbaserad åtkomstkontroll?

Ja, se Framtvinga rollbaserad åtkomstkontroll som den enda autentiseringsmetoden.

Nästa steg