summaryrefslogtreecommitdiff
path: root/docs/ref
diff options
context:
space:
mode:
authorTim Graham <timograham@gmail.com>2014-04-18 16:06:26 -0400
committerTim Graham <timograham@gmail.com>2014-04-18 16:11:04 -0400
commitb06e45bbf6988f9f8671bbc5b5b63d419d50edda (patch)
tree3d6542dd14959e818c79eee8ac71aace258da5d9 /docs/ref
parentb1e7dd445bb64c27df8e2b6902a76a67c79332ab (diff)
[1.7.x] Moved RemoteUserBackend documentation to reference guide.
Backport of 26d118c3fe from master
Diffstat (limited to 'docs/ref')
-rw-r--r--docs/ref/contrib/auth.txt34
1 files changed, 34 insertions, 0 deletions
diff --git a/docs/ref/contrib/auth.txt b/docs/ref/contrib/auth.txt
index 34dcb010d5..0f1a493a28 100644
--- a/docs/ref/contrib/auth.txt
+++ b/docs/ref/contrib/auth.txt
@@ -444,3 +444,37 @@ The following backends are available in :mod:`django.contrib.auth.backends`:
:attr:`request.META['REMOTE_USER'] <django.http.HttpRequest.META>`. See
the :doc:`Authenticating against REMOTE_USER </howto/auth-remote-user>`
documentation.
+
+ If you need more control, you can create your own authentication backend
+ that inherits from this class and override these attributes or methods:
+
+.. attribute:: RemoteUserBackend.create_unknown_user
+
+ ``True`` or ``False``. Determines whether or not a
+ :class:`~django.contrib.auth.models.User` object is created if not already
+ in the database. Defaults to ``True``.
+
+.. method:: RemoteUserBackend.authenticate(remote_user)
+
+ The username passed as ``remote_user`` is considered trusted. This method
+ simply returns the ``User`` object with the given username, creating a new
+ ``User`` object if :attr:`~RemoteUserBackend.create_unknown_user` is
+ ``True``.
+
+ Returns ``None`` if :attr:`~RemoteUserBackend.create_unknown_user` is
+ ``False`` and a ``User`` object with the given username is not found in the
+ database.
+
+.. method:: RemoteUserBackend.clean_username(username)
+
+ Performs any cleaning on the ``username`` (e.g. stripping LDAP DN
+ information) prior to using it to get or create a
+ :class:`~django.contrib.auth.models.User` object. Returns the cleaned
+ username.
+
+.. method:: RemoteUserBackend.configure_user(user)
+
+ Configures a newly created user. This method is called immediately after a
+ new user is created, and can be used to perform custom setup actions, such
+ as setting the user's groups based on attributes in an LDAP directory.
+ Returns the user object.