Definición
db.getUser(username, args)Devuelve la información de un usuario específico. Ejecute este método en la base de datos del usuario. Si el usuario no existe en la base de datos,
db.getUser()nulldevuelve.El método
db.getUser()tiene los siguientes parámetros:db.getUser( "<username>", { showCredentials: <Boolean>, showCustomData: <Boolean>, showPrivileges: <Boolean>, showAuthenticationRestrictions: <Boolean>, filter: <document> } ) ParameterTipoDescripciónusernamestring
El nombre de usuario para el cual recuperar información.
argsDocumento
Opcional. Un documento que especifica argumentos adicionales.
El documento
argsadmite los siguientes campos:CampoTipoDescripciónshowCredentialsbooleano
Opcional. Establezca en
truepara mostrar el hash de la contraseña del usuario.De forma predeterminada, este campo es
false.showCustomDatabooleano
Opcional. Establezca en
falsepara omitir elcustomDatadel usuario en la salida.De forma predeterminada, este campo es
true.Nuevo en la versión 5.2.
showPrivilegesbooleano
Opcional. Establézcalo en
truepara mostrar el conjunto completo de privilegios del usuario, incluida información ampliada sobre los roles heredados.De forma predeterminada, este campo es
false.Si está visualizando todos los usuarios, no puede especificar este campo.
showAuthenticationRestrictionsbooleano
Opcional. Establezca en
truepara mostrar las restricciones de autenticación del usuario.De forma predeterminada, este campo es
false.Si está visualizando todos los usuarios, no puede especificar este campo.
filterDocumento
Opcional. Un documento que especifica
$matchcondiciones de etapa para devolver información de los usuarios que coinciden con las condiciones del filtro.db.getUser()envuelve elusersInfo: <username>comando.Para obtener detalles sobre la salida,
usersInfoconsulte.
Compatibilidad
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.
Acceso requerido
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.
Ejemplos
Las siguientes operaciones devuelven información sobre un usuario de ejemplo appClient en una base de datos accounts:
use accounts db.getUser("appClient")
Ejemplo de salida:
{ _id: 'accounts.appClient', userId: UUID("1c2fc1bf-c4dc-4a22-8b04-3971349ce0dc"), user: 'appClient', db: 'accounts', roles: [], mechanisms: [ 'SCRAM-SHA-1', 'SCRAM-SHA-256' ] }
Omitir datos personalizados de la salida
Nuevo en la 5.2 versión: Para omitir los datos personalizados de un usuario de la salida, configure db.getUser() la showCustomData opción false en.
Utilice el comando para crear un usuario createUser llamado accountAdmin01 en la products base de datos:
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.getUser() con showCustomData establecido false en:
db.getSiblingDB("products").getUser( "accountAdmin01", { showCustomData: false } )
Ejemplo de salida:
{ _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' ] }