Docs Menu
Docs Home
/ /
Gestión de Roles

db.revokeRolesFromRole() (método mongosh)

db.revokeRolesFromRole(rolename, roles, writeConcern)

Elimina los roles heredados especificados de un rol.

Importante

Método mongosh

Esta página documenta un método mongosh. Esta no es la documentación para los comandos de base de datos ni para los drivers específicos de lenguajes, como Nodo.js.

Para el comando de base de datos, consulte el revokeRolesFromRole dominio.

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

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

db.revokeRolesFromRole( "<rolename>", [ <roles> ], { <writeConcern> } )

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

Parameter
Tipo
Descripción

rolename

string

El nombre del rol desde el cual se revocarán roles.

roles

arreglo

Los roles heredados a eliminar.

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.revokeRolesFromRole(), 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.

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 el soporte de Atlas para todos los comandos, consulta 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 set de réplicas, db.revokeRolesFromRole() se ejecuta utilizando el nivel de confirmación de escritura "majority" por defecto.

Se debe tener la revokeRole sobre una base de datos para revocar un rol en esa base de datos.

El rol purchaseAgents en la base de datos emea hereda privilegios de varios otros roles, como se enumera en la matriz roles:

{
"_id" : "emea.purchaseAgents",
"role" : "purchaseAgents",
"db" : "emea",
"privileges" : [],
"roles" : [
{
"role" : "readOrdersCollection",
"db" : "emea"
},
{
"role" : "readAccountsCollection",
"db" : "emea"
},
{
"role" : "writeOrdersCollection",
"db" : "emea"
}
]
}

La siguiente operación en db.revokeRolesFromRole() la emea base de datos elimina dos roles del purchaseAgents rol:

use emea
db.revokeRolesFromRole( "purchaseAgents",
[
"writeOrdersCollection",
"readOrdersCollection"
],
{ w: "majority" , wtimeout: 5000 }
)

El rol purchaseAgents ahora contiene solo un rol:

{
"_id" : "emea.purchaseAgents",
"role" : "purchaseAgents",
"db" : "emea",
"privileges" : [],
"roles" : [
{
"role" : "readAccountsCollection",
"db" : "emea"
}
]
}

Volver

db.grantRolesToRole

En esta página