diff options
Diffstat (limited to 'src/lib/Bcfg2/Server/Reports/backends.py')
-rw-r--r-- | src/lib/Bcfg2/Server/Reports/backends.py | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/lib/Bcfg2/Server/Reports/backends.py b/src/lib/Bcfg2/Server/Reports/backends.py new file mode 100644 index 000000000..85241932f --- /dev/null +++ b/src/lib/Bcfg2/Server/Reports/backends.py @@ -0,0 +1,34 @@ +from django.contrib.auth.models import User +from nisauth import * + + +class NISBackend(object): + + def authenticate(self, username=None, password=None): + try: + print("start nis authenticate") + n = nisauth(username, password) + temp_pass = User.objects.make_random_password(100) + nis_user = dict(username=username, + ) + + user_session_obj = dict(email=username, + first_name=None, + last_name=None, + uid=n.uid) + user, created = User.objects.get_or_create(username=username) + + return user + + except NISAUTHError: + e = sys.exc_info()[1] + print(e) + return None + + def get_user(self, user_id): + try: + return User.objects.get(pk=user_id) + except User.DoesNotExist: + e = sys.exc_info()[1] + print(e) + return None |