Ajouter un utilisateur
Vaultwarden : ajouter un utilisateur
| Service | Vaultwarden (Docker) |
| Objet | Création d'un compte utilisateur sur une instance aux inscriptions fermées |
| Prérequis | Accès SSH au serveur, accès au fichier docker-compose.yml |
| Durée estimée | 5 à 10 minutes |
1. Principe
Les inscriptions publiques sont fermées (SIGNUPS_ALLOWED=false). Un nouvel utilisateur ne peut donc créer son compte qu'après avoir été invité.
Trois méthodes sont possibles :
| Méthode | Usage | Recommandée |
|---|---|---|
| Panneau d'administration | Cas général | ✅ |
| Ouverture temporaire des inscriptions | Dépannage, panneau admin indisponible | ⚠️ |
| Invitation dans une organisation | Partage de coffre (famille, équipe) | ✅ |
2. Méthode A : via le panneau d'administration
2.1 Activer le panneau admin (si nécessaire)
Le panneau n'est accessible que si ADMIN_TOKEN est défini.
-
Générer un hash Argon2 du mot de passe admin :
docker exec -it vaultwarden /vaultwarden hash -
Ajouter le hash dans
docker-compose.yml. Doubler chaque$, car ce caractère est interprété par Docker Compose :services: vaultwarden: environment: ADMIN_TOKEN: '$$argon2id$$v=19$$m=65540,t=3,p=4$$...' -
Appliquer la configuration :
docker compose up -d
2.2 Inviter l'utilisateur
- Ouvrir
https://<domaine>/adminet s'authentifier avec le mot de passe admin (en clair, pas le hash). - Aller dans l'onglet Users.
- Dans Invite User, saisir l'adresse e-mail de l'utilisateur, puis valider.
2.3 Création du compte par l'utilisateur
Le parcours dépend de la configuration SMTP :
-
SMTP configuré : l'utilisateur reçoit un e-mail d'invitation et suit le lien.
-
SMTP non configuré : l'invitation est acceptée automatiquement. Communiquer à l'utilisateur :
- l'URL de l'instance :
https://<domaine> - l'adresse e-mail exacte utilisée pour l'invitation
L'utilisateur clique sur Créer un compte et s'inscrit avec cette adresse.
- l'URL de l'instance :
2.4 Vérification
Dans Users du panneau admin, l'utilisateur apparaît avec son compte créé (et non plus en statut Invited).
3. Méthode B : ouverture temporaire des inscriptions
⚠️ Pendant la fenêtre d'ouverture, n'importe qui pouvant joindre l'instance peut créer un compte. À réserver au dépannage, et à refermer immédiatement.
-
Dans
docker-compose.yml:SIGNUPS_ALLOWED: 'true' -
Appliquer :
docker compose up -d -
Laisser l'utilisateur créer son compte.
-
Remettre
SIGNUPS_ALLOWED: 'false'et réappliquer :docker compose up -d -
Vérifier dans le panneau admin qu'aucun compte inattendu n'a été créé.
Variante plus restrictive : limiter les inscriptions à un domaine e-mail :
SIGNUPS_DOMAINS_WHITELIST: 'mondomaine.fr'
4. Méthode C : invitation dans une organisation
Pour un utilisateur qui doit accéder à un coffre partagé.
Prérequis : INVITATIONS_ALLOWED à true (valeur par défaut).
- Se connecter au coffre web avec un compte propriétaire ou administrateur de l'organisation.
- Aller dans Organisation, puis Membres, puis Inviter un membre.
- Saisir l'e-mail, choisir le rôle et les collections accessibles.
- Une fois que l'utilisateur a créé son compte et accepté l'invitation, confirmer le membre dans la liste des membres. Sans cette confirmation, il n'a pas accès aux éléments partagés.
5. Points d'attention
config.json prioritaire sur les variables d'environnement
Dès qu'un réglage est enregistré depuis le panneau admin, Vaultwarden écrit un fichier config.json dans le volume /data. Ce fichier prend le dessus sur les variables du docker-compose.yml.
Symptôme : une variable modifiée dans le compose semble ignorée. Solution : modifier le réglage depuis le panneau admin, ou supprimer la clé concernée dans config.json puis redémarrer le conteneur.
Sécurisation du panneau admin
Après l'opération, au choix :
- Désactiver le panneau : retirer
ADMIN_TOKENdu compose et supprimer la cléadmin_tokendansconfig.jsonsi elle y figure, puisdocker compose up -d. - Restreindre l'accès au chemin
/adminau niveau du reverse proxy (accès via VPN ou réseau local uniquement).
6. Récapitulatif rapide
1. https://<domaine>/admin → Users → Invite User → e-mail
2. Transmettre URL + e-mail exact à l'utilisateur
3. L'utilisateur crée son compte avec cet e-mail
4. Vérifier dans Users
5. Re-sécuriser /admin si besoin
No comments to display
No comments to display