Menu Docs

Página inicial do DocsDesenvolver aplicaçõesManual do MongoDB

Revogar funções da função

Nesta página

  • Definição
  • Sintaxe
  • Campos de comando
  • Acesso obrigatório
  • Exemplo
revokeRolesFromRole

Remove os roles herdados especificados de um role.

Dica

Em mongosh, este comando também pode ser executado por meio do método auxiliar db.revokeRolesFromRole() .

Os métodos auxiliares são convenientes para os usuários mongosh , mas podem não retornar o mesmo nível de informações que os comandos do banco de dados. Nos casos em que a conveniência não for necessária ou os campos de retorno adicionais forem necessários, use o comando de banco de dados.

O comando tem a seguinte sintaxe:

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

O comando tem os seguintes campos:

Campo
Tipo
Descrição
revokeRolesFromRole
string
O role do qual remover os roles herdados.
roles
variedade
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.

comment
qualquer

Opcional. Um comentário fornecido pelo usuário para anexar a este comando. Depois de definido, esse comentário aparece junto com os registros desse comando nos seguintes locais:

Um comentário pode ser qualquer tipo BSON válido (string, inteiro, objeto, array etc).

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

É 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 revokeRolesFromRole no banco de dados emea remove duas roles da role purchaseAgents :

use emea
db.runCommand( { revokeRolesFromRole: "purchaseAgents",
roles: [
"writeOrdersCollection",
"readOrdersCollection"
],
writeConcern: { 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"
}
]
}
← revogar privilégios da função