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

system.users Collection em sistemas autogerenciados

Nesta página

  • system.users Esquema
  • Exemplo

A coleção system.users no banco de dados admin armazena informações deautenticação e autorização do usuário . Para gerenciar dados nesta coleção, o MongoDB fornece comandos de gerenciamento de usuário.

Os documentos na coleção system.users têm o seguinte esquema:

{
_id: <system defined id>,
userId : <system assigned UUID>,
user: "<name>",
db: "<database>",
credentials: { <authentication credentials> },
roles: [
{ role: "<role name>", db: "<database>" },
...
],
customData: <custom information>,
authenticationRestrictions : [ <documents> ]
}

Cada documento system.users tem os seguintes campos:

admin.system.users.userId

Um identificador exclusivo para o usuário atribuído ao usuário na criação.

admin.system.users.user

O nome de usuário. Um usuário existe no contexto de um único banco de dados lógico (consulte admin.system.users.db), mas pode ter acesso em outros bancos de dados por papéis especificados na array roles .

admin.system.users.db

O banco de dados de autenticação associado ao usuário. Os privilégios do usuário não são necessariamente limitados a este banco de dados. O usuário pode ter privilégios em bancos de dados adicionais por meio da array roles .

admin.system.users.credentials

Informações de autenticação do usuário. Para usuários com credenciais de autenticação armazenadas externamente, como usuários que utilizam Kerberos ou x.509 certificados para autenticação, o documento system.users para esse usuário não contém o campo credentials . Para credenciais de usuário SCRAM , as informações incluem o mecanismo, a contagem de iteração e os parâmetros de autenticação.

Dica

Veja também:

admin.system.users.roles

Uma série de funções concedidas ao usuário. A array contém funções integradas e funções definidas pelo usuário.

Um documento de função tem a seguinte sintaxe:

{ role: "<role name>", db: "<database>" }

Um documento de função tem os seguintes campos:

admin.system.users.roles[n].role

O nome de um papel. Um papel pode ser um papel embutido fornecido pelo MongoDB ou um papel personalizado definido pelo usuário.

admin.system.users.roles[n].db

O nome do banco de dados onde o papel é definido.

Ao especificar uma função usando os comandos de gerenciamento de funções ou de usuários, você pode especificar apenas o nome da função (por exemplo "readWrite") se o papel que existe no banco de dados no qual o comando é executado.

admin.system.users.customData

Informações personalizadas opcionais sobre o usuário.

admin.system.users.authenticationRestrictions

Um conjunto de restrições de autenticação que o servidor impõe para o usuário. A lista de array contém endereços IP e faixas CIDR a partir das quais o usuário tem permissão para se conectar ao servidor ou a partir das quais o servidor pode aceitar usuários.

Considere o seguinte documento na coleção system.users:

{
"_id" : "home.Kari",
"userId" : UUID("ec1eced7-055a-4ca8-8737-60dd02c52793"),
"user" : "Kari",
"db" : "home",
"credentials" : {
"SCRAM-SHA-1" : {
"iterationCount" : 10000,
"salt" : "S/xM2yXFosynbCu4GzFDgQ==",
"storedKey" : "Ist4cgpEd1vTbnRnQLdobgmOsBA=",
"serverKey" : "e/0DyzS6GPboAA2YNBkGYm87+cg="
},
"SCRAM-SHA-256" : {
"iterationCount" : 15000,
"salt" : "p1G+fZadAeYAbECN8F/6TMzXGYWBaZ3DtWM0ig==",
"storedKey" : "LEgLOqZQmkGhd0owm/+6V7VdJUYJcXBhPUvi9z+GBfk=",
"serverKey" : "JKfnkVv9iXwxyc8JaapKVwLPy6SfnmB8gMb1Pr15T+s="
}
},
"authenticationRestrictions" : [
{ "clientSource" : [ "69.89.31.226" ], "serverAddress" : [ "172.16.254.1" ] }
],
"customData" : {
"zipCode" : "64157"
},
"roles" : [
{
"role" : "read",
"db" : "home"
},
{
"role" : "readWrite",
"db" : "test"
}
]
}

O documento mostra que o banco de dados de autenticação de um usuário Kari é o banco de dados home. Kari tem a função read no banco de dados home, a função readWrite no banco de dados test.

Voltar

collection system.roles