我正在使用Devise和令牌認證,現在我想加密數據庫中的令牌。 任何人都可以給我一個提示,其中設計從數據庫中存儲/檢索令牌嗎?加密Devise令牌
我也使用attr_encrypted寶石,一旦找到正確的位置,整個加密應該相當容易。
編輯:
喜歡在這裏描述我已經實現令牌認證:http://zyphdesignco.com/blog/simple-auth-token-example-with-devise
我加在用戶模式下面一行,應加密authentication_token
attr_encrypted :authentication_token, :key => 'a secret key', :attribute => 'authentication_token'
當我運行它並嘗試登錄時,出現以下錯誤消息:
Completed 500 Internal Server Error in 364ms
SystemStackError - stack level too deep:
(gem) actionpack-3.2.13/lib/action_dispatch/middleware/reloader.rb:70:in `'
似乎有是制定一個衝突和attr_encrypted和兩個戰鬥在authentication_token方法的重新定義(THX的提示@sbfaulkner)
也許有人有類似的問題,並且知道解決的辦法?
謝謝盧卡斯! 我試圖實施一個解決方案,但我遇到了一些麻煩。也許有人可以給我一個提示。 我用原始內容創建了**/config/initializers/token_authenticable.rb **,然後嘗試添加以下行** attr_encrypted:authentication_token,:key =>'一個祕密加密密鑰',:attribute =>' authentication_token'** 啓動rails服務器時出現的錯誤是**/config/initializers/token_authenticatable.rb:44:在中:undefined方法attr_encrypted爲Devise :: Models :: TokenA uthenticatable:模塊(NoMethodError)**。 我被困在這裏。 –
2013-04-03 12:28:17