aboutsummaryrefslogtreecommitdiffstats
path: root/flywheel/authenticators.py
diff options
context:
space:
mode:
authortom christie tom@tomchristie.com2011-01-30 18:30:39 +0000
committertom christie tom@tomchristie.com2011-01-30 18:30:39 +0000
commit42f2f9b40d1295e18a5b720b0d1f6ad85e928d8a (patch)
tree458f97992bcd1348a413d21a5925f933ba7f74e3 /flywheel/authenticators.py
parent8a470f031eeccf45625c3e3e18a8743021b38d41 (diff)
downloaddjango-rest-framework-42f2f9b40d1295e18a5b720b0d1f6ad85e928d8a.tar.bz2
Rename to django-rest-framework, get simpleexample working
Diffstat (limited to 'flywheel/authenticators.py')
-rw-r--r--flywheel/authenticators.py44
1 files changed, 0 insertions, 44 deletions
diff --git a/flywheel/authenticators.py b/flywheel/authenticators.py
deleted file mode 100644
index 8de182de..00000000
--- a/flywheel/authenticators.py
+++ /dev/null
@@ -1,44 +0,0 @@
-from django.contrib.auth import authenticate
-import base64
-
-class BaseAuthenticator(object):
- """All authenticators should extend BaseAuthenticator."""
-
- def __init__(self, resource):
- """Initialise the authenticator with the Resource instance as state,
- in case the authenticator needs to access any metadata on the Resource object."""
- self.resource = resource
-
- def authenticate(self, request):
- """Authenticate the request and return the authentication context or None.
-
- The default permission checking on Resource will use the allowed_methods attribute
- for permissions if the authentication context is not None, and use anon_allowed_methods otherwise.
-
- The authentication context is passed to the method calls eg Resource.get(request, auth) in order to
- allow them to apply any more fine grained permission checking at the point the response is being generated.
-
- This function must be overridden to be implemented."""
- return None
-
-
-class BasicAuthenticator(BaseAuthenticator):
- """Use HTTP Basic authentication"""
- def authenticate(self, request):
- if 'HTTP_AUTHORIZATION' in request.META:
- auth = request.META['HTTP_AUTHORIZATION'].split()
- if len(auth) == 2 and auth[0].lower() == "basic":
- uname, passwd = base64.b64decode(auth[1]).split(':')
- user = authenticate(username=uname, password=passwd)
- if user is not None and user.is_active:
- return user
- return None
-
-
-class UserLoggedInAuthenticator(BaseAuthenticator):
- """Use Djagno's built-in request session for authentication."""
- def authenticate(self, request):
- if request.user and request.user.is_active:
- return request.user
- return None
-