首页 > 解决方案 > 将 sqilte 文件推送到公共仓库是否安全?

问题描述

我正在使用sqlite3Python,我的.db项目中有一个文件,它包含与用户、密码哈希、用于哈希的盐、用户名等相关的所有详细信息。这个文件位于本地 git 存储库中。我确实有这个项目的远程公共回购。但我担心将数据库文件推送到公共仓库是否是个好主意?

我应该将回购设为私有吗?或者我应该将此文件添加到.gitignore列表中并使用空数据即时生成数据库和表?

或者有没有一种方法可以使用类似于 MySQL 的用户名和密码来保护数据库,而不是完全一样,因为 MySQL 在服务器上运行,并且您输入用户名和密码以使用服务器而不是特定数据库?

我知道将一些基于云的数据库与 API 一起使用可能是一个更好的主意,但这只是一个基本级别的项目,我没有太多与基于云的数据库相关的经验,但用户可能会提供实际敏感的数据。

那么将文件推.db送到公共远程仓库是否安全?

标签: python-3.xdatabasegitsqlite

解决方案


Git 与任何其他 CVS(并发版本控制系统)一样,旨在存储源代码和所有文件,包括二进制文件(可能由Git LFS提供),这些文件不能由工具、源代码或脚本按需生成。

关于数据库的具体情况,您应该提供 DDL 脚本来重现 DB 模式,并提供删除保留数据的 SQL 代码以再次填充它。

一个好的方法是在 SQL 文件中引入占位符,以及需要敏感数据来替代上述占位符的脚本。


推荐阅读