2012-01-05 49 views

Trả lời

6
authenticate_or_request_with_http_basic do |username, password| 
    username == "user" && password == "secret" 
end if Rails.env.production? 
+0

Cảm ơn bạn đã trả lời nhanh chóng! – Cojones

32

Có, hãy thử:

class ApplicationController < ActionController::Base 
    before_filter :authenticate 

    def authenticate 
    if Rails.env.production? 
     authenticate_or_request_with_http_basic do |username, password| 
     username == "user" && password == "%$§$§" 
     end 
    end 
    end 
end 
+0

Cảm ơn bạn cũng đã trả lời nhanh! – Cojones

+1

Tôi không phải là fan của «Rails.env.production?» Bởi vì nó kết thúc đúng bất kể máy chủ đang chạy ứng dụng nào. Tôi thích sử dụng đặt tên người dùng/mật khẩu trong các biến môi trường và quyết định xác thực dựa trên việc liệu chúng có được đặt hay không. Nhưng tôi nhận ra điều đó nằm ngoài phạm vi của câu hỏi này. :) – Ricky

12

Chỉ cần thêm video này vào ví dụ của bạn

http_basic_authenticate_with :name => 'user', :password => 'secret' if Rails.env.production? 
Các vấn đề liên quan