Dans votre commentaire, vous mentionnez que vous utilisez mViewer. La version 0.9.1 de mViewer ne prend pas en charge l'authentification. Selon ce problème sur le mViewer GitHub, cela est résolu dans la version 0.9.2, dont la sortie était prévue en octobre.
Avant de démarrer le nœud avec l'authentification, connectez-vous au nœud et ajoutez un utilisateur. Ensuite, démarrez le nœud avec --auth
et connectez-vous au shell sans mViewer.
À ce stade, vous pouvez vous connecter à la base de données d'administration et authentifier votre utilisateur administrateur :
use admin
db.auth('root', 'root')
Étant donné que vous avez configuré un utilisateur administrateur, qui aura accès à toutes les bases de données, vous devez vous authentifier auprès de la base de données d'administration. Une fois que vous avez fait cela, vous aurez accès à toutes les bases de données. Vous pourrez également créer de nouveaux utilisateurs sur n'importe quelle base de données ou créer de nouveaux utilisateurs en lecture seule pour toutes les bases de données.
Si vous créez un nouvel utilisateur qui n'a accès qu'à une seule base de données, cet utilisateur devra use
cette base de données et db.auth(name, pass)
contre elle.
Si vous créez un nouvel utilisateur qui a un accès en lecture seule à toutes les bases de données, il utilisera use admin
puis db.auth(name, pass)
pour obtenir leur accès en lecture seule à toutes les bases de données
Vous pouvez trouver plus d'informations sur la configuration de l'authentification ici et plus d'informations sur la configuration des utilisateurs ici
Remarque :Lorsque vous démarrez un nœud sans --auth
alors aucune authentification n'est activée. Cela signifie que vous pouvez vous connecter avec le shell et db.auth('root','root')
mais cela ne fera rien en ce qui concerne l'accès. MongoDB ne refusera pas l'accès aux bases de données sans --auth
option de ligne de commande (--keyFile
dans des configurations fragmentées ou des jeux de réplicas)