|
|
@@ -30,6 +30,7 @@ User to remain a django.contrib.auth.models.User object.
|
|
|
|
|
|
from builtins import object
|
|
|
from importlib import import_module
|
|
|
+from pwd import getpwnam
|
|
|
|
|
|
import logging
|
|
|
import sys
|
|
|
@@ -420,6 +421,10 @@ class PamBackend(DesktopBackendBase):
|
|
|
def authenticate(self, request=None, username=None, password=None):
|
|
|
username = force_username_case(username)
|
|
|
|
|
|
+ if AUTH.PAM_USE_PWD_MODULE.get():
|
|
|
+ LOG.debug('setting username to %s using pam pwd module for user %s' % (getpwnam(username).pw_name, username))
|
|
|
+ username = getpwnam(username).pw_name
|
|
|
+
|
|
|
if pam.authenticate(username, password, AUTH.PAM_SERVICE.get()):
|
|
|
is_super = False
|
|
|
if User.objects.exclude(id=install_sample_user().id).count() == 0:
|