Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Docs Menu

db.getUsers() (método mongosh)

db.getUsers(<options>)

Devuelve información de todos los usuarios en la base de datos.

db.getUsers() encapsula el comando usersInfo: 1.

El método db.getUsers() puede tomar las siguientes opciones:

db.getUsers( {
showCredentials: <Boolean>,
showCustomData: <Boolean>,
filter: <document>
} )
Campo
Tipo
Descripción

showCredentials

booleano

opcional. Configura en true para mostrar la contraseña encriptada del usuario.

Por defecto, este campo es false.

showCustomData

booleano

opcional. Configúralo en false para omitir el customData del usuario en la salida.

Por defecto, este campo es true.

Novedad 5.2 en la versión.:

filter

Documento

opcional. Un documento que especifica $match las condiciones para devolver información sobre los usuarios que cumplan con las condiciones del filtro.

Para obtener más información, consulta usersInfo.

Este método está disponible en implementaciones alojadas en los siguientes entornos:

Importante

Este comando no es compatible con los clústeres de MongoDB Atlas. Para obtener información sobre el soporte de Atlas para todos los comandos, consulta Comandos no compatibles.

  • MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB

  • MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.

Para ver la información de otro usuario, debe tener la acción viewUser en la base de datos de otro usuario.

Los usuarios pueden ver su propia información.

El método db.getUsers() puede aceptar un documento filter para devolver información sobre los usuarios que cumplan la condición del filtro.

Para ver a todos los usuarios de la base de datos actual que tienen credenciales SCRAM-SHA-256:

db.getUsers({ filter: { mechanisms: "SCRAM-SHA-256" } })

Al ver todos los usuarios, puedes especificar la opción showCredentials pero no las opciones showPrivileges o showAuthenticationRestrictions.

Novedad 5.2 en la versión.:

Para omitir los datos personalizados de los usuarios de la salida, establezca db.getUsers() la showCustomData opción false en.

Utilizar el comando createUser para crear un usuario denominado accountAdmin01 en la base de datos products:

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

El usuario contiene un campo customData de { employeeId: 12345 }.

Para recuperar el usuario pero omitir los datos personalizados de la salida, ejecute db.getUsers() con showCustomData establecido en false:

db.getSiblingDB("products").getUsers( { showCustomData: false } )

Ejemplo de salida:

{
users: [
{
_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' ]
}
],
ok: 1
}