I did following things to use HTTP basic authentication to protect my staging server:
YML file with username and password pair:
devuser: devpass testuser: testuserpass
Loaded YML data from application initializer:
HTTP_AUTH_USERS = YAML.load_file("#{Rails.root.to_s}/config/staging_server_users.yml")
Callback and authentication in the application controller:
before_filter :authenticate_for_staging_server, :if => lambda { Rails.env.development? } private def authenticate_for_staging_server authenticate_or_request_with_http_basic do |user_name, password| password == HTTP_AUTH_USERS[user_name] end end
Hope it will help a lot who wants to protect their staging server.
No comments:
Post a Comment