summaryrefslogtreecommitdiffstats
path: root/src/lib/Bcfg2/Server/Reports/backends.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/Bcfg2/Server/Reports/backends.py')
-rw-r--r--src/lib/Bcfg2/Server/Reports/backends.py34
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