Página inicial do Docs → Desenvolver aplicações → Manual do MongoDB
db.revokeRolesFromRole()
Nesta página
Definição
db.revokeRolesFromRole(rolename, roles, writeConcern)
Remove os roles herdados especificados de um role.
Importante
Método mongosh
Esta página documenta um método
mongosh
. Esta não é a documentação para comandos de banco de dados ou drivers específicos de idioma, como Node.js.Para o comando do banco de dados, consulte o comando
revokeRolesFromRole
.Para drivers de API do MongoDB, consulte a documentação do driver MongoDB específica do idioma.
Para a documentação de shell legada do
mongo
, consulte a documentação para a versão correspondente do MongoDB Server:O método
db.revokeRolesFromRole()
utiliza a seguinte sintaxe:db.revokeRolesFromRole( "<rolename>", [ <roles> ], { <writeConcern> } ) O método
db.revokeRolesFromRole()
utiliza os seguintes argumentos:ParâmetroTipoDescriçãorolename
stringO nome da role da qual revogar roles.roles
variedadeAs funções herdadas a serem removidas.writeConcern
documentoOpcional. O nível da write concern para a operação. Consulte Especificação de write concern.
No campo
roles
, é possível especificar roles incorporadas e roles definidas pelo usuário.Para especificar uma role que existe no mesmo banco de dados onde o
db.revokeRolesFromRole()
é executado, você pode especificar a role com o nome dela:"readWrite" Ou você pode especificar a role com um documento, como feito a seguir:
{ role: "<role>", db: "<database>" } Para especificar uma role existente em outro banco de dados, especifique-a com um documento.
Comportamento
réplicaSet
Se executar em um conjunto de réplicas, o db.revokeRolesFromRole()
será executado usando o write concern de "majority"
por padrão.
Acesso obrigatório
É necessário ter a revokeRole
ação em um banco de dados para revogar um role nesse banco de dados.
Exemplo
O role purchaseAgents
no reconhecimento de data center emea
herda privilégio de vários outros roles, conforme listado na array roles
:
{ "_id" : "emea.purchaseAgents", "role" : "purchaseAgents", "db" : "emea", "privileges" : [], "roles" : [ { "role" : "readOrdersCollection", "db" : "emea" }, { "role" : "readAccountsCollection", "db" : "emea" }, { "role" : "writeOrdersCollection", "db" : "emea" } ] }
A seguinte operação db.revokeRolesFromRole()
no banco de dados emea
remove duas roles da role purchaseAgents
:
use emea db.revokeRolesFromRole( "purchaseAgents", [ "writeOrdersCollection", "readOrdersCollection" ], { w: "majority" , wtimeout: 5000 } )
A role purchaseAgents
agora contém apenas uma role:
{ "_id" : "emea.purchaseAgents", "role" : "purchaseAgents", "db" : "emea", "privileges" : [], "roles" : [ { "role" : "readAccountsCollection", "db" : "emea" } ] }