Aller au contenu
Sécurité medium

Bitwarden : gestionnaire de mots de passe open-source et Secrets Manager

28 min de lecture

Logo Bitwarden

Bitwarden centralise vos mots de passe avec un chiffrement de bout en bout (AES-256). C'est l'un des gestionnaires de mots de passe open-source les plus populaires, avec deux produits complémentaires : le Password Manager pour stocker vos identifiants, et le Secrets Manager pour automatiser la gestion des secrets dans vos pipelines CI/CD.

Une équipe DevOps gère couramment des dizaines de services : bases de données, API tierces, comptes cloud, certificats. Chacun possède ses propres credentials, et la question du partage se pose dès le deuxième ingénieur qui doit intervenir.

Les pratiques courantes sont toutes problématiques :

  • Fichiers texte partagés, Aucun chiffrement, aucun historique, aucune trace d'accès
  • Tableurs Excel, Circulent par email, finissent dans des dossiers publics
  • Messages Slack/Teams, Stockés en clair dans les logs, impossibles à révoquer
  • Variables d'environnement en dur, Finissent dans les commits Git, exposées dans les logs CI

Bitwarden résout ce problème avec deux approches complémentaires :

  1. Password Manager, Pour les humains. Vous stockez, partagez et gérez vos identifiants via une interface web, des extensions navigateur et des applications mobiles.

  2. Secrets Manager, Pour les machines. Vos applications et pipelines CI/CD récupèrent automatiquement les secrets dont ils ont besoin, sans intervention humaine.

Bitwarden n'est pas un produit unique décliné en options : ce sont deux applications distinctes, avec leur propre modèle de données, leur propre CLI et leur propre facturation. Les confondre est l'erreur la plus fréquente au moment de choisir un plan. La ligne de partage tient en une phrase : le Password Manager sert les personnes, le Secrets Manager sert les programmes.

C'est le cœur de Bitwarden. Il permet de :

  • Stocker des mots de passe, notes sécurisées, cartes bancaires, identités
  • Générer des mots de passe forts automatiquement
  • Partager des identifiants avec votre équipe via des organisations
  • Synchroniser sur tous vos appareils (web, desktop, mobile, navigateur)
  • Exporter/Importer depuis LastPass, 1Password, KeePass et autres

Le Password Manager utilise un chiffrement AES-256 avec PBKDF2-SHA256 (600 000 itérations par défaut). Vos données sont chiffrées avant d'être envoyées au serveur. Même Bitwarden ne peut pas les lire.

Lancé en 2023, le Secrets Manager est conçu pour les développeurs et les équipes DevOps. Il permet de :

  • Centraliser les secrets applicatifs (clés API, tokens, connexions DB)
  • Organiser les secrets par projets
  • Contrôler les accès via des comptes machines (machine accounts)
  • Injecter les secrets dans vos applications via la CLI bws
  • Auditer qui a accédé à quoi et quand (logs)

Bitwarden propose plusieurs plans, du gratuit à l'entreprise. Le choix dépend de vos besoins en fonctionnalités et du nombre d'utilisateurs.

Les plans individuels se distinguent surtout par le TOTP intégré (les codes à usage unique de la double authentification) et par le stockage de fichiers, tous deux absents du plan gratuit.

PlanPrixFonctionnalités clés
FreeGratuitMots de passe illimités, 2 appareils, partage avec 1 personne
Premium10$/anTOTP intégré, 1 Go stockage fichiers, rapports de sécurité
Families40$/an6 utilisateurs, partage illimité, toutes les fonctionnalités Premium

