任何对活动目录服务器使用django_auth_ldap的人
我正在尝试通过django_auth_ldap设置auth并遇到问题。 如果我从django交互式shell运行我的身份验证,auth工作正常。 来自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:########## >
但是应用视图中的相同代码会失败并显示
Caught LDAPError while authenticating ##########: SERVER_DOWN({'desc': "Can't contact LDAP server"},)
答案 0 :(得分:2)
我明白了。我决定设置远程调试,以便我可以逐步完成整个过程,看看它在该过程中失败的地方我发现httpd进程被selinux阻止从网络连接回到我的eclipse IDE修复这个修复了应用程序。我认为selinux阻止了应用程序连接到ldap服务器。当我得到我的调试环境时,所有的工作都完成了,并且一切都运行良好!
允许httpd建立网络连接的命令 作为根 setsebool -P httpd_can_network_connect 1