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

revokeRolesFromRole (comando de base de datos)

revokeRolesFromRole

Elimina los roles heredados especificados de un rol.

Tip

In mongosh, this command can also be run through the db.revokeRolesFromRole() helper method.

Helper methods are convenient for mongosh users, but they may not return the same level of information as database commands. In cases where the convenience is not needed or the additional return fields are required, use the database command.

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

  • MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube

Importante

Este comando no es compatible con los clústeres M0 y Flex. Para obtener más información, 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.

El comando tiene la siguiente sintaxis:

db.runCommand(
{
revokeRolesFromRole: "<role>",
roles: [
{ role: "<role>", db: "<database>" } | "<role>",
...
],
writeConcern: { <write concern> },
comment: <any>
}
)

El comando tiene los siguientes campos:

Campo
Tipo
Descripción

revokeRolesFromRole

string

El rol del que se removerán roles heredados.

roles

arreglo

Los roles heredados a remover.

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.

To specify a role that exists in the same database where revokeRolesFromRole runs, you can either specify the role with the name of the role:

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

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, según se indica en el arreglo 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 revokeRolesFromRole la emea base de datos elimina dos roles del purchaseAgents rol:

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

El rol purchaseAgents ahora contiene un solo rol:

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