Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --------------setttings.py--------------
- AUTHENTICATION_BACKENDS = (
- 'mycoach2.backends.SettingsBackend',
- )
- -----------mycoach2/backends.py-----------
- from django.conf import settings
- from django.contrib.auth.models import User, check_password
- class SettingsBackend(object):
- """
- Authenticate against the settings ADMIN_LOGIN and ADMIN_PASSWORD.
- Use the login name, and a hash of the password. For example:
- ADMIN_LOGIN = 'admin'
- ADMIN_PASSWORD = 'sha1$4e987$afbcf42e21bd417fb71db8c66b321e9fc33051de'
- """
- def authenticate(self, username=None, password=None):
- try:
- user = User.objects.get(username=username)
- return user
- except:
- return None
- """
- login_valid = (settings.ADMIN_LOGIN == username)
- pwd_valid = check_password(password, settings.ADMIN_PASSWORD)
- if login_valid and pwd_valid:
- try:
- user = User.objects.get(username=username)
- except User.DoesNotExist:
- # Create a new user. Note that we can set password
- # to anything, because it won't be checked; the password
- # from settings.py will.
- user = User(username=username, password='get from settings.py')
- user.is_staff = True
- user.is_superuser = True
- user.save()
- return user
- return None
- """
- def get_user(self, user_id):
- try:
- return User.objects.get(pk=user_id)
- except User.DoesNotExist:
- return None
- def has_perm(self, user_obj, perm, obj=None):
- return true
- if user_obj.username == settings.ADMIN_LOGIN:
- return True
- else:
- return False
Add Comment
Please, Sign In to add comment