我只是想确定Raven DB使用的文件系统上的文件是否加密?有人可以直接打开文件系统上的文件并直接将它们从二进制转换为ASCII,还是加密?
我试图说服我们的管理层给RavenDB一个机会,但他们担心安全问题。他们给出的示例是,您不能只打开MS SQL db文件,将其从二进制转换为ASCII,然后读取它。所以我试图验证RavenDB是否也阻止了这种事情?
答案 0 :(得分:7)
嗯,我个人认为如果他们提出这样的稻草人论点,你的管理层就会很糟糕。
回答你的问题:不,你不能只用记事本打开ravens数据文件夹中的任何文件,并希望看到有意义的东西。因此,对于那些不知道如何编程的人,是的,他们加密。
为了管理你的管理,你可以告诉他们raven使用与微软Exchange Server相同的加密算法。如果他们想深入挖掘 - 它被称为Esent。
答案 1 :(得分:3)
RavenDb存储未加密。您可以使用记事本打开它并查看一些数据。同时我不认为MS SQL默认加密文件。
答案 2 :(得分:0)
RavenDB在2012年中期增加了加密功能。获取RavenDB的“捆绑:加密”,然后确保您的密钥在.NET配置文件或其他任何内容中正确加密。
http://ravendb.net/docs/article-page/3.0/csharp/server/bundles/encryption
http://ayende.com/blog/157473/awesome-ravendb-feature-of-the-day-encryption
答案 3 :(得分:0)
SQL Server 2008确实有加密功能,但您需要预先准备数据库实例以启用它,然后创建启用加密的数据库,然后存储数据。
如果您还没有,可以只是将数据库从机器上复制下来并在可以访问它的工具中打开它。
使用RavenDB,您可以勾选方框然后离开! (虽然我不知道将备份移动到另一台机器并恢复它们的复杂性。)
关于管理层的观点,这是一个相对毫无意义的论点。
如果您可以直接访问数据库文件,那么它的游戏就结束了。 加密是你最后的防线。
[我不认为黑客会在记事本中打开一个40GB的文件..这很傻: - )]
所以,不要在最坏的情况下结束,你必须看看你可以实现的控制,甚至达到这个级别的关注。
您需要弄清楚有人甚至会如何访问该文件(以及与所有缓解技术相关的成本):
限制对服务器的直接访问可以减少窃取它的速度。您必须考虑所有预防性控件(门锁,ID卡,虹膜扫描仪),侦探控制(警报系统,CCTV)以及您想花多少钱在那。
为什么云计算如此吸引人!
然后,您必须通过RDP进入计算机或通过Active Directory远程连接到其文件系统,以便只有少数人可以访问它 - 可能是IT支持和数据库管理员。作为管理员,他们应该在组织内进行审查和信任(通过信息安全治理框架)。
如果您还希望进一步降低风险,可以像银行一样实施2因素身份验证,这样即使知道用户名和密码也无法将您带到服务器!
然后,您的公司员工有可能访问它 - 合法且非法。我的意思是,当用户无论如何都可以查询时,为什么要购买保安,狗和巨型围栏的麻烦呢!您只允许对数据的某些部分进行某些操作。
总结......'深度防御'是你如何回应它。始终存在可识别的风险,但您需要考虑控制的数量,如果风险过高则添加更多。但是,为您的组织添加更多控件通常会降低系统的用户友好性。