authentic2-auth-kerberos/src/authentic2_auth_kerberos/backends.py

29 lines
902 B
Python

from django_kerberos.backends import KerberosBackend
import logging
from . import app_settings
class A2KerberosBackend(KerberosBackend):
def __init__(self):
super(A2KerberosBackend, self).__init__()
self.logger = logging.getLogger(__name__)
def username_from_principal(self, principal):
if app_settings.REALM:
username, domain = principal.rsplit('@', 1)
return '{0}@{1}'.format(username, app_settings.REALM)
return super(A2KerberosBackend, self).username_from_principal(principal)
def should_create_user(self):
return app_settings.CREATE_USER
def provision_user(self, principal, user):
pass
def authenticate(self, principal=None, **kwargs):
if not app_settings.ENABLED:
return
return super(A2KerberosBackend, self).authenticate(principal=principal,
**kwargs)