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 ?
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 ?
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.
Début MongoDB sans contrôle d'accès.
mongod --port 27017 --dbpath /data/db1
Se connecter à l'instance.
mongo --port 27017
Créer l'utilisateur administrateur.
use admin
db.createUser(
{
user: "myUserAdmin",
pwd: "abc123",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)
Re-départ de la MongoDB exemple avec le contrôle d'accès.
mongod --auth --port 27017 --dbpath /data/db1
Authentifier en tant qu'utilisateur administrateur.
mongo --port 27017 -u "myUserAdmin" -p "abc123" \
--authenticationDatabase "admin"
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" } ]
}
)
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.