ホームページ >バックエンド開発 >Python チュートリアル >機密データを YAML ファイルに保存するように Django プロジェクトを構成する

機密データを YAML ファイルに保存するように Django プロジェクトを構成する

Barbara Streisand
Barbara Streisandオリジナル
2024-12-04 18:49:12594ブラウズ

Configuring Django project to storing sensitive data in YAML file

.py ファイル内のトークン、データベース資格情報、その他の機密データのハードコーディングは安全ではありません。 django-environ ライブラリを使用している人は多いですが、不便だと思います。そのため、機密データの保存には yaml ファイルを使用し、そのデータの読み取りには pyyaml ライブラリを使用します。

プロジェクトフォルダーの作成:

mkdir myproject

作成したフォルダーに切り替えます:

cd myproject

仮想環境の作成:

python3 -m venv env

仮想環境をアクティブ化します:

source env/bin/activate

Django と pyyaml をインストールします:

pip3 install django pyyaml

新しい Django プロジェクトを開始します:

django-admin startproject myproject .

settings.py ファイルの近くに settings.yaml ファイルを作成します:

touch myproject/settings.yaml

settings.py ファイルの先頭にインポートを挿入します:

import os
import yaml

settings.yaml ファイルから読み取るためのコードを挿入します:

with open(os.path.join(str(Path(__file__).resolve().parent), 'settings.yaml'), 'r') as settingsfile:
    settings = yaml.safe_load(settingsfile)

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'],
    }
}

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'

以上が機密データを YAML ファイルに保存するように Django プロジェクトを構成するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。