Dela via


Läs- och läs-/skrivbehörigheter med sekundära interna användare i Azure Cosmos DB för MongoDB vCore

Azure Cosmos DB for MongoDB vCore stöder sekundära interna DocumentDB-användare med särskilda skriv- och skrivskyddade roller. Den här funktionen gör det möjligt för sekundära användare att komma åt och ändra data, vilket gör det enklare att delegera ansvarsområden samtidigt som datasäkerheten förbättras. Om du tillåter detaljerad åtkomstkontroll kan teamen med säkerhet utöka dataåtkomsten till olika intressenter, till exempel utvecklare och analytiker, utan att äventyra systemets integritet.

När ett kluster skapas läggs ett inbyggt administrativt internt användarkonto till automatiskt. Det här kontot har fullständig behörighet, inklusive funktioner för användarhantering. Om du vill skapa andra interna användare måste du logga in med det här inbyggda administrativa kontot.

Om klustret har en replik replikeras alla sekundära interna användare automatiskt till repliken och kan användas för att komma åt den. Alla interna användarhanteringsåtgärder ska utföras på det primära klustret.

Förutsättningar

Kommandon och exempel som stöds

En inbyggd administrativ användare i DocumentDB med alla behörigheter skapas i Azure Cosmos DB for MongoDB vCore-klustret under klusterinstallationen. Den här administrativa användaren kan utföra alla åtgärder i klustret, inklusive intern DocumentDB-användarhantering och kan inte tas bort.

Dessutom har Azure Cosmos DB for MongoDB vCore stöd för rollbaserad åtkomstkontroll (RBAC) för sekundära användare med läs- eller skrivbehörighet. Med den här funktionen kan administratörer tilldela roller som ger åtkomst till sekundära användare för viktiga läsåtgärder samtidigt som primär dataintegritet skyddas.

Du kan använda någon av MongoDB-drivrutinerna eller verktygen, till exempel mongosh för att utföra dessa åtgärder.

Autentisera och utföra åtgärder via MongoDB-gränssnittet

Autentisera med inbyggt administrativt konto som skapats under klusteretablering. Endast det här inbyggda administrativa kontot har användarhanteringsprivilegier (userAdmin) i klustret.

mongosh "mongodb+srv://<UserName>:<Password>@<ClusterName>?tls=true&authMechanism=SCRAM-SHA-256&retrywrites=false&maxIdleTimeMS=120000"

Tips/Råd

Du kan hämta den interna anslutningssträngen för klustret i Azure-portalen på sidan Anslutningssträngar.

Skapa en användare

Skapar en ny användare i klustret där du kör kommandot. Kommandot createUser returnerar ett duplicerat användarfel om användaren redan finns.

Dataadministratörsanvändare

db.runCommand(
    {
        createUser:"yourUserName",
        pwd : "yourPassword",
        roles : [
            { role:"clusterAdmin",db:"admin" },
            { role:"readWriteAnyDatabase", db:"admin" }
        ]
    }
)

Skrivskyddade användare

db.runCommand(
    {
        createUser:"yourUserName",
        pwd : "yourPassword",
        roles : [
            { role:"readAnyDatabase",db:"admin" }
        ]
    }
)

Uppdatera användare

Uppdaterar en användare i databasen där du kör kommandot. Kommandot updateUser stöder endast uppdatering av lösenordet.

use admin
db.runCommand(
    {
        updateUser:"<username>",
        pwd : "<new cleartext password>"
    }
)

Ta bort användare

Tar bort användaren från klustret.

use admin
db.runCommand(
    {
        dropUser:"<username>"
    }
)

Visa användare

Returnerar information om interna användare som skapats i klustret. Det har också stöd för att skicka in en enskild användare till usersInfo. I så fall returneras information om användaren, dess roll osv.

use admin
db.runCommand(
    {
        usersInfo:1
    }
)

Nästa steg