Mis à jour

Comment partager des fichiers .env sans les committer dans Git

Par

La façon la plus sûre de partager des fichiers .env, ce sont les liens chiffrés et autodestructeurs — pas les DM Slack, les e-mails ou les commits Git. Des outils comme Vaulted chiffrent tes variables d'environnement dans le navigateur avec AES-256-GCM avant que quoi que ce soit ne soit envoyé, et le lien s'autodétruit après consultation.

Selon le State of Secrets Sprawl report 2025 de GitGuardian, 23,8 millions de secrets ont fuité sur des dépôts GitHub publics en 2024 — une hausse de 25 % sur un an. Et les propres données de GitHub font état de 39 millions de secrets détectés sur la plateforme en 2024. Beaucoup proviennent de contenus de fichiers .env committés par accident.

Le problème du partage de fichiers .env

Les fichiers d'environnement sont particulièrement dangereux parce qu'ils concentrent au même endroit tous les secrets dont ton app a besoin : URL de base de données, clés d'API, secrets de signature, tokens tiers. Une seule fuite de .env peut compromettre tous les services externes auxquels ton application se connecte.

Les méthodes courantes que les équipes utilisent pour partager des fichiers .env — et pourquoi elles échouent :

  • DM Slack/Discord — Indexables, sauvegardés, persistent après le départ d'un employé
  • E-mail — Stockés en texte en clair sur les serveurs de messagerie, souvent transférés par inadvertance
  • Commits Git — Même dans des dépôts privés, les secrets présents dans l'historique sont quasi impossibles à supprimer totalement
  • Disques partagés — Aucune expiration, aucun contrôle d'accès, aucune piste d'audit
  • Notes 1Password/Bitwarden — Exigent que les deux parties aient un compte dans le même coffre

Une meilleure approche : les liens chiffrés et autodestructeurs

Au lieu d'envoyer directement le contenu du fichier, chiffre-le d'abord et partage un lien qui s'autodétruit après consultation.

Depuis le navigateur

  1. Va sur vaulted.fyi
  2. Colle le contenu de ton fichier .env
  3. Définis une limite de consultations (1 consultation pour un destinataire unique) et une expiration
  4. Envoie le lien généré à ton coéquipier

Le contenu est chiffré avec AES-256-GCM dans ton navigateur avant que quoi que ce soit ne soit envoyé. La clé de déchiffrement vit uniquement dans le fragment d'URL — le serveur ne voit jamais ton texte en clair.

Depuis le terminal

Si tu préfères la ligne de commande, le CLI Vaulted fait la même chose :

# Pipe directly from the file
cat .env.production | npx vaulted-cli --views 1

# Or pass the file path
npx vaulted-cli --file .env.local --views 1 --expires 1h

# Add a passphrase for extra security
cat .env | npx vaulted-cli -v 1 -e 24h -p "ask-me-on-call"

Le CLI utilise le même chiffrement que l'app web — même algorithme, même architecture zero-knowledge, mêmes liens autodestructeurs. Le résultat est une seule URL que tu peux coller dans Slack ou ailleurs, et elle expire dès que le destinataire l'a consultée.

Et les gestionnaires de secrets ?

Des outils comme Doppler, Infisical et AWS Secrets Manager sont parfaits pour les environnements de production où les secrets sont consommés par des applications. Mais ils répondent à un autre problème — ils gèrent des secrets que les services lisent de façon programmatique.

Le partage de .env, lui, concerne le passage de relais d'humain à humain : intégrer un nouveau développeur, partager une configuration de staging avec un prestataire ou distribuer des identifiants mis à jour après une rotation. Ce passage de relais doit être rapide, sécurisé et ne demander aucune configuration au destinataire.

Bonnes pratiques pour l'hygiène des fichiers .env

  1. Ne committe jamais de fichiers .env dans Git — Ajoute .env* à ton .gitignore dès le premier jour
  2. Fais tourner les identifiants après partage — Considère chaque partage comme une exposition potentielle
  3. Utilise des liens à consultations limitées — Une consultation par destinataire, expiration courte
  4. Ajoute une phrase secrète pour les configurations de production — Partage la phrase secrète via un canal séparé
  5. Documente les variables nécessaires — Garde un .env.example avec des valeurs vides dans ton dépôt

Arrête de coller tes variables d'environnement dans Slack. Partage-les en toute sécurité avec Vaulted — depuis ton navigateur ou ton terminal.


À lire aussi