Agence Immo - P2 - Protection des variables d'environnement

Agence Immo - P2 - Protection des variables d'environnement

Dans ce tuto, nous allons allons protéger un certain nombre de variables sensibles que nous ne souhaitons pas "committer" sur notre git-hub. Les variables contenant des mots de passe, des tokens, des identifiants doivent rester confidentielles.Nous allons commencer par sécurer la "SECRET_KEY" de notre projet.Tout d'abord ouvrir  le dossier tuto-django avec Visual Studio Code ou via notre terminal en tapant

code .

Ensuite nous devons activer notre environnement virtuel 

source env/bin/activate

Ensuite nous allons ajouter le package python-dotenv

pip install python-dotenv

On l'ajoute à notre fichier reuirements.txt qui va contenir les packages des librairies de notre projet

pip freeze > requirements.txt

On créer un fichier  ".env" à la racine de notre projet

touch  .env

Dans ce fichier .env , on créer la variables suivante

SECRET_KEY = (Django secret key)

Toujours à la racine du projet  on va créer un fichier  ".gitignore" qui spécifiera les ressources que nous ne souhaitons pas synchroniser avec notre repo distant  sur github

touch .gitignore

On colle les deux lignes suivantes:

.env
env/

Maintenant  dans le fichiers agenceimmo/settings.py,

On ajoute les imports suivants: 

import os
from dotenv import load_dotenv 

Ensuite  on lance la fonction qui va importer les variables d'environnement

load_dotenv()

Plus bas, on récupère la clé secrète du projet et on la colle dans le fichier .env

SECRET_KEY = XXXXXXXXXXXXXXXXXXXXXXXXX

On retourne dans notre fichier settings et on remplace la clé par le code suivant :

SECRET_KEY = os.environ.get('SECRET_KEY')

Maintenant on peut lancer le serveur virtuel et vérifier que les changement apportés à notre code fonctionnent.

python manage.py runserver