因此,在成为Django的新手时,我无意中将我的密钥提交给了我的网站专用存储库。考虑到我打算将该站点用于商业目的,因此我想确保其安全性。我需要生成一个全新的Django密钥吗?还是我可以编辑一下,例如,密钥的10个字符,将已编辑的密钥添加到我的.env文件中,然后将.env添加到我的.gitignore文件中,然后称之为一天?
我知道这不是最好的方法。我很可能会完全生成一个新的密钥,但是我认为这可能是有效的快速修复方法。
我认为通过这种方式,新的密钥仍然是随机生成的,而旧的密钥仍可以在github上使用,但对碰巧将其删除的任何人都没有用。
仅供参考,我正在将python-decouple与.env文件一起使用,该文件是我保存所有秘密变量(aws信息,秘密密钥,db信息等)的地方。我有单独的设置文件(production.py,development.py,common_settings.py),其中production.py和development.py都从common_settings.py导入所有数据。我只是偶然忘记了在进行第一次提交之前删除原始的settings.py文件。
答案 0 :(得分:1)
这是正常现象,所以不用担心,也不一定需要堆栈溢出来回答。
SECRET_KEY
的长度始终为50个字符。
因此,您可以编写一种生成随机字符串的方法或使用类似https://www.miniwebtool.com/django-secret-key-generator/
的网站答案 1 :(得分:1)
我需要生成一个全新的Django密钥吗?或者…将.env添加到我的.gitignore文件中
两者。首先remove settings.py
from the history,然后生成一个新密钥,将其保存在.env
中,并将.env
添加到您的.gitignore
中。
答案 2 :(得分:0)
我最终只是从提供的@aaronkazah网站创建了一个新密钥。如果您查看@phd下的评论,将会对我的问题有更好的说明。当最好的方法是创建新密钥时,不是提供快速修复的好理由。花了几秒钟。感谢大家的帮助。
答案 3 :(得分:0)
我尝试过同样的事情,但不幸的是,它对我不起作用。
pip install -U python-dotenv
from dotenv import load_dotenv
Example is below
from dotenv import load_dotenv #for python-dotenv method load_dotenv() #for python-dotenv method import os user_name = os.environ.get('USER') password = os.environ.get('password') print(user_name, password)
Output
username password