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

revokeRolesFromUser

Nesta página

  • Definição
  • Compatibilidade
  • Sintaxe
  • Campos de comando
  • Acesso necessário
  • Exemplo
revokeRolesFromUser

Remove um ou mais roles de um usuário no banco de dados onde os roles existem.

Dica

No mongosh, este comando também pode ser executado pelo método assistente do db.revokeRolesFromUser().

Os métodos auxiliares são práticos 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 praticidade não for necessária ou os campos de retorno adicionais forem necessários, use o comando de banco de dados.

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

  • MongoDB Atlas: o serviço totalmente gerenciado para implantações do MongoDB na nuvem

Importante

Este comando não é suportado em M0, M2, M5 e M10+ clusters. Para obter mais informações, 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

O comando tem a seguinte sintaxe:

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

O comando utiliza os seguintes campos:

Campo
Tipo
Descrição

revokeRolesFromUser

string

O usuário do qual remover roles.

roles

array

As roles a serem removidas do usuário.

writeConcern

documento

Opcional. O nível da write concern para a operação. Consulte Especificação de write concern.

comment

any

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 função que existe no mesmo banco de dados onde o revokeRolesFromUser é 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.

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

O usuário do products accountUser01 reconhecimento de data center do tem os seguintes roles:

"roles" : [
{ "role" : "assetsReader",
"db" : "assets"
},
{ "role" : "read",
"db" : "stock"
},
{ "role" : "readWrite",
"db" : "products"
}
]

O comando revokeRolesFromUser a seguir remove as duas roles do usuário: a role read no banco de dados stock e a role readWrite no banco de dados products , que também é o banco de dados no qual o comando é executado:

use products
db.runCommand( { revokeRolesFromUser: "accountUser01",
roles: [
{ role: "read", db: "stock" },
"readWrite"
],
writeConcern: { w: "majority" }
} )

O usuário accountUser01 no banco de dados products agora tem apenas um role restante:

"roles" : [
{ "role" : "assetsReader",
"db" : "assets"
}
]

Voltar

grantRolesToUser