Menu Docs
Página inicial do Docs
/
Manual do MongoDB
/ / /

db.revokeRolesFromRole()

Nesta página

  • Definição
  • Compatibilidade
  • Comportamento
  • Acesso necessário
  • Exemplo
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 de comandos de banco de dados nem drivers específicos de linguagem, como Node.js.

Para o comando de banco de dados 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 db.revokeRolesFromRole() utiliza a seguinte sintaxe:

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

O método db.revokeRolesFromRole() utiliza os seguintes argumentos:

Parâmetro
Tipo
Descrição

rolename

string

O nome da role da qual revogar roles.

roles

array

As funções herdadas a serem removidas.

writeConcern

documento

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 função que existe no mesmo banco de dados onde o db.revokeRolesFromRole() é executado, você pode especificar a função com o próprio 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.

Esse método está disponível em implantações hospedadas nos seguintes ambientes:

Importante

Este comando não é suportado em clusters MongoDB Atlas . Para obter informações sobre o suporte do Atlas para 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

Se executado em um conjunto de réplicas, db.revokeRolesFromRole() é executado usando a preocupação de gravação "majority" por padrão.

É necessário ter a revokeRole ação em um banco de dados para revogar um role nesse banco de dados.

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

Voltar

db.grantRolesToRole