gpt4 book ai didi

ruby-on-rails - 仍然允许搜索的 Rails 加密列

转载 作者:太空狗 更新时间:2023-10-30 01:52:09 25 4
gpt4 key购买 nike

我有一个 Rails 应用程序,它要求我加密数据库中的某些列。

根据许多示例,我已经对用户密码和电子邮件进行了加密。即使对于像我这样的菜鸟来说,这似乎也很容易。

具体的挑战是我正在为律师开发一个应用程序(实际上是一个律师),我想加密他们客户的姓名和地址,这样如果数据库被盗,数据就不可读了。问题在于最终用户(代理人)将希望按客户进行搜索。

我假设根据我的要求,尽管有争论(尽管可能缺乏知识),但数据库中的加密是正确的方法。我认为否则在应用程序中搜索将非常困难。似乎可以设置数据库,以便在启动时可以将 key 从其他地方传递到数据库中,这样 key 就不会在服务器某处的文件中。

实际上,我什至不确定我正在寻找的加密类型是否可行或实用。我读了一些书并进行了搜索,但到目前为止,我还没有找到明确的解决方案。以下是我看过的最有希望的事情。所有这些似乎都是强大而富有创意的解决方案。请帮助我纠正任何错误印象,并指出(如果存在)可能有效的解决方案。一如既往,谢谢。

attr_encrypted

应用程序加密,但我认为实际搜索是不可能的。

pgcrypto

利用了 postgresql 的数据库加密,但它不是 Rails 4.0,我似乎无法做到这一点。不确定它是否会做我想做的事。

jmazzi/crypt_keeper

利用 postgresql 的数据库加密,但不允许对客户端数据进行有效的搜索。

最佳答案

根据 attr-encrypted/README.rdoc 可以搜索。有一个警告,它只有在所有记录都使用每个属性的相同 key 加密时才有效。

给出的例子是:

class User < ActiveRecord::Base
attr_encrypted :email, :key => 'a secret key'
attr_encrypted :password, :key => 'some other secret key'
end

# You can now lookup and login users like so:
User.find_by_email_and_password('test@example.com', 'testing')

关于ruby-on-rails - 仍然允许搜索的 Rails 加密列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21222010/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com