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

db.getUser()

Nesta página

  • Definição
  • Acesso necessário
  • Exemplos
db.getUser(username, args)

Retorna informações do usuário para um usuário especificado. Execute este método no banco de dados do usuário. Se o usuário não existir no banco de dados, db.getUser() retornará null.

O método db.getUser() tem os seguintes parâmetros:

db.getUser( "<username>", {
showCredentials: <Boolean>,
showCustomData: <Boolean>,
showPrivileges: <Boolean>,
showAuthenticationRestrictions: <Boolean>,
filter: <document>
} )
Parâmetro
Tipo
Descrição
username
string
O nome do usuário para o qual recuperar as informações.
args
documento
Opcional. Um documento que especifica argumentos adicionais.

O documento args aceita os seguintes campos:

Campo
Tipo
Descrição
showCredentials
booleano

Opcional. Defina como true para exibir o hash da senha do usuário.

Por padrão, este campo é false.

showCustomData
booleano

Opcional. Defina como false para omitir o customData do usuário da saída.

Por padrão, este campo é true.

Novidades na versão 5.2.

showPrivileges
booleano

Opcional. Defina como true para mostrar o conjunto completo de privilégios do usuário, incluindo informações expandidas para as funções herdadas.

Por padrão, este campo é false.

Se estiver visualizando todos os usuários, você não poderá especificar este campo.

showAuthenticationRestrictions
booleano

Opcional. Defina como true para mostrar as restrições de autenticação do usuário.

Por padrão, este campo é false.

Se estiver visualizando todos os usuários, você não poderá especificar este campo.

filter
documento
Opcional. Um documento que especifica condições de estágio $match para retornar informações para usuários que correspondem às condições de filtro.

db.getUser() encapsula o comando usersInfo: <username>.

Para detalhes sobre saída, consulte usersInfo.

Para visualizar as informações de outro usuário, você deve ter a viewUser ação no banco de dados do outro usuário.

Os usuários podem ver suas próprias informações.

As operações a seguir retornam informações sobre um usuário appClient de exemplo em um banco de dados accounts:

use accounts
db.getUser("appClient")

Saída de exemplo:

{
_id: 'accounts.appClient',
userId: UUID("1c2fc1bf-c4dc-4a22-8b04-3971349ce0dc"),
user: 'appClient',
db: 'accounts',
roles: [],
mechanisms: [ 'SCRAM-SHA-1', 'SCRAM-SHA-256' ]
}

Novo na versão 5.2: para omitir os dados personalizados de um usuário da saída db.getUser(), defina a opção showCustomData como false.

Utilize o comando createUser para criar um usuário denominado accountAdmin01 no banco de dados do products:

db.getSiblingDB("products").runCommand( {
createUser: "accountAdmin01",
pwd: passwordPrompt(),
customData: { employeeId: 12345 },
roles: [ { role: 'readWrite', db: 'products' } ]
} )

O usuário contém um campo customData de { employeeId: 12345 }.

Para recuperar o usuário e omitir os dados personalizados da saída, execute db.getUser() com showCustomData configurado como false:

db.getSiblingDB("products").getUser(
"accountAdmin01",
{ showCustomData: false }
)

Saída de exemplo:

{
_id: 'products.accountAdmin01',
userId: UUID("0955afc1-303c-4683-a029-8e17dd5501f4"),
user: 'accountAdmin01',
db: 'products',
roles: [ { role: 'readWrite', db: 'products' } ],
mechanisms: [ 'SCRAM-SHA-1', 'SCRAM-SHA-256' ]
}

Voltar

db.dropAllUsers