Le codage en dur des jetons, des informations d'identification de base de données et autres données sensibles dans les fichiers .py n'est pas sécurisé. Beaucoup de gens utilisent la bibliothèque Django-environ, mais je pense que cela n'est pas pratique. J'utilise donc des fichiers yaml pour stocker les données sensibles et la bibliothèque pyyaml pour en lire les données.
Créer un dossier de projet :
mkdir myproject
Basculer dans le dossier créé :
cd myproject
Créer un environnement virtuel :
python3 -m venv env
Activer l'environnement virtuel :
source env/bin/activate
Installez Django et pyyaml :
pip3 install django pyyaml
Démarrer un nouveau projet Django :
django-admin startproject myproject .
Créez le fichier settings.yaml à proximité du fichier settings.py :
touch myproject/settings.yaml
Insérer les importations au début du fichier settings.py :
import os import yaml
Insérer le code pour lire à partir du fichier settings.yaml :
with open(os.path.join(str(Path(__file__).resolve().parent), 'settings.yaml'), 'r') as settingsfile: settings = yaml.safe_load(settingsfile)
Insérer le code pour lire à partir du fichier settings.yaml :
SECRET_KEY = settings['SECRET_KEY'] DEBUG = settings['DEBUG'] ALLOWED_HOSTS = settings['ALLOWED_HOSTS'] DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'NAME': settings['DATABASES']['NAME'], 'USER': settings['DATABASES']['USER'], 'PASSWORD': settings['DATABASES']['PASSWORD'], 'HOST': settings['DATABASES']['HOST'], 'PORT': settings['DATABASES']['PORT'], } }
Mettez les configurations dans settings.yaml :
SECRET_KEY: 'your-secret-token' DEBUG: true ALLOWED_HOSTS: - 127.0.0.1 - localhost - 0.0.0.0 DATABASES: NAME: 'database_name' USER: 'database_user' PASSWORD: 'password' HOST: '127.0.0.1' PORT: '5432'
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!