2011-11-18 45 views
1

我已經配置(在控制器)基本HTTP認證 - 會話的持續時間

高於一切在控制器文件

基本認證:

before_filter :check_logged_in, :only => [:edit, :update, :destroy] 

上的文件的底部:

private 
    def check_logged_in 
    authenticate_or_request_with_http_basic("Ads") do |username, password| 
      username == "admin" && password == "apple" 
    end 
end 

它就像一個魅力,但有一件事我不知道 - 當我提供長時間保持登錄狀態的用戶名和密碼,當我點擊「刪除」或「更新」特定條目時,我不會再收到提示。我認爲出了問題,但是當我打開另一個瀏覽器時 - 它再次提示我,但只有一次,我不必爲其餘的進行驗證。 然後我認爲這是一個cookie問題,但即使我刪除了Chrome中的所有cookie,也沒有任何更改。所以我有幾個問題:

  1. 有沒有什麼辦法可以說我要認證多久?
  2. 是否有任何方式提示認證每次我點擊這裏提到的資源 - :check_logged_in, :only => [:edit, :update, :destroy]

回答

6

HTTP基本認證不使用cookies。登錄信息隨每個HTTP請求一起發送到指定的Web服務器。您已登錄,直至關閉網絡瀏覽器或刪除所有活動登錄。

+0

謝謝,這解釋了很多 – Elijah