Arduino & IoT Academy · Leçon

Garder les secrets hors du code

Stockez les identifiants en sécurité, jamais en clair.

Leçon 2 sur 413 étapes

Garder les secrets hors du code est une leçon Arduino & IoT Academy gratuite sur CoddyKit. Ceci est la leçon 2 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Arduino & IoT Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Arduino & IoT Academy comprend 4 leçons au total.

Ce qui constitue un secret

Les mots de passe WiFi, les jetons d'API et les clés privées sont tous des secrets. Tout ce qui permet d'accéder à un système ne doit jamais rester visible dans votre programme. 🔑

Le danger des clés en clair

La mémoire flash peut être relue à distance. Une clé en clair dans votre code peut être copiée par n'importe qui dès que la puce est extraite.

String apiKey = "AKIA12345SECRET"; // visible to anyone who reads the flash

Pourquoi Git aggrave le problème

Enregistrez un secret une seule fois et il restera pour toujours dans votre historique. Même après sa suppression, l'ancien commit contient encore la clé exposée.

Utiliser un fichier d'en-tête séparé

Placez les identifiants dans un petit fichier comme secrets.h, exclu du contrôle de version. Cet en-tête de secrets conserve les clés hors de GitHub tout en laissant votre programme partageable.

#include "secrets.h" // holds WIFI_SSID and WIFI_PASS, never committed

L'ignorer dans Git

Ajoutez votre fichier de secrets à .gitignore afin qu'il ne puisse jamais être enregistré par accident. Cette simple ligne empêche la plupart des fuites de clés réelles.

# .gitignore
secrets.h

Fournir les secrets lors de la configuration

Au lieu d'intégrer les clés dans le programme, saisissez-les une fois lors du premier démarrage de l'appareil. Le provisionnement via une page de configuration garde entièrement les secrets hors de votre code source.

Stocker dans NVS ou EEPROM

L'ESP32 propose NVS, un espace de stockage clé-valeur en mémoire flash pour les secrets utilisés à l'exécution. Écrivez le jeton une fois, puis relisez-le à chaque démarrage.

preferences.begin("net", false);
preferences.putString("token", userToken);

Une clé par appareil

Attribuez à chaque appareil ses propres identifiants, et n'utilisez jamais une clé maîtresse partagée. Avec des clés propres à chaque appareil, vous pouvez révoquer un appareil volé sans toucher aux autres.

Renouveler et révoquer

Prévoyez de changer les clés selon un calendrier et de désactiver rapidement celles qui ont fuité. Le renouvellement limite la durée pendant laquelle un secret volé reste utilisable.

Privilèges minimaux

Accordez à chaque jeton uniquement les accès dont il a réellement besoin. Le principe du moindre privilège signifie qu'une clé d'appareil divulguée peut lire son propre sujet, mais pas l'ensemble de votre compte.

Analysez avant d'envoyer

Des outils peuvent détecter une clé avant qu'elle n'atteigne un dépôt distant. Un analyseur de secrets intégré à votre flux de travail bloque les fuites accidentelles avant qu'elles ne se produisent.

Vérification rapide

L'une de ces mesures empêche une clé d'atteindre votre dépôt public.

Récapitulatif

N'intégrez jamais de secrets au code. Utilisez un fichier d'en-tête ignoré par git, fournissez les secrets lors de la configuration, stockez-les dans NVS et conservez des clés propres à chaque appareil que vous pouvez renouveler. 🔐

Gratuit pour commencer

Apprends C++ avec un tuteur IA — gratuit

Écris et exécute du vrai code dans ton navigateur, obtiens de l'aide instantanée d'un tuteur IA disponible 24h/24, et reprends là où tu t'es arrêté sur le web ou dans l'app.

Cours
30
Leçons
120

Questions Fréquemment Posées

La leçon « Garder les secrets hors du code » est-elle gratuite ?

Oui — le texte complet de « Garder les secrets hors du code » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Arduino & IoT Academy, passe à CoddyKit PRO. Le cours Arduino & IoT Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Garder les secrets hors du code » ?

Stockez les identifiants en sécurité, jamais en clair. Tu pratiques Arduino & IoT Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Arduino & IoT Academy ?

Aucune expérience préalable n'est requise. Arduino & IoT Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 2 sur 4.

Combien de temps prend la leçon « Garder les secrets hors du code » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Arduino & IoT Academy ?

Oui. Chaque leçon Arduino & IoT Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Surfaces d’attaque courantes de l’IoT
  2. Garder les secrets hors du code
  3. Chiffrer avec TLS et vérifier les certificats
  4. Signer et verrouiller le micrologiciel
← Retour à Arduino & IoT Academy