dropRole
Definição
dropRole
Exclui um roledefinido pelo usuário do banco de banco de dados no qual você executa o comando.
Dica
Em
mongosh
, esse comando também pode ser executado por meio do método auxiliardb.dropRole()
.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.
Compatibilidade
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
Sintaxe
O comando tem a seguinte sintaxe:
db.runCommand( { dropRole: "<role>", writeConcern: { <write concern> }, comment: <any> } )
Campos de comando
O comando tem os seguintes campos:
Campo | Tipo | Descrição |
---|---|---|
| string | O nome do role definido pelo usuário a ser removido do reconhecimento de data center. |
| documento | Opcional. O nível da write concern para a operação. Consulte Especificação de write concern. |
| 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). |
Comportamento
Autenticação
Quando um papel é descartado em um mongod
, os usuários autenticados anteriormente permanecem conectados ao reconhecimento de data center, mas perdem imediatamente o privilégio do papel.
Quando uma função é descartada em um mongos
, os usuários autenticados anteriormente permanecem conectados ao reconhecimento de data center, mas perdem o privilégio da função quando o cache é atualizado. O cache é atualizado automaticamente após o tempo especificado com o parâmetro userCacheInvalidationIntervalSecs
ou manualmente quando você executa o comando invalidateUserCache
.
Acesso necessário
Você deve ter a dropRole
ação em um banco de dados para eliminar um role desse banco de dados.
Exemplo
As seguintes operações removem o role readPrices
do reconhecimento de data center products
:
use products db.runCommand( { dropRole: "readPrices", writeConcern: { w: "majority" } } )