2

我们将在数据库模型 res_partners 中存储一些关于我们客户的敏感信息。

但是,我们不想将此信息存储在简单的文本字段中。如果可能的话,我们希望对这些字段进行一些基本的加密。我们不希望有权访问数据库的人访问这些字段。

有没有办法我们可以在 openerp 或 postgres 中完成这项工作?

谢谢你,维沙尔·基亚拉尼

4

1 回答 1

2

没有“基本”加密之类的东西。Rot13 无法将您带到这里。如果您的数据足够敏感,值得保护,那么您需要使用最先进的密码器,例如 Blowfish。我建议你好好看看 Bruce Schneier 的书Applied Cryptography

实现此目的的简单(且不安全)方法是重载模型的writeread方法以在写入前加密和读取后解密。

棘手的部分是存储加密密钥。您可以将它存储在运行 OpenERP 服务器的计算机上的文件中(假设数据库在另一台服务器上运行)。这仍然很弱,因为密钥将在服务器上清晰可用,但如果您不信任您的数据库服务器管理员,但相信您的 openerp 服务器管理员,它仍然很有用。将数据库服务器放在安全和受信任的地方仍然更容易,并且如果需要加密数据库的脱机副本(例如备份)。

如果您想要更高的安全性,您必须将加密的数据发送到客户端应用程序,并使用用户提供的密钥进行解密。我对 openerp 的这部分知识不够了解,无法说出它是否容易实现。

于 2012-12-18T14:47:16.357 回答