web-dev-qa-db-fra.com

Comment afficher tous les utilisateurs de toutes les bases de données dans mongodb?

Je sais que show users Ou db.getUsers() peut afficher tous les utilisateurs de la base de données actuelle dans mongodb, mais comment lister tous les utilisateurs dans toutes les bases de données pour faciliter la gestion en tant qu'administrateur?

5
thuzhf

Vous pouvez trouver des informations sur tous les utilisateurs dans toutes les bases de données dans system.users collection de base de données admin. Voir la documentation MongoDB pour la collection system.users .

4
Saleem

Essaye ça:

use admin
db.system.users.find({}, { db: 1, user: 1})
1
Alexey Vazhnov

Je sais que show users ou db.getUsers () peut afficher tous les utilisateurs de la base de données actuelle dans mongodb, mais comment répertorier tous les utilisateurs dans toutes les bases de données pour en faciliter la gestion en tant qu'administrateur?

Je voudrais dire que je ne rejette rien de @Saleem. Pour afficher tous les utilisateurs de mongodb, supposons que si vous avez une connexion GUI de mongodb avec leur outil client. vous pouvez également voir tous les utilisateurs dans la base de données mongodb (base de données système et bases de données utilisateur). Dans mon environnement, j'ai Robomongo outil client tiers mongodb, par lequel j'ai connecté mongodb avec localhost et par défaut port de 27017.

Vous connectez simplement mongodb avec Robomongo outil client. Pour afficher tous les utilisateurs de mongodb, les étapes seront les suivantes:

Méthode 1:

  1. Développez votre connexion, cliquez sur le dossier System. enter image description here
  2. Après avoir cliqué sur le dossier Système, par défaut, vous obtiendrez two databases (admin & local) comme ceci

enter image description here

Remarque: Dans mon cas, j'ai déjà créé les bases de données utilisateur comme (MyFirstDB, Zubair, haidar, test).

  1. Développez la base de données admin, allez dans le dossier collections puis cliquez sur le dossier System. Dans le dossier système, il y aura des fichiers metadata comme ça

  2. system.indexes

  3. system.users
  4. system.version

enter image description here

  1. Faites un clic droit sur system.users, Certaines des options apparaîtront dans la nouvelle fenêtre. Parmi eux, choisissez le view Documents.

enter image description here

Après cela, le mongo Shell Sera ouvert comme

enter image description here

Comme vous pouvez le voir la fenêtre ci-dessus mongo Shell sous la colonne clé. Il y a trois utilisateurs comme

test.haidar (Ici test est la base de données et haidar est l'utilisateur)

test.vijay (Ici test est la base de données et vijay est l'utilisateur)

Haidar.skant (Ici Haidar est la base de données et skant est l'utilisateur)

vous pouvez voir ici la commande comme

db.system.users.find()

à travers lequel vous trouverez le all users dans le mongodb.

Méthode 2:

Après la connexion, l'outil client mongodb à Robomongo. Développez la connexion, cliquez sur le dossier System puis cliquez avec le bouton droit sur la base de données admin. enter image description here ouvrir le shell mongodb via l'option comme 'open shell'. Le shell mongodb sera ouvert. il suffit de taper là la requête comme

db.system.users.find()

enter image description here

Exécutez la requête via F5 Ou le bouton Exécuter de l'outil client Robomongo. Et vous obtiendrez tous les utilisateurs dans le mongodb.

Remarque: Dans ma conversion, j'ai discuté de Robomongo outil client. C'est un logiciel tiers gratuit, vous pouvez découvrir ici et ici . Dans ma conversion, j'ai utilisé Robomongo 0.8.4.

J'espère que cela vous aidera, pour trouver tous les utilisateurs dans les utilisateurs de mongodb.

1
Md Haidar Ali Khan