我使用the attr_encrypted gem,我也得到了設計安裝在我的環境。attr_encrypted和devise,加密用戶數據與用戶密碼
我得到這個由色器件處理的用戶模型和數據庫列是: encrypted_password
用戶可以保存客戶和我要加密的客戶姓名和年齡與用戶的密碼。
我的client.rb文件如下所示: 這裏數據被成功加密。
class Client < ActiveRecord::Base
attr_accessor :name :age
attr_encrypted :name, :age, key: "test1234"
但我想使用Users.password加密數據。 東西像這樣:
class Client < ActiveRecord::Base
attr_accessor :name :age
attr_encrypted :name, :age, key: current_user.encrypted_password
的CURRENT_USER是設計輔助方法,但由於這是從一個會議上,我不能在模型訪問它。 基本上我想用用戶密碼加密所有客戶端的東西。 但是,如果我用encrypted_password來做這件事,那麼我已經得到了解密整個字段的密碼。 我想爲我的用戶提供安全性,我不想知道或能夠查看他們的數據。 所以唯一的方法是用prehashed devise users password加密所有數據?
編輯:
的user.encrypted_password已經哈希,每當我訪問DB - 我可以用它來解密所有數據嗎?
所以我應該要求用戶密碼 - >散列它像設計一樣 - 比較它與users.encrypted_password?
我在某處有邏輯錯誤嗎?
你會如何解決這個問題?
http://stackoverflow.com/questions/2513383/access-current-user-in-model – 2014-11-21 17:16:14