mirror of
https://github.com/ansible/awx.git
synced 2026-03-04 02:01:01 -03:30
Be more restrictive in catching LDAP exceptions.
django-auth-ldap can throw exceptions, like TypeError if it's misconfigured. If we encounter an exception attempting to log into an LDAP server, log it and move on (otherwise, an uncaught exception will cause local login to fail, too). see: #5933
This commit is contained in:
@@ -12,7 +12,6 @@ from django.dispatch import receiver
|
|||||||
from django.contrib.auth.models import User
|
from django.contrib.auth.models import User
|
||||||
from django.conf import settings as django_settings
|
from django.conf import settings as django_settings
|
||||||
from django.core.signals import setting_changed
|
from django.core.signals import setting_changed
|
||||||
from django.core.exceptions import ImproperlyConfigured
|
|
||||||
|
|
||||||
# django-auth-ldap
|
# django-auth-ldap
|
||||||
from django_auth_ldap.backend import LDAPSettings as BaseLDAPSettings
|
from django_auth_ldap.backend import LDAPSettings as BaseLDAPSettings
|
||||||
@@ -90,8 +89,8 @@ class LDAPBackend(BaseLDAPBackend):
|
|||||||
return None
|
return None
|
||||||
try:
|
try:
|
||||||
return super(LDAPBackend, self).authenticate(username, password)
|
return super(LDAPBackend, self).authenticate(username, password)
|
||||||
except ImproperlyConfigured:
|
except Exception:
|
||||||
logger.error("Unable to authenticate, LDAP is improperly configured")
|
logger.exception("Encountered an error authenticating to LDAP")
|
||||||
return None
|
return None
|
||||||
|
|
||||||
def get_user(self, user_id):
|
def get_user(self, user_id):
|
||||||
|
|||||||
Reference in New Issue
Block a user