La mise en place de l’authentification et de l’autorisation dans MongoDB est un processus qui comprend plusieurs étapes. Vous devrez créer des utilisateurs, affecter des rôles à ces utilisateurs et ensuite configurer MongoDB pour utiliser l’authentification.
Voici les étapes détaillées :
1. Connectez-vous à MongoDB
Ouvrez une console et connectez-vous à MongoDB en utilisant la commande suivante :
```
mongo
```
1. Créez un nouvel utilisateur administrateur
Une fois connecté, la première chose que vous devez faire est de créer un nouvel utilisateur administrateur. Pour ce faire, utilisez la commande suivante :
```
use admin
db.createUser(
{
user: “myUserAdmin”,
pwd: “abc123”,
roles: [ { role: “userAdminAnyDatabase”, db: “admin” } ]
}
)
```
1. Activez l’authentification
Ensuite, vous devez activer l’authentification sur MongoDB. Pour faire cela, vous devrez éditer le fichier de configuration de MongoDB. Ce fichier est généralement situé à ‘/etc/mongod.conf’ sur un système Linux. Dans la section `security`, ajoutez ‘authorization: enabled’. Le fichier ressemblerait à ceci :
```
security:
authorization: enabled
```
Sauvegardez le fichier et redémarrez MongoDB.
1. Connectez-vous avec l’utilisateur administrateur
Maintenant que l’authentification est activée, vous devez vous connecter à MongoDB avec l’utilisateur administrateur que vous avez créé précédemment. Pour ce faire, utilisez la commande suivante :
```
mongo -u “myUserAdmin” -p “abc123” —authenticationDatabase “admin“
```
1. Créez des utilisateurs supplémentaires
Une fois connecté en tant qu’administrateur, vous pouvez créer des utilisateurs supplémentaires. Par exemple, pour créer un utilisateur avec des droits de lecture et d’écriture sur une base de données spécifique, utilisez la commande suivante :
```
use myDatabase
db.createUser(
{
user: “myUser”,
pwd: “abc123”,
roles: [ { role: “readWrite”, db: “myDatabase” } ]
}
)
```
Maintenant, cet utilisateur peut se connecter à la base de données “myDatabase” avec les droits de lecture et d’écriture. Notez que le rôle “readWrite” donne à l’utilisateur le droit de lire et d’écrire dans la base de données, mais pas de créer ou de supprimer des collections ou des bases de données.
Cela illustre les étapes de base pour mettre en place l’authentification et l’autorisation avec MongoDB. Vous pouvez ajouter autant d’utilisateurs que vous le souhaitez avec différents rôles en répétant l’étape 5. Conservez le nom d’utilisateur et le mot de passe de chaque utilisateur dans un endroit sûr pour pouvoir vous connecter à la base de données en tant qu’utilisateur spécifique à l’avenir.