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.
mongoshEsta 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 do MongoDB específica da linguagem.
O método utiliza a seguinte
db.revokeRolesFromRole()sintaxe:db.revokeRolesFromRole( "<rolename>", [ <roles> ], { <writeConcern> } ) O método utiliza os seguintes
db.revokeRolesFromRole()argumentos:ParâmetroTipoDescriçãorolenamestring
O nome da role da qual revogar roles.
rolesarray
As funções herdadas a serem removidas.
writeConcerndocumento
Opcional. 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 é executado, você pode especificar a role com o nome
db.revokeRolesFromRole()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.
Compatibilidade
Esse método está disponível em implantações hospedadas nos seguintes ambientes:
Importante
Este comando não é aceito em clusters do MongoDB Atlas. Para obter informações sobre o suporte do Atlas a todos os comandos, consulte Comandos não suportados.
MongoDB Enterprise: a versão autogerenciada e baseada em assinatura do MongoDB
MongoDB Community: uma versão com código disponível, de uso gratuito e autogerenciada do MongoDB
Comportamento
réplicaSet
Se executar em um conjunto de réplicas, db.revokeRolesFromRole() o será executado usando "majority" o preocupação de gravação de por padrão.
Acesso necessá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 emea banco de dados remove duas roles da purchaseAgents role:
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" } ] }