Configuration d’une base de données KeePass pour différents utilisateurs et rôles

Configuration d’une base de données KeePass pour différents utilisateurs et rôles

Introduction

KeePass est une excellente base de données ouverte de mots de passe, offrant de nombreuses fonctionnalités, plugins et forks. Cependant, il lui manque une fonctionnalité importante : la prise en charge des utilisateurs et des mots de passe. Comment pouvons-nous donc créer une base de données maître avec tous les utilisateurs et mots de passe, et accorder des permissions de lecture/écriture à différents utilisateurs ou départements ? Eh bien, il existe deux façons de résoudre ce problème.

Méthode 1 : Utiliser un logiciel compatible avec KeePass

La première méthode consiste à acheter un logiciel compatible avec KeePass, tel que LastPass, Keeper, Pleasant, enpass, 1password, etc. Faites quelques recherches, inscrivez-vous à un essai de chaque logiciel, puis décidez celui qui convient le mieux à votre organisation ou à votre cas d’utilisation.

Méthode 2 : Utiliser le plugin KeePassSubsetExport

La deuxième méthode consiste à utiliser le plugin KeePassSubsetExport, une solution économique adaptée aux particuliers et aux petites et moyennes entreprises (PME).

Ce plugin fonctionne de manière surprenante. Nous avons une base de données KeePass maître avec toutes les entrées, puis, en fonction des balises de chaque entrée, KeePassSubsetExport crée une base de données KeePass distincte en utilisant ces balises et quelques paramètres spécifiques. Ces exports KeePass sont très pratiques, car ils peuvent être créés à différents emplacements, avec des noms et des mots de passe de bases de données différents. Ainsi, nous pouvons avoir différentes bases de données KeePass pour le développement, les systèmes, le réseau, le devops, la gestion, etc.

Dans cet article, je vais vous expliquer étape par étape comment configurer une nouvelle base de données KeePass pour cette tâche.

Étape 1 : Installation de KeePass pour Windows

Tout d’abord, installons KeePass pour Windows. Malheureusement, la version originale de KeePass est la seule que je connaisse qui propose une prise en charge des plugins. Une fois l’installation terminée, nous allons créer une nouvelle base de données appelée RootDatabase, que nous enregistrerons dans un nouveau dossier nommé KDB dans Mes documents.

Étape 2 : Installation du plugin KeePassSubsetExport

Maintenant, installons le plugin KeePassSubsetExport dans KeePass. Pour cela, rendez-vous sur la page du projet KeePassSubsetExport : https://github.com/lukeIam/KeePassSubsetExport/releases et téléchargez le fichier KeePassSubsetExport.plgx correspondant à la dernière version.

Une fois téléchargé, déplacez-le dans le dossier des plugins de KeePass (généralement C:/Program Files (x86)/KeePass Password Safe 2/Plugins).

Étape 3 : Charger le plugin KeePassSubsetExport

KeePass charge ses plugins au démarrage. Par conséquent, fermons et rouvrons KeePass pour pouvoir utiliser le nouveau plugin.

Étape 4 : Création d’entrées et ajout de balises

Maintenant, remplissons quelques entrées dans KeePass et ajoutons-y des balises. Nous pouvons facilement copier les deux exemples du dossier racine en appuyant sur Ctrl-k avec les deux entrées sélectionnées, puis en les déplaçant vers le dossier Windows et en renommant les entrées en “DEV” (pour développement). Ajoutons ensuite la balise DEV à ces deux entrées en les sélectionnant toutes les deux, en cliquant avec le bouton droit de la souris et en choisissant Modifier l’entrée (rapide) > Ajouter une balise > Nouvelle balise > DEV.

Répétons maintenant les étapes précédentes, mais cette fois, nous changerons “- copie” en “- DOP” (pour DevOps) et nous déplacerons les deux nouvelles entrées vers le dossier Internet. Ensuite, ajoutons la balise DOP à ces deux entrées de la même manière que précédemment.

Étape 5 : Configuration du plugin KeePassSubsetExport

