Stocker une clé API dans variables d’environnement

  1. Créer le fichier .env
    bash
    Dans le dossier de votre projet
    nano .env
    Contenu du fichier .env
    env
    API_KEY= »votre_clé_api_secrète_ici »
    DATABASE_URL= »votre_url_de_base »
    DEBUG=False

2.Installer python-dotenv
bash
pip install python-dotenv
ou avec pip3pip3 install python-dotenv

3. Code Python minimal
python
import os
from dotenv import load_dotenv
Charger les variables depuis .envload_dotenv()
Récupérer la clé APIapi_key = os.environ.get(‘API_KEY’)
#Vérifier si elle existe
if not api_key:
raise ValueError(« ❌ API_KEY manquante dans .env »)
print(« ✅ Clé API chargée avec succès »)

4. Alternative : configuration avec classe
Import os
from dotenv import load_dotenv
load_dotenv()

class Config:
API_KEY = os.environ.get(‘API_KEY’)
DB_URL = os.environ.get(‘DATABASE_URL’)

@classmethod
def validate(cls):
if not cls.API_KEY:
raise ValueError(« API_KEY manquante »)

# Utilisation
Config.validate()
api_key = Config.API_KEY

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

A mettre en forme

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

📌 6. Exécuter votre script
bash

Méthode 1 : Variables déjà dans .env

python votre_script.py

Méthode 2 : Variable en ligne de commande

export API_KEY= »votre_clé » && python votre_script.py

📌 7. Vérifier les variables (debug)
python

Ajouter dans votre script

print(« API_KEY présente: », « API_KEY » in os.environ)
print(« Toutes variables: », dict(os.environ))

⚠️ RAPPELS IMPORTANTS

✅ FAIRE : .env dans .gitignore

❌ NE PAS FAIRE : Commiter .env ou mettre des clés en dur dans le code

🔒 Pour production : Utiliser les secrets du serveur (Docker secrets, Kubernetes secrets, etc.)

🔧 Commandes Linux utiles
bash

Vérifier si une variable existe

echo $API_KEY

Définir temporairement

export API_KEY= »test »

Supprimer une variable

unset API_KEY

Voir toutes les variables

env


Commentaires

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *