是否有任何版本控制系统允许您指定行级别的安全限制而不是文件级别?我知道维持下去会很可怕。如果我不想让某些字符串进入数据库,我应该研究hook的概念并管理hook层中所有非常敏感的信息吗?如何将钩子从一个系统复制到另一个系统?
更新:也许最好的方法是对敏感数据进行pgp加密,那些无法解密的人将被蒙在鼓里。有什么想法吗?从安全角度来看,这可能不是最佳实践。
最佳答案
我们遇到了同样的问题,决定通过建立第二个存储库来解决它。
当我需要将configuration management文件存储在包含敏感信息的版本控制中时,这就产生了。存储应用程序中的敏感数据也很有意义。
我们最初使用svn externals和git submodules来包含敏感数据,但后来发现只要简单地链接到另一个位置就不那么麻烦了。
我还发现添加适当的忽略以防止相同的文件检入到开发存储库中是有帮助的。自从这样做以来,我们没有让任何人意外检查任何敏感的东西。
它有助于尝试将敏感信息保存在一组简洁的配置文件中——我不会将其分散开来,放在一个地方并保护那个地方。