MongoDB Create User : ajouter un nouvel utilisateur

La fonction MongoDB Create User permet d’ajouter des nouveaux utilisateurs à une base de données et de leur attribuer des rôles. Cette méthode fonctionne également pour les personnes disposant de droits d’administrateur. Si vous souhaitez supprimer quelqu’un, utilisez la commande MongoDB Drop User.

Qu’est-ce que MongoDB Create User ?

La base de données NoSQL MongoDB est une très bonne solution pour le stockage et la gestion de vos propres données. Le système de gestion de base de données est également adapté à la collaboration au sein de petites ou de grandes équipes. Toutefois, pour que vous puissiez toujours garder une vue d’ensemble sur les personnes qui ont accès à vos données, créez vous-même de nouveaux utilisateurs et attribuez-leur ensuite certains droits. La commande appropriée parmi les commandes MongoDB est Create User. Cette méthode vous permet non seulement d’ajouter un nouvel utilisateur, mais aussi d’attribuer directement un ou plusieurs rôles à cette personne. Il est également possible de lui définir un mot de passe.

La syntaxe de MongoDB Create User

La syntaxe de la commande MongoDB Create User se présente en principe comme suit :

db.createUser (user, writeConcern)

En plus de la commande createUser proprement dite, deux autres informations sont déjà saisies ici : « user » est un document obligatoire contenant l’authentification du nouvel utilisateur, ainsi que toutes les autres données. « writeConcern » indique le niveau d’autorisation de la personne. Cette information est cependant facultative.

L’utilisateur et ses paramètres

Le document « user », que vous devez toujours insérer dans MongoDB pour la méthode « Create User » contient plusieurs paramètres importants :

  • user : cette chaîne contient le nom du nouvel utilisateur et est facultative.
  • pwd : sous « pwd », vous définissez un mot de passe pour la nouvelle personne dans Create User. Cette information est toujours nécessaire, sauf si vous utilisez la commande sur une base de données externe.
  • customData : ce document est facultatif et contient, si nécessaire, toutes les informations supplémentaires souhaitées sur un utilisateur. Vous devez par exemple y indiquez le vrai nom de l’utilisateur en plus du pseudonyme utilisé.
  • roles : vous attribuez ici à un utilisateur des rôles intégrés et définis par l’utilisateur. Les informations sont saisies dans un Array. Le nouvel utilisateur n’obtiendra aucun rôle si vous laissez le champ vide.

Le document « user » se présente par exemple comme suit :

{
user: "<nom d’utilisateur="">",</nom>
pwd: "<mot de="" passe="">",</mot>
customData: { <vrai nom,="" id=""> },</vrai>
roles: [ { role: "<rôle>", db: "<base de="" données="">" } ]</rôle>
}

Si vous travaillez avec MongoDB et Create User et que vous utilisez un utilisateur déjà existant, vous recevrez un message d’erreur. Cela permet d’éviter les chevauchements. Pour afficher tous les utilisateurs d’une base de données, utilisez dans MongoDB soit Show Users, soit db.getUsers ().

Attribuer des rôles avec MongoDB Create User

En principe, il est recommandé d’attribuer dès le départ différents rôles aux utilisateurs. Vous travaillez ainsi plus efficacement en équipe tout en protégeant les données sensibles contre les accès indésirables. Si vous souhaitez définir des rôles, vous pouvez le faire en enregistrant le nom du rôle, à condition qu’il figure dans la même base de données. Sinon, créez un document afin de définir le rôle qui existe déjà dans une autre base de données. Voici comment donner plusieurs rôles à une personne avec la commande MongoDB Create User :

use exemple
db.createUser(
{
user: "username",
pwd: "password",
roles: [ "read", "dbAdmin" ]
}
);

Dans cet exemple, nous avons maintenant attribué les rôles « read » et « dbAdmin » au nouvel utilisateur ou à la nouvelle utilisatrice.

MongoDB Create User sans attribuer de rôles

Si vous ne souhaitez pas attribuer de rôle à un utilisateur, c’est également possible. Néanmoins, vous devez indiquer clairement cette information pour Create User. Voici comment cela fonctionne :

use exemple
db.createUser(
{
user: "username",
pwd: "password",
roles: [ ]
}
);

Si vous laissez les parenthèses vides, l’utilisateur n’obtiendra aucun rôle.

MongoDB Create User pour Admins

La fonction MongoDB Create User permet également de créer des utilisateurs chargés de tâches administratives. Cette personne aura alors également accès à la configuration de votre base de données. La procédure est similaire au code déjà connu :

use admin
db.createUser(
{
user: "deuxième_administrateur",
pwd: "mot_de_passe_administrateur",
roles: [ { role: "readWrite", db: "config" },
"clusterAdmin"
]
}
);

Supprimer un utilisateur avec MongoDB Drop User

Vous avez également la possibilité de supprimer à tout moment un utilisateur. La commande appropriée pour cela est Drop User et ressemble à Create User dans sa structure. Voici sa syntaxe :

db.dropUser (username, writeConcern)

Vous avez ici seulement besoin d’indiquer le nom d’utilisateur :

use exemple
db.dropUser ("username")

Avant de supprimer un utilisateur avec des privilèges administratifs, vous devez d’abord vous assurer qu’au moins une autre personne dispose des autorisations nécessaires.

Conseil

Vous souhaitez en savoir plus sur l’utilisation du système de gestion de base de données MongoDB ? Dans ce cas, nous vous recommandons de lire nos autres articles du Digital Guide de IONOS sur ce sujet :
- Collection MongoDB Create
- Base de données MongoDB Create
- Index MongoDB Create