2011-12-18 102 views
0

我在我的應用程序中有一個非常特殊的登錄功能,所以而不是插件我使用我自己的代碼。在rails和安全會話

在我的控制器我有類似

def login 
    ... 
    session[:customer_id] = id 
end 

我使用的CookieStore(默認)。所以它是安全的?如果有人編輯cookies會怎麼樣?他能用另一個身份證模仿別人嗎?

回答

1

消息摘要是包含在cookie來確保數據的完整性:在不知道包含在散列密鑰,用戶不能改變他的USER_ID。使用config/environment.rb中的預生成祕密生成新應用程序。爲您正在升級的舊應用設置您自己的設置。

請參閱http://api.rubyonrails.org/v2.3.8/classes/ActionController/Session/CookieStore.html。還請注意這句話:

如果你有會話數據超過4K或不希望自己的數據是對用戶可見,選擇另一個會話存儲。

在你的情況下,它肯定沒關係,你可以使用CookieStore而不用擔心。