Le passage de Teams à Enterprise se justifie principalement par le SSO (l'authentification unique via SAML ou OIDC) et par SCIM, qui synchronise automatiquement les comptes depuis votre annuaire au lieu de les créer à la main.

PlanPrixFonctionnalités clés
Teams4$/user/moisPartage équipe, groupes, journaux d'audit, 2FA avancé
Enterprise6$/user/moisSSO (SAML/OIDC), SCIM, politiques personnalisées, Key Connector

Le Secrets Manager se facture séparément du Password Manager, par packs de secrets. Les machine accounts inclus plafonnent le nombre d'identités non humaines, c'est-à-dire en pratique le nombre de pipelines ou d'applications distincts que vous pourrez brancher sans surcoût.

PlanSecretsMachine accountsPrix
Teams6 00020 inclus6$/mois (pack de 500 secrets)
Enterprise12 00050 inclus12$/mois (pack de 500 secrets)

Docker Compose est la méthode la plus simple pour déployer Bitwarden en self-hosted.

  • Docker Engine 20.10+ avec Docker Compose
  • 4 Go de RAM minimum (8 Go recommandé)
  • Ports 80 et 443 disponibles
  • Un nom de domaine pointant vers votre serveur
  • Un serveur SMTP pour les notifications

Avant d'installer, vous devez obtenir un ID d'installation et une clé d'installation gratuits sur le site Bitwarden.

  1. Rendez-vous sur la page d'hébergement

    Ouvrez https://bitwarden.com/host dans votre navigateur.

  2. Remplissez le formulaire

    • Entrez votre adresse email
    • Sélectionnez votre région (Europe ou États-Unis)
    • Cochez la case d'acceptation des conditions
  3. Récupérez vos identifiants

    Vous recevrez par email :

    • Installation ID : un UUID (ex: a1b2c3d4-e5f6-7890-abcd-ef1234567890)
    • Installation Key : une clé secrète

    Conservez ces identifiants, vous en aurez besoin lors de l'installation.

L'installation officielle repose sur un script bitwarden.sh qui génère la configuration Docker Compose et pilote ensuite le cycle de vie de la pile (start, stop, update). Comptez une dizaine de conteneurs au total. La séquence ci-dessous couvre la mise en place complète, du compte système dédié jusqu'à la création du premier utilisateur.

  1. Créer un utilisateur dédié

    Pour des raisons de sécurité, créez un utilisateur système dédié à Bitwarden :

    Fenêtre de terminal
    sudo adduser bitwarden
    sudo usermod -aG docker bitwarden
  2. Créer le répertoire d'installation

    Fenêtre de terminal
    sudo mkdir -p /opt/bitwarden
    sudo chown -R bitwarden:bitwarden /opt/bitwarden
    sudo chmod 700 /opt/bitwarden
  3. Télécharger le script d'installation

    Connectez-vous en tant que l'utilisateur bitwarden et téléchargez le script :

    Fenêtre de terminal
    su - bitwarden
    cd /opt/bitwarden
    curl -Lso bitwarden.sh "https://func.bitwarden.com/api/dl/?app=self-host&platform=linux"
    chmod +x bitwarden.sh
  4. Lancer l'installation

    Fenêtre de terminal
    ./bitwarden.sh install

    Le script vous demandera :

    • Votre nom de domaine (ex: bitwarden.example.com)
    • Votre Installation ID et Installation Key
    • Si vous souhaitez utiliser Let's Encrypt pour le certificat SSL (recommandé)
    • Votre région (EU ou US)
  5. Configurer l'environnement

    Éditez le fichier de configuration pour ajuster les paramètres :

    Fenêtre de terminal
    nano ./bwdata/env/global.override.env

    Configurez au minimum le serveur SMTP pour les emails :

    Fenêtre de terminal
    globalSettings__mail__smtp__host=smtp.example.com
    globalSettings__mail__smtp__port=587
    globalSettings__mail__smtp__ssl=true
    globalSettings__mail__smtp__username=notifications@example.com
    globalSettings__mail__smtp__password=VotreMotDePasseSMTP
  6. Configurer les administrateurs

    Toujours dans global.override.env, ajoutez les emails des administrateurs :

    Fenêtre de terminal
    adminSettings__admins=admin@example.com,ops@example.com

    Ces utilisateurs auront accès au portail d'administration système.

  7. Démarrer Bitwarden

    Fenêtre de terminal
    ./bitwarden.sh start

    Le premier démarrage prend 2-3 minutes pour initialiser les conteneurs.

  8. Créer le premier compte

    • Ouvrez https://bitwarden.example.com dans votre navigateur
    • Cliquez sur Créer un compte
    • Entrez votre email et créez un mot de passe maître fort

Vérification :

Fenêtre de terminal
# Vérifier que tous les conteneurs sont en cours d'exécution
docker ps --filter "name=bitwarden"
# Vérifier les logs
./bitwarden.sh logs

Vous devriez voir une dizaine de conteneurs en cours d'exécution : bitwarden-nginx, bitwarden-api, bitwarden-web, etc.

L'interface web est pratique pour le quotidien, mais elle ne suffit pas pour l'automatisation. La CLI bw permet de gérer vos mots de passe en ligne de commande : création en lot, récupération dans des scripts, export automatisé.

La CLI bw est distribuée sous quatre formes au choix : binaire autonome, paquet npm, formule Homebrew ou snap. Le contenu est identique, seule la mise à jour diffère. Retenez que la version du client doit rester compatible avec celle de votre serveur self-hosted.

Fenêtre de terminal
# Télécharger le binaire
curl -L "https://bitwarden.com/download/?app=cli&platform=linux" -o bw.zip
unzip bw.zip
chmod +x bw
sudo mv bw /usr/local/bin/
# Vérification
bw --version
# 2026.1.0

Par défaut, la CLI se connecte aux serveurs cloud de Bitwarden. Pour utiliser votre serveur self-hosted :

Fenêtre de terminal
# Configurer l'URL du serveur
bw config server https://bitwarden.example.com
# Vérifier la configuration
bw status --pretty
# {
# "serverUrl": "https://bitwarden.example.com",
# "lastSync": null,
# "status": "unauthenticated"
# }

La CLI utilise un système de sessions. Vous vous authentifiez une fois, puis utilisez un token de session pour les commandes suivantes.

  1. Se connecter

    Fenêtre de terminal
    bw login

    Entrez votre email, mot de passe maître et code 2FA si activé.

    Résultat :

    You are logged in!
    To unlock your vault, set your session key to the `BW_SESSION` environment variable. ex:
    $ export BW_SESSION="5PBYGU+5yt3RHcCjoeJKx/wByU34vokGRZjXpSH7Ylo8w=="
  2. Définir la variable de session

    Fenêtre de terminal
    export BW_SESSION="5PBYGU+5yt3RHcCjoeJKx/wByU34vokGRZjXpSH7Ylo8w=="

    Cette variable permet d'exécuter les commandes sans ressaisir le mot de passe maître.

  3. Synchroniser le coffre

    Fenêtre de terminal
    bw sync
    # Syncing complete.

La CLI suit une structure simple : bw <commande> <objet> [options]. Les commandes principales sont list, get, create, edit, delete. Les objets sont items, folders, collections, etc.

list items renvoie du JSON sur la sortie standard, mots de passe en clair compris. Redirigez cette sortie vers un traitement plutôt que de l'afficher telle quelle dans un terminal partagé ou enregistré.

Fenêtre de terminal
# Lister tous les éléments du coffre
bw list items
# Filtrer par recherche
bw list items --search "github"
# Filtrer par dossier
bw list items --folderid 60556c31-e649-4b5d-8daf-fc1c391a1bf2
# Afficher en JSON formaté
bw list items --pretty

bw get accepte soit un nom approximatif, soit un identifiant exact. Avec un nom, la commande échoue dès que plusieurs éléments correspondent : dans un script, l'identifiant est la seule forme fiable.

Fenêtre de terminal
# Récupérer par nom (recherche)
bw get password github.com
# Récupérer par ID exact
bw get item 99ee88d2-6046-4ea7-92c2-acac464b1412
# Récupérer uniquement le mot de passe (pour scripts)
bw get password github.com
# G#kL9$mP2xNq!
# Récupérer le username
bw get username github.com
# johndoe

La création utilise un template JSON encodé en base64 :

Fenêtre de terminal
# Obtenir le template d'un élément
bw get template item
# Créer un élément en ligne de commande
bw get template item | \
jq '.name="Mon Service" | .login.username="admin" | .login.password="MonMotDePasse123"' | \
bw encode | bw create item
# Créer un dossier
echo '{"name":"Production"}' | bw encode | bw create folder

bw generate produit une valeur mais ne l'enregistre pas dans le coffre : c'est à vous de la stocker ensuite. Les options se combinent librement, et le mode passphrase reste le plus adapté quand un humain devra saisir le secret à la main.

Fenêtre de terminal
# Mot de passe par défaut (14 caractères, majuscules, minuscules, chiffres)
bw generate
# DWCosTPW#hLWZ6
# Mot de passe complexe de 24 caractères avec caractères spéciaux
bw generate -ulns --length 24
# DWCosTPW#hLWZ6i%2D!OlA3z
# Passphrase de 5 mots
bw generate -p --words 5 --separator - -c
# Valiant-Rubble-Bonus-Enlarged-Implicit

Les options de génération :

  • -u, --uppercase : inclure majuscules
  • -l, --lowercase : inclure minuscules
  • -n, --number : inclure chiffres
  • -s, --special : inclure caractères spéciaux
  • -p, --passphrase : générer une passphrase
  • --words <n> : nombre de mots (passphrase)
  • --separator <char> : séparateur entre les mots

Send permet de partager des fichiers ou du texte de manière sécurisée avec expiration automatique :

Fenêtre de terminal
# Envoyer du texte (expire dans 7 jours par défaut)
bw send -n "API Key" "sk_live_xxxxxxxxxxxxx"
# Envoyer un fichier (expire dans 14 jours)
bw send -n "Certificat SSL" -f ./cert.pem -d 14
# Envoyer avec mot de passe
bw send -n "Credentials" --password "MotDePassePartage" "admin:secret123"
# Lister les envois
bw send list

Le destinataire reçoit un lien unique pour accéder au contenu, sans avoir besoin de compte Bitwarden.

L'export écrit un fichier local, donc hors du périmètre chiffré de Bitwarden. C'est l'opération la plus risquée de toute la CLI, comme le rappelle l'avertissement qui suit les commandes.

Fenêtre de terminal
# Export CSV
bw export --format csv --output ./backup.csv
# Export JSON chiffré (recommandé pour les sauvegardes)
bw export --format encrypted_json --password "MotDePasseExport" --output ./backup.json

Le Password Manager est conçu pour les humains. Mais comment vos applications récupèrent-elles leurs secrets ? C'est le rôle du Secrets Manager et de sa CLI bws.

Le Secrets Manager utilise une architecture différente du Password Manager :

ConceptDescription
SecretUne paire clé-valeur sensible (ex: DATABASE_URL=postgres://...)
ProjectUn groupe logique de secrets (ex: "Production", "Staging")
Machine AccountUn compte non-humain qui accède aux secrets (ex: votre pipeline CI)
Access TokenLa clé d'authentification d'un machine account

Le flux est le suivant :

  1. Vous créez des projets et y ajoutez des secrets via l'interface web
  2. Vous créez un machine account avec accès à certains projets
  3. Vous générez un access token pour ce machine account
  4. Votre application utilise ce token pour récupérer les secrets via la CLI bws

bws est un binaire indépendant de bw : les deux outils ne partagent ni configuration, ni session, ni format d'authentification. Installez bws sur les machines qui exécutent vos pipelines, pas sur les postes de travail.

Fenêtre de terminal
# Télécharger la dernière version
VERSION="2.0.0"
curl -LO "https://github.com/bitwarden/sdk-sm/releases/download/bws-v${VERSION}/bws-x86_64-unknown-linux-gnu-${VERSION}.zip"
unzip bws-x86_64-unknown-linux-gnu-${VERSION}.zip
chmod +x bws
sudo mv bws /usr/local/bin/
# Vérification
bws --version
# bws 2.0.0

La mise en route se fait entièrement dans l'interface web, dans cet ordre : activer le produit, créer un projet, y déposer des secrets, puis déclarer le machine account autorisé à les lire. Le token généré à la dernière étape est la seule information que votre pipeline aura besoin de connaître.

  1. Activer Secrets Manager

    Dans l'interface web Bitwarden, allez dans Admin Console → Billing → Subscription et activez Secrets Manager pour votre organisation.

  2. Créer un projet

    Dans le menu de gauche, cliquez sur Projects → New Project :

    • Nom : production
    • Description : Secrets de l'environnement de production
  3. Ajouter des secrets

    Dans le projet, cliquez sur Secrets → Create Secret :

    Key: DATABASE_URL
    Value: postgres://app:secret@db.internal:5432/myapp
    Note: Connexion base PostgreSQL production
  4. Créer un machine account

    Allez dans Machine Accounts → New Machine Account :

    • Nom : ci-production
    • Accès : projet production avec permission Can read
  5. Générer un access token

    Dans le machine account, onglet Access Tokens :

    • Cliquez sur Create Access Token
    • Nom : gitlab-runner-01
    • Expiration : selon vos besoins (ou "Never" pour les tests)

    Copiez le token immédiatement, il ne sera plus affiché.

La CLI bws s'organise autour d'un objet unique, le secret, et d'une commande d'exécution run. Toutes les sous-commandes exigent un access token valide, transmis par variable d'environnement ou en option.

La variable BWS_ACCESS_TOKEN est la forme à privilégier : passer le token en argument le rend visible dans la sortie de ps et dans l'historique du shell, donc lisible par tout utilisateur de la machine.

Fenêtre de terminal
# Via variable d'environnement (recommandé)
export BWS_ACCESS_TOKEN="0.48c78342-1635-48a6-accd-afbe01336365.C0tMmQqHnAp..."
# Via option en ligne de commande
bws secret list --access-token "0.48c78342..."

Sans argument, la commande retourne tous les secrets auxquels le machine account a accès. Le format env produit directement des lignes KEY=VALUE, exploitables par un source dans un script shell.

Fenêtre de terminal
# Lister tous les secrets accessibles
bws secret list
# Lister les secrets d'un projet spécifique
bws secret list e325ea69-a3ab-4dff-836f-b02e013fe530
# Format de sortie
bws secret list --output table
bws secret list --output yaml
bws secret list --output env # Format KEY=VALUE

bws secret get attend l'identifiant du secret, pas son nom. Récupérez cet UUID une première fois avec bws secret list, puis figez-le dans votre configuration : il ne change pas quand la valeur du secret est mise à jour.

Fenêtre de terminal
# Récupérer un secret par son ID
bws secret get be8e0ad8-d545-4017-a55a-b02f014d4158
# Sortie JSON par défaut :
# {
# "id": "be8e0ad8-d545-4017-a55a-b02f014d4158",
# "key": "DATABASE_URL",
# "value": "postgres://app:secret@db.internal:5432/myapp",
# "note": "Connexion base PostgreSQL production",
# ...
# }
# Extraire uniquement la valeur (pour scripts)
bws secret get be8e0ad8-... --output tsv | cut -f4

Les trois arguments positionnels sont obligatoires et attendus dans cet ordre : la clé, la valeur, puis l'identifiant du projet. Attention, la valeur apparaît en clair dans la ligne de commande, donc dans l'historique du shell.

Fenêtre de terminal
# Créer un nouveau secret
bws secret create API_KEY "sk_live_xxxxxxxxxxxxx" e325ea69-a3ab-4dff-836f-b02e013fe530 \
--note "Clé API Stripe production"
# Paramètres :
# - KEY : nom du secret
# - VALUE : valeur du secret
# - PROJECT_ID : UUID du projet

La commande bws run est la plus puissante. Elle récupère tous les secrets accessibles et les injecte comme variables d'environnement dans la commande spécifiée :

Fenêtre de terminal
# Exécuter une commande avec les secrets injectés
bws run -- 'npm run start'
# Les secrets deviennent des variables d'environnement :
# DATABASE_URL, API_KEY, etc. sont accessibles dans l'application
# Limiter aux secrets d'un projet
bws run --project-id e325ea69-a3ab-4dff-836f-b02e013fe530 -- 'python app.py'
# Utiliser un shell spécifique
bws run --shell bash -- '/path/to/script.sh'

Le principe reste le même quel que soit le moteur de CI : seul le token du machine account est stocké comme variable secrète du dépôt, et bws run injecte tous les autres au moment de l'exécution. Aucun secret applicatif n'a donc besoin d'être dupliqué dans la configuration du pipeline, ce qui supprime le travail de synchronisation à chaque rotation.

L'image officielle bitwarden/bws embarque déjà la CLI, ce qui évite une étape d'installation dans le job.

.gitlab-ci.yml
variables:
BWS_ACCESS_TOKEN: $BWS_TOKEN # Défini dans les variables CI/CD GitLab
deploy:
image: bitwarden/bws:1.0.0
script:
- bws run -- ./deploy.sh

Sur un runner GitHub, la CLI n'est pas préinstallée : le workflow la télécharge lui-même. Le token n'est exposé que dans le bloc env de l'étape qui en a besoin, et non au niveau du job entier.

.github/workflows/deploy.yml
name: Deploy
permissions: {}
jobs:
deploy:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
persist-credentials: false
- name: Install bws
run: |
VERSION=2.0.0
curl -fsSLO "https://github.com/bitwarden/sdk-sm/releases/download/bws-v$VERSION/bws-x86_64-unknown-linux-gnu-$VERSION.zip"
curl -fsSLO "https://github.com/bitwarden/sdk-sm/releases/download/bws-v$VERSION/bws-sha256-checksums-$VERSION.txt"
grep " bws-x86_64-unknown-linux-gnu-$VERSION.zip$" "bws-sha256-checksums-$VERSION.txt" | sha256sum -c -
unzip "bws-x86_64-unknown-linux-gnu-$VERSION.zip"
chmod +x bws && sudo mv bws /usr/local/bin/
- name: Deploy with secrets
env:
BWS_ACCESS_TOKEN: ${{ secrets.BWS_ACCESS_TOKEN }}
run: bws run -- ./deploy.sh

Ces trois outils répondent à des besoins qui se recoupent partiellement sans se confondre. Le tableau compare ce qui les sépare réellement : le périmètre couvert, le modèle de chiffrement et la présence d'un client pour chaque usage. Un tiret signale une fonctionnalité absente du produit.

CritèreBitwardenPassboltHashiCorp Vault
TypePassword Manager + Secrets ManagerPassword ManagerSecrets Management
ChiffrementAES-256GPG (bout en bout)AES-256-GCM
Open sourceOuiOuiOui (core)
CLI Passwordbwgo-passbolt-cli-
CLI Secretsbws-vault
Interface webOui, complèteOui, complèteOui
Extensions navigateurOui, tousChrome, Firefox-
MobileiOS, AndroidNon-
Self-hostedDockerDockerDocker
SSOEnterpriseProOui
Prix entréeGratuitGratuitGratuit

Quand choisir Bitwarden :

  • Vous voulez un gestionnaire complet (passwords + secrets)
  • Vous avez besoin d'applications mobiles et extensions navigateur
  • Vous souhaitez un déploiement simple (Docker Compose tout-en-un)

Quand choisir Passbolt :

  • Vous privilégiez le chiffrement GPG (bout en bout sans clé côté serveur)
  • Vous n'avez pas besoin d'applications mobiles
  • Vous préférez une installation plus légère

Quand choisir Vault :

  • Vous avez besoin de secrets dynamiques (credentials éphémères)
  • Vous gérez de l'infrastructure as code complexe
  • Vous avez des besoins avancés (PKI, transit encryption)

La quasi-totalité des blocages vient de deux sources : une session expirée côté bw, ou un certificat TLS que le client refuse. Le tableau donne la correspondance directe entre le message affiché et le geste correctif, sans passer par les journaux du serveur.

SymptômeCause probableSolution
unauthenticated après loginSession expiréeRefaire bw unlock et exporter BW_SESSION
Error: self-signed certificateCertificat SSL self-signedConfigurer Let's Encrypt ou NODE_EXTRA_CA_CERTS
SMTP errors au démarrageConfiguration SMTP manquanteVérifier global.override.env
Session key is invalidToken de session incorrectRefaire bw login puis bw unlock
bws: command not foundCLI pas dans le PATHsudo mv bws /usr/local/bin/
Access denied sur bwsToken expiré ou permissionsVérifier le machine account

Le script bitwarden.sh sert aussi d'outil de diagnostic. Il doit être lancé depuis le répertoire d'installation, faute de quoi il ne trouve pas le dossier bwdata qui contient toute la configuration générée.

Fenêtre de terminal
# Statut des conteneurs
cd /opt/bitwarden && ./bitwarden.sh status
# Logs récents
./bitwarden.sh logs
# Redémarrer
./bitwarden.sh restart

bw status renvoie l'un des trois états possibles : unauthenticated, locked ou unlocked. Un coffre simplement verrouillé se rouvre avec bw unlock, sans repasser par bw login.

Fenêtre de terminal
# Statut de connexion
bw status --pretty
# Forcer la synchronisation
bw sync --force
# Reconfigurer le serveur
bw config server https://bitwarden.example.com

  1. Deux produits complémentaires, Password Manager pour les humains, Secrets Manager pour les machines
  2. Chiffrement AES-256, Vos données sont chiffrées côté client avant l'envoi
  3. CLI Password Manager (bw), Génération (generate), récupération (get), création (create), partage (send)
  4. CLI Secrets Manager (bws), Injection de secrets (run), CRUD (secret list/get/create)
  5. Self-hosted possible, Docker Compose avec script d'installation officiel
  6. Open source, Code audité, communauté active, audits de sécurité réguliers (Cure53)
  7. Gratuit pour commencer, Plans gratuits suffisants pour les petites équipes

Ce site vous est utile ?

Sachez que moins de 1% des lecteurs soutiennent ce site.

Je maintiens +700 guides gratuits, sans pub ni tracking. Un soutien, même symbolique, m'aide à couvrir l'hébergement et à garder ces ressources gratuites. Merci pour votre appui.

Le formulaire ne s'affiche pas ? Ouvrir Ko-fi dans un onglet.

Abonnez-vous et suivez mon actualité DevSecOps sur LinkedIn