157 votes

MongoDB ce sont les valeurs par défaut de l'utilisateur et le mot de passe?

Je suis l'aide de la même chaîne de connexion locale et de la production. Lorsque la chaîne de connexion est mongodb://localhost/mydb

Quelles sont les utilisateur et le mot de passe ? Est-il sûr de garder de cette façon ?

300voto

Camilo Silva Points 3737

Par défaut, mongodb n'a pas activé le contrôle d'accès, donc il n'y a pas de valeur par défaut de l'utilisateur ou de mot de passe.

Pour activer le contrôle d'accès, utilisez l'option de ligne de commande --auth ou de sécurité.l'autorisation de configuration le fichier de configuration.

Vous pouvez utiliser la procédure suivante ou reportez-vous à Activation de l'Authentification dans le MongoDB docs.

Procédure

  1. Début MongoDB sans contrôle d'accès.

    mongod --port 27017 --dbpath /data/db1
    
  2. Se connecter à l'instance.

    mongo --port 27017
    
  3. Créer l'utilisateur administrateur.

    use admin
    db.createUser(
      {
        user: "myUserAdmin",
        pwd: "abc123",
        roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
      }
    )
    
  4. Re-départ de la MongoDB exemple avec le contrôle d'accès.

    mongod --auth --port 27017 --dbpath /data/db1
    
  5. Authentifier en tant qu'utilisateur administrateur.

    mongo --port 27017 -u "myUserAdmin" -p "abc123" \
      --authenticationDatabase "admin"
    

23voto

Razvan Dumitru Points 3865

En plus avec ce que @Camilo Silva déjà mentionné, si vous voulez donner un accès gratuit à créer des bases de données, de lire, d'écrire des bases de données, etc, mais vous ne voulez pas créer un rôle de racine, vous pouvez changer la 3ème étape à la suivante:

use admin
db.createUser(
  {
    user: "myUserAdmin",
    pwd: "abc123",
    roles: [ { role: "userAdminAnyDatabase", db: "admin" }, 
             { role: "dbAdminAnyDatabase", db: "admin" }, 
             { role: "readWriteAnyDatabase", db: "admin" } ]
  }
)

4voto

Francis Points 686

Pour MongoDB plus tôt que 2.6, la commande pour ajouter un utilisateur root est - addUser (par exemple)

db.addUser({user:'admin',pwd:'<password>',roles:["root"]})

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X