.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 osimport 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: trueALLOWED_HOSTS: - 127.0.0.1 - localhost - 0.0.0.0DATABASES: NAME: 'database_name' USER: 'database_user' PASSWORD: 'password' HOST: '127.0.0.1' PORT: '5432'
登录后复制
以上就是配置 Django 项目以将敏感数据存储在 YAML 文件中的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2176514.html