Kodokon kodokon.com

Sécurité de base du développeur

Protégez vos comptes, vos clés secrètes et votre machine avec quelques réflexes simples et durables.

8 min · 3 questions

Ouvrir cette leçon dans Kodokon

On n'attend pas d'être expert pour se protéger. Dès votre première semaine, vous manipulez des choses sensibles : un compte de messagerie, un compte sur une plateforme de code, parfois des clés d'accès à des services payants. Quelques réflexes pris maintenant vous éviteront des ennuis très concrets plus tard, comme une facture de plusieurs centaines d'euros pour une clé volée.

Commencez par les comptes. Un mot de passe différent par service, long plutôt que compliqué : une phrase de quatre mots inhabituels vaut mieux qu'un mot tordu de huit caractères. Utilisez un gestionnaire de mots de passe pour ne rien retenir. Activez ensuite la double authentification en priorité sur deux comptes : votre messagerie et votre compte de code. Ce sont les clés du royaume, car ils permettent de réinitialiser tous les autres.

Vient ensuite la question des secrets dans le code. Un secret, c'est une clé d'API, un mot de passe de base de données ou un jeton d'accès : une chaîne de caractères qui prouve que c'est bien vous. La règle est absolue : un secret ne s'écrit jamais en dur dans un fichier de code. On le range dans un fichier .env gardé sur votre machine, et on ajoute ce fichier au .gitignore pour qu'il ne parte jamais en ligne.

BASH
# .env : reste sur votre machine, jamais partage
API_KEY=cle_secrete_a_ne_pas_publier
DB_PASSWORD=mot_de_passe_local

# .gitignore : dit a Git d'ignorer ces chemins
.env
node_modules/
Les secrets vivent dans .env, et .gitignore empêche Git de les suivre.

Méfiez-vous enfin des commandes trouvées sur Internet. N'exécutez jamais une ligne que vous ne comprenez pas, surtout si elle commence par sudo : ce mot signifie « avec les droits d'administrateur », c'est-à-dire le pouvoir de modifier ou d'effacer n'importe quoi sur la machine. Même prudence avec les scripts d'installation téléchargés et exécutés d'un seul geste.

BASH
# A eviter : on execute sans avoir rien lu
curl https://exemple.test/install.sh | bash

# Mieux : on telecharge, on lit, puis on decide
curl -o install.sh https://exemple.test/install.sh
less install.sh
bash install.sh
Télécharger puis lire un script avant de l'exécuter prend trente secondes.

Quiz de validation

Vérifiez que vous avez bien retenu les points clés de cette leçon.

  1. Où doit-on stocker une clé d'API dans un projet ?
    • Directement dans le fichier de code, c'est plus simple
    • Dans un fichier .env local, exclu du dépôt par .gitignore
    • Dans le message du commit, pour la retrouver facilement
  2. Vous avez publié une clé secrète par erreur, puis supprimé le fichier. Que faire ?
    • Rien de plus, le fichier n'existe plus
    • Révoquer la clé auprès du service et en générer une nouvelle
    • Renommer le dépôt pour brouiller les pistes
  3. Pourquoi se méfier d'une commande copiée sur Internet qui commence par sudo ?
    • Parce qu'elle s'exécute toujours plus lentement
    • Parce qu'elle s'exécute avec les droits d'administrateur et peut tout modifier
    • Parce qu'elle ne fonctionne que sur Windows