如何使用attr_encrypted和authlogic对用户数据进行解密/加密

时间:2011-05-01 08:52:55

标签: ruby-on-rails security authlogic

我有一个使用authlogic的用户模型和一个为每个用户存储一些机密数据的模型。 为了保护系统,我想使用attr_encrypted对后一个模型的属性进行解密/加密。 如果有人设法窃取整个数据库和应用程序源代码,我想拥有一个安全的系统。

我的问题是:为attr_encrypted生成密码的最佳方法是什么?如何在登录会话期间将其保留在“内存”中,以便在必要时进行解密/加密?

我想到了:

  • 当用户注册时生成随机密码,使用用户密码对其进行加密并将其保存在数据库中。

  • 每当用户登录时,请使用其密码解密随机密码。

  • 将随机密码保存在cookie中,以便在必要时对个人数据进行解密/加密。

您有任何建议或更好的想法吗?特别是我不确定最后一个要点......

2 个答案:

答案 0 :(得分:0)

如果您正在使用authlogic,它会管理密码内容,会话等,您无需担心密码解密。这是自动的。

答案 1 :(得分:0)

我刚刚找到了我想要的东西:

How to implement password protection for individual files?