Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Docs Menu

db.grantRolesToUser() (método mongosh)

db.grantRolesToUser(username, roles, writeConcern)

Otorga roles adicionales a un usuario.

Importante

Método mongosh

Esta página documenta un método mongosh. No se trata de la documentación de comandos de base de datos ni de controladores específicos de lenguajes de programación, como Node.js.

Para el comando de base de datos, consulta el comando grantRolesToUser.

Para los drivers de API de MongoDB, consulte la documentación del driver de MongoDB específica del lenguaje.

El método db.grantRolesToUser() utiliza la siguiente sintaxis:

db.grantRolesToUser( "<username>", [ <roles> ], { <writeConcern> } )

El método db.grantRolesToUser() toma los siguientes argumentos:

Parameter
Tipo
Descripción

user

string

El nombre del usuario al que se le van a conceder los roles.

roles

arreglo

Un arreglo de roles adicionales para conceder al usuario.

writeConcern

Documento

En el campo roles, puede especificar tanto roles de funcionalidad incorporada como roles definidos por el usuario.

Para especificar un rol que existe en la misma base de datos donde se ejecuta db.grantRolesToUser(), puede especificar el rol con el nombre del rol:

"readWrite"

O puede especificar el rol con un documento, como en:

{ role: "<role>", db: "<database>" }

Para especificar un rol que existe en una base de datos diferente, especifique el rol mediante un documento.

El método db.grantRolesToUser() envuelve el comando grantRolesToUser.

Este método está disponible en implementaciones alojadas en los siguientes entornos:

Importante

Este comando no es compatible con los clústeres de MongoDB Atlas. Para obtener información sobre la compatibilidad de Atlas con todos los comandos, consulte Comandos no compatibles.

  • MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB

  • MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.

Si se ejecuta en un conjunto de réplicas, db.grantRolesToUser() se ejecuta utilizando la preocupación de escritura "majority" de forma predeterminada.

Debes tener la grantRole acción en una base de datos para conceder un rol en esa base de datos.

Dado un usuario accountUser01 en la base de datos products con los siguientes roles:

"roles" : [
{ "role" : "assetsReader",
"db" : "assets"
}
]

La siguiente operación db.grantRolesToUser() le da a accountUser01 el rol readWrite en la base de datos products y el rol read en la base de datos stock.

use products
db.grantRolesToUser(
"accountUser01",
[ "readWrite" , { role: "read", db: "stock" } ],
{ w: "majority" , wtimeout: 4000 }
)

El usuario accountUser01 en la base de datos products ahora tiene los siguientes roles:

"roles" : [
{ "role" : "assetsReader",
"db" : "assets"
},
{ "role" : "read",
"db" : "stock"
},
{ "role" : "readWrite",
"db" : "products"
}
]