db.grantRolesToRole()
Definição
db.grantRolesToRole(rolename, roles, writeConcern)
Grants roles to a user-defined role.
Importante
Método mongosh
Esta página documenta um método
mongosh
. Esta não é a documentação para comandos de banco de dados nem drivers específicos de linguagem, como Node.js.Para o comando do banco de dados, consulte o comando
grantRolesToRole
.Para drivers de API do MongoDB, consulte a documentação do driver do MongoDB específica da linguagem.
O método
db.grantRolesToRole()
utiliza a seguinte sintaxe:db.grantRolesToRole( "<rolename>", [ <roles> ], { <writeConcern> } ) The
db.grantRolesToRole()
method takes the following arguments:ParâmetroTipoDescriçãorolename
string
The name of the role to which to grant sub roles.
roles
array
An array of roles from which to inherit.
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.grantRolesToRole()
é 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.
Compatibilidade
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
Comportamento
réplicaSet
Se executado em um conjunto de réplicas, db.grantRolesToRole()
é executado usando a preocupação de gravação "majority"
por padrão.
Escopo
A role can inherit privileges from other roles in its database. A role
created on the admin
database can inherit privileges from roles in
any database.
Acesso necessário
Você deve ter grantRole
como uma ação em um banco de dados para conceder uma função neste banco de dados.
Exemplo
The following db.grantRolesToRole()
operation updates the
productsReaderWriter
role in the products
database to inherit the privileges of productsReader
role:
use products db.grantRolesToRole( "productsReaderWriter", [ "productsReader" ], { w: "majority" , wtimeout: 5000 } )