Docs Menu
Docs Home
/ /
Gestión de usuarios

otorgarRolesToUser (comando de base de datos)

grantRolesToUser

Otorga roles adicionales a un usuario.

Tip

mongoshEn, este comando también se puede ejecutar a través del db.grantRolesToUser() método auxiliar.

Los métodos asistente son convenientes para usuarios de mongosh, pero es posible que no proporcionen el mismo nivel de información que los comandos de base de datos. En los casos en que no se necesite la conveniencia o se requieran campos de retorno adicionales, utiliza el comando de base de datos.

Este comando está disponible en implementaciones alojadas en los siguientes entornos:

  • 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.

Importante

Este comando no es compatible con los clústeres de MongoDB Atlas. Para obtener información sobre el soporte de Atlas para todos los comandos, consulta Comandos no compatibles.

El comando utiliza la siguiente grantRolesToUser sintaxis:

db.runCommand(
{
grantRolesToUser: "<user>",
roles: [ <roles> ],
writeConcern: { <write concern> },
comment: <any>
}
)

El comando toma los siguientes campos:

Campo
Tipo
Descripción

grantRolesToUser

string

El nombre del usuario al que se le otorgarán roles adicionales.

roles

arreglo

Una serie de roles adicionales para otorgar al usuario.

writeConcern

Documento

comment

any

Opcional. Un comentario proporcionado por el usuario para adjuntar a este comando. Una vez configurado, este comentario aparece junto a los registros de este comando en las siguientes ubicaciones:

Un comentario puede ser de cualquier tipo BSON válido (string, objeto, arreglo, etc.).

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 grantRolesToUser, puedes especificar el rol utilizando 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.

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 grantRolesToUser accountUser01 le otorga a read el stock rol en la base de datos y readWrite el products rol en la base de datos.

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

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"
}
]

Volver

dropUser

En esta página