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

db.grantRolesToUser()

Nesta página

  • Definição
  • Comportamento
  • Acesso necessário
  • Exemplo
db.grantRolesToUser(username, roles, writeConcern)

Concede funções adicionais a um usuário.

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 do banco de dados, consulte o comando grantRolesToUser .

Para drivers de API do MongoDB, consulte a documentação do driver do MongoDB específica da linguagem.

Para a documentação de shell legada do mongo, consulte a documentação para a versão correspondente do MongoDB Server:

mongo shell v4.4

O método db.grantRolesToUser() utiliza a seguinte sintaxe:

db.grantRolesToUser( "<username>", [ <roles> ], { <writeConcern> } )

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

Parâmetro
Tipo
Descrição
user
string
O nome do usuário a quem conceder funções.
roles
array
Uma série de funções adicionais a serem concedidas ao usuário.
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.grantRolesToUser() é 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.

O método db.grantRolesToUser() encapsula o comando grantRolesToUser.

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

Você deve ter grantRole como uma ação em um banco de dados para conceder uma função neste banco de dados.

Dado um usuário accountUser01 no banco de dados do products com os seguintes roles:

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

A operação db.grantRolesToUser() a seguir fornece a accountUser01 a função readWrite no banco de dados products e a função read no banco de dados stock.

use products
db.grantRolesToUser(
"accountUser01",
[ "readWrite" , { role: "read", db: "stock" } ],
{ w: "majority" , wtimeout: 4000 }
)

O usuário accountUser01 no banco de dados de products agora tem os seguintes roles:

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

Voltar

db.getUsers()

Próximo

db.removeUser()