Nous allons maintenant configurer le plugin pour qu’à chaque enregistrement de la base de données KeePass, deux bases de données supplémentaires soient créées : une pour le développement (balise : DEV) et une autre pour DevOps (balise : DOP). Nous avons donc actuellement 6 entrées : 2 sans balises, 2 avec la balise DEV et 2 avec la balise DOP. Lorsque nous enregistrerons, la base de données KeePass d’origine contiendra les 6 entrées, puis la base de données KeePass pour le développement en contiendra 2 et la base de données KeePass pour DevOps en contiendra 2 autres.

Pour activer ce comportement, il suffit de créer un dossier appelé “SubsetExportSettings”, puis à l’intérieur de ce dossier, nous créerons 2 entrées : “SubsetExportDEV” et “SubsetExportDOP”. Voici les étapes détaillées :

  • Pour créer un dossier dans KeePass, sélectionnez le dossier racine, faites un clic droit et choisissez Ajouter un nouveau groupe > SubsetExportSettings.
  • Une fois le groupe créé, sélectionnez-le, puis ajoutez une nouvelle entrée (Ctrl+i) et entrez “SubsetExportDEV”. Sous le champ “Mot de passe”, saisissez le mot de passe que vous souhaitez utiliser pour ouvrir cette base de données KeePass (le mot de passe maître de KeePass). Dans notre exemple, nous utiliserons “Developer5”.
  • Appuyez sur OK, puis ajoutez un nouveau champ de type “chaîne” : “SubsetExport_TargetFilePath”. Dans le champ “Valeur”, entrez le chemin de la base de données KeePass DEV que vous souhaitez enregistrer. Dans notre exemple, il s’agit de “C:/Users/cijalba/Documents/KDB/DEV/kdb-DEV.kdbx”.
  • Appuyez à nouveau sur OK, et vous verrez maintenant les deux champs de type “chaîne” qui contrôlent le plugin KeePassSubsetExport.

Maintenant, vous pouvez sélectionner l’entrée SubsetExportDEV, faire un clic droit, choisir Dupliquer l’entrée (Ctrl+k), puis la renommer en SubsetExportDOP. Modifiez tous les paramètres en conséquence : changez SubsetExport_Tag de DEV en DOP et SubsetExport_TargetFilePath en “C:/Users/cijalba/Documents/KDB/DOP/kdb-DOP.kdbx”.

Et voilà, tout est maintenant prêt !

Étape 6 : Enregistrement de la base de données KeePass et vérification

Enregistrez la base de données KeePass et vérifiez que les autres bases de données ont bien été créées aux emplacements spécifiés, avec leurs mots de passe appropriés, et que vous ne pouvez voir que les entrées balisées comme vous le souhaitez (notez que les groupes vides ne sont pas exportés, donc la base de données DEV ne contiendra que le groupe Windows et la base de données DOP ne contiendra que le groupe Internet).

Comme nous pouvons ouvrir plusieurs bases de données KeePass en même temps, je vous suggère d’ouvrir nos 3 bases de données et de les comparer.

Un petit conseil que j’utilise pour vérifier différentes bases de données KeePass est d’aller dans la zone de recherche de KeePass et d’appuyer sur Entrée. Cela affiche toutes les entrées de la base de données dans le volet de droite, mais surtout, cela affiche le nombre total d’entrées de la base de données ouverte dans la barre d’état en bas de la fenêtre, comme vous pouvez le voir sur cette capture d’écran.

Changez maintenant d’onglets pour les autres bases de données KeePass, entrez dans la zone de recherche et comparez les résultats sur les 3 bases de données KeePass différentes.

Notes finales

Pour utiliser cette configuration dans un environnement en réseau, nous pouvons configurer les chemins d’accès des exports en utilisant des URN (Uniform Resource Names), ce qui nous permet d’exporter directement vers un chemin comme “nas-box01/dev/dev.kdbx”. Ainsi, nous pouvons utiliser une protection supplémentaire pour chaque base de données en définissant les autorisations d’accès aux dossiers et fichiers, en plus du mot de passe maître de KeePass. De cette manière, un utilisateur devra d’abord avoir accès au dossier, puis au fichier de base de données KeePass et, enfin, au mot de passe de la base de données KeePass, ce qui est très sécurisé (si une sécurité supplémentaire est nécessaire, il est possible d’ajouter un fichier clé KeePass à l’équation – voir la documentation de KeePass).