# 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](https://www.ionos.fr/digitalguide/sites-internet/developpement-web/mongodb-presentation-et-comparaison-avec-mysql/ "MongoDB : présentation et comparaison avec MySQL") 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](https://www.ionos.fr/digitalguide/hebergement/aspects-techniques/systeme-de-gestion-de-base-de-donnees-sgbd/ "Système de gestion de base de données (SGBD)") 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](https://www.ionos.fr/digitalguide/sites-internet/developpement-web/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 :

```none
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 :

```none
{
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 :

```none
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 :

```none
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 :

```none
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 :

```none
db.dropUser (username, writeConcern)
```

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

```none
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](https://www.ionos.fr/digitalguide/sites-internet/developpement-web/mongodb-create-collection/)
\- [Base de données MongoDB Create](https://www.ionos.fr/digitalguide/sites-internet/developpement-web/mongodb-create-database/)
\- [Index MongoDB Create](https://www.ionos.fr/digitalguide/sites-internet/developpement-web/mongodb-create-index/)

---


This is a markdown version of: [https://www.ionos.fr/digitalguide/sites-internet/developpement-web/mongodb-create-user/](https://www.ionos.fr/digitalguide/sites-internet/developpement-web/mongodb-create-user/) for AI/LLM consumption.