我想用PHP编写基本的MVC框架和博客,并将其用于我自己的博客。我希望github上的所有内容都可供其他人使用,但似乎发布php,特别是数据库访问的东西,只会使它极易受到我可能甚至不知道的任何数量的攻击。</ p>
我不是说“oops我把我的数据库用户/传递给了github”,只是一切都是可见的,而且我不是网络安全专家。我如何知道我的数据库模型是否安全?也许我认为它比攻击网站更容易?
答案 0 :(得分:4)
通过默默无闻的安全根本不是安全。
答案 1 :(得分:4)
任何安全系统都是安全的,因为它逻辑上是正确的,而不是因为代码保密。如果您不相信自己编写逻辑上合理的安全代码,也许您不应该发布它。这并没有使代码更安全,它只是在发现明显的缺陷并利用它们时减慢攻击者的速度。 OTOH,开源代码并且有许多眼睛看问题是强化代码的常用方法。您只需要确保找到活跃的贡献者。
答案 2 :(得分:1)
忽略源控制中的数据库配置并提供.sample。软件的部分安装说明是使用.sample作为模板,供用户正确配置软件。
db.conf # ignored
db.conf.sample
(理想情况下,数据库不会公开访问。)
答案 3 :(得分:0)
在线托管代码之前,请确保将项目中的配置文件(通常包括数据库用户名和密码)排除在ignore list
之外。或者用带有虚拟用户名和密码的示例配置文件替换它们。
Github有一份关于此here的帮助文档。