上传我的Django项目到GitHub安全吗?

5
将我的 Django 项目上传到 GitHub,会使我创建的超级用户(使用 python manage.py createsuperuser 创建)变得不安全吗?
我使用了一个敏感密码来创建超级用户,我不希望通过上传源代码到 GitHub 来危及它。
网站本身不包含任何敏感代码。
1个回答

11
一般来说,只要您的settings.py文件不包含敏感信息,将Django项目上传到GitHub就不会危及您的超级用户账户。您的用户信息存储在数据库中,应该不会包含在Git仓库中。
最可能出现问题的情况是如果您正在使用SQLite,这是一个基于文件的数据库。如果是这种情况,请确保您的数据库文件没有被检入到您的版本库中(并且从来没有)。

1
数据库本身的凭据不会被访问到吗? - L3viathan
2
@L3viathan,将数据库凭据提交是从来不是一个好主意,但是感谢您提醒许多开发人员仍然这样做。我会相应地更新我的答案。 - Chris
1
@kenschnall,管理员密码只存在于您的数据库中。只要您不包括数据库本身(例如SQLite文件)或您的数据库凭据(例如在settings.py中),您就不必担心。 - Chris
1
OP特别询问了超级用户密码,但我认为settings.py文件包含的关于项目的信息对假设的攻击者非常有用。当然SECRET_KEY不应该被公开,同时ALLOWED_HOSTS和任何HTTPS标识也让我有些担忧。你有什么想法? - cxrodgers
1
@cxrodgers,回答这个问题有些难度,因为 settings.py 可以包含任何内容。我同意 SECRET_KEY 不应该公开,但是我认为它不应该放在 settings.py 里面。在我看来,它应该通过其他方式进行配置,例如通过一种类似于12 Factor的环境变量。这就是为什么我说“只要您的 settings.py 没有包含敏感信息”。 - Chris
显示剩余4条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接