Isaac Jessop
Isaac Jessop

Reputation: 110

django ldap auth not working from the app

anyone using django_auth_ldap against an active directory server

I am trying to set up auth through django_auth_ldap and am having an issue. if i run my auth from the django interactive shell the auth works fine. example from the shell

>>> from django.contrib.auth import authenticate
>>> authenticate(username='#############',password='*************')
search_s('ou=People, o=hp.com', 2, '(uid=%(user)s)') returned 1 objects: uid=###########,ou=people,o=hp.com
Populating Django ###########
Django user ########## does not have a profile to populate
<User:########## >

but the same code from within a view in the app fails with

Caught LDAPError while authenticating ##########: SERVER_DOWN({'desc': "Can't contact LDAP server"},)

Upvotes: 1

Views: 1783

Answers (1)

Isaac Jessop
Isaac Jessop

Reputation: 110

I figured it out. I decided I would set up remote debugging so that I could step through the process and see where it was failing in that process I found that the httpd process was being prevented (by selinux) from making a network connection back to my eclipse IDE fixing this fixed the app. I think selinux was preventing the app from connecting to the ldap server. When I got my debug environment all worked out and stepped through it all worked fine !

the command to allow httpd to make a network connection as root setsebool -P httpd_can_network_connect 1

Upvotes: 3

Related Questions