Läs- och läs-/skrivbehörigheter med sekundära användare i Azure Cosmos DB för MongoDB vCore (förhandsversion)
Azure Cosmos DB for MongoDB vCore har nu stöd för sekundära användare med särskilda skrivroller. 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. Genom att tillåta detaljerad åtkomstkontroll kan team med säkerhet utöka dataåtkomsten till olika intressenter, till exempel utvecklare och analytiker, utan att äventyra systemets integritet.
Konfigurera sekundära användare
Kommentar
Du kan aktivera/inaktivera den här funktionen med hjälp av en ARM-mall eller via Azure CLI under förhandsgranskningsfasen.
Med hjälp av Azure CLI
az resource patch --ids "/subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroup}/providers/Microsoft.DocumentDB/mongoClusters/{ClusterName}" --api-version 2024-10-01-preview --properties "{\"previewFeatures\": [\"GeoReplicas\", \"EnableReadOnlyUser\"]}"
Använda ARM-mall
"previewFeatures": {
"value": [
"EnableReadOnlyUser"
]
}
Kommandon och exempel som stöds
MongoDB vCore stöder nu rollbaserad åtkomstkontroll (RBAC) för sekundära användare med läs- och skrivbehörighet. På så sätt kan administratörer tilldela roller som ger åtkomst till sekundära databaser för viktiga läsåtgärder samtidigt som primära dataintegritet skyddas.
Kommentar
Du kan använda någon av MongoDB-drivrutinerna eller mongotools som mongosh för att utföra dessa åtgärder.
Autentisera och utföra åtgärder via Mongosh
mongosh mongodb+srv://<YOUR_USERNAME>:<YOUR_PASSWORD>@>YOUR_HOST>?tls=true&authMechanism=SCRAM-SHA-256&retrywrites=false&maxIdleTimeMS=120000
Kommentar
Se till att du tillåterlistning av klient-IP-adressen under nätverksinställningarna på Azure Portal.
CreateUser
Skapar en ny användare i databasen där du kör kommandot. Kommandot createUser
returnerar ett duplicerat användarfel om användaren finns.
Dataadministratörsroll
use admin
db.runCommand(
{
createUser:"yourUserName",
pwd : "yourPassword",
roles : [
{ role:"clusterAdmin",db:"admin" },
{ role:"readWriteAnyDatabase", db:"admin" }
]
}
)
ReadOnly-roll
use admin
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>"
}
)
Släpp användare
Tar bort användaren från databasen där du kör kommandot.
use admin
db.runCommand(
{
dropUser:"<username>"
}
)
Visa användare
Returnerar information om en eller flera användare. 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
}
)
Begränsningar
- Du kan skapa upp till 10 användare/roller per kluster. Om du har ett krav på att lägga till fler användare öppnar du ett supportärende.
- Kommandot
Updateuser
stöder nu endast lösenordsuppdateringar och kan inte ändra andra objektfält. - Kommandot
Roleinfo
stöds inte i förhandsversionen. Du kan också användausersInfo
. - RBAC-stöd för att tilldela roller till specifika databaser eller samlingar stöds ännu inte.