2015-04-24 141 views
0

我想要一个加密的数据库,其中的加密密钥是在用户级别(甚至在项目级别更好,见下文)。有没有一种简单的方法在Symfony2中实现它?Symfony2每个用户加密数据库

考虑到用户创建可从多人访问的项目,是否有共享密钥的方法,以便只有拥有密钥的用户才能访问资源?

因此,它将是一种2级认证:一种登录,另一种认证项目。将这些密钥存储在cookie中是否安全?

所以基本上我想遮住我的背部,以防我的DB被完全倾倒。即使没有项目密钥,管理员也不能看到项目细节。

当然,如果用户失去了密钥,他不能再访问资源......任何方式来避免这种情况?

为了更清楚。我正在建立一个SaaS解决方案,让最终用户(我的客户)能够创建“项目”并跟踪项目的进展情况等。您创建一个项目并邀请其他人员参与其中以查看或编辑内容。

在这一点上,编码是在0。我想提供一个额外的安全层,但不知道如何。

+1

这不是一个关于PHP/Symfony的问题,因为它是关于数据库加密的问题。对于开球,如果你想加密一个数据库:你使用MySQL的数据库是什么? MSSQL? PG?其次:你在谈论什么是这些_“项目”,在这种情况下什么是“用户”?是各种(交互式)SF2项目的用户开发人员?用户客户是否使用基于SF2的工具来管理他们的“项目”_?这里只是没有足够的东西,更多的细节,一些代码 - 也许,告诉我们你试过的东西,以及你看过的资源...... –

+0

谢谢,非常相关的问题(我给了太多理所当然的理由;))。现在我详细解释我编辑的问题。 –

回答

0

看看到https://github.com/vmelnik-ukraine/DoctrineEncryptBundle/tree/master“包允许创建,将在数据库中的一些加密算法的帮助下被保护领域主义实体,这将是清楚的开发商,因为包是使用学说的生命周期事件”

+0

我遇到了这个包,但关键是全球。如果有人有权访问配置文件,它将能够解密整个数据库。 –

相关问题