【发布时间】:2014-02-08 21:57:39
【问题描述】:
我有一个 Rails 应用程序,它要求我加密数据库中的某些列。
根据许多示例,我已经对用户密码和电子邮件进行了加密。即使对于像我这样的菜鸟来说,这似乎也很容易。
具体的挑战是我正在为律师开发一个应用程序(实际上是一个律师),我想加密他们客户的姓名和地址,这样如果数据库被盗,该数据就无法读取。问题是最终用户(律师)将希望按客户进行搜索。
我假设根据我的要求,尽管存在争议(尽管可能缺乏知识),但数据库中的加密是正确的方法。我认为否则在应用程序中搜索将非常困难。似乎可以设置数据库,以便在启动时可以将密钥从其他地方传递到数据库中,以便密钥不在服务器上某处的文件中。
实际上,我什至不确定我正在寻找的那种加密是可能的或实用的。我已经阅读了一些内容并进行了搜索,但到目前为止,我还没有找到明确的解决方案。以下是我看过的最有希望的事情。所有这些似乎都是强大而富有创意的解决方案。请帮助我纠正任何错误印象,并指出可能有效的解决方案(如果存在)。一如既往,谢谢。
attr_encrypted
应用程序加密,但我认为实际搜索是不可能的。
pgcrypto
利用 postgresql 的数据库加密,但它不是 Rails 4.0,我似乎无法做到。不确定它是否会做我想做的事。
jmazzi/crypt_keeper
利用 postgresql 的数据库加密,但不允许对客户端数据进行搜索。
【问题讨论】:
-
有什么解决办法吗?我也面临同样的问题
标签: ruby-on-rails database search encryption