Froze rails gems
[depot.git] / vendor / rails / railties / doc / guides / source / actioncontroller_basics / http_auth.txt
diff --git a/vendor/rails/railties/doc/guides/source/actioncontroller_basics/http_auth.txt b/vendor/rails/railties/doc/guides/source/actioncontroller_basics/http_auth.txt
new file mode 100644 (file)
index 0000000..8deb40c
--- /dev/null
@@ -0,0 +1,24 @@
+== HTTP Basic Authentication ==
+
+Rails comes with built-in HTTP Basic authentication. This is an authentication scheme that is supported by the majority of browsers and other HTTP clients. As an example, consider an administration section which will only be available by entering a username and a password into the browser's HTTP Basic dialog window. Using the built-in authentication is quite easy and only requires you to use one method, `authenticate_or_request_with_http_basic`.
+
+[source, ruby]
+-------------------------------------
+class AdminController < ApplicationController
+
+  USERNAME, PASSWORD = "humbaba", "5baa61e4c9b93f3f0682250b6cf8331b7ee68fd8"
+
+  before_filter :authenticate
+
+private
+
+  def authenticate
+    authenticate_or_request_with_http_basic do |username, password|
+      username == USERNAME && Digest::SHA1.hexdigest(password) == PASSWORD
+    end
+  end
+
+end
+-------------------------------------
+
+With this in place, you can create namespaced controllers that inherit from AdminController. The before filter will thus be run for all actions in those controllers, protecting them with HTTP Basic authentication.