이미 경우 지금 그러나 다만하여이를 해결 한 수
당신은 설정에 LDAP 저장소 (완료)가 필요합니다. 바인딩 할 수있는 사용자 개체를 만들어야합니다. 이 작업은 LDIF 파일이나 유사한 방법을 사용하여 수행됩니다. LDAP db를 시각화하는 데 매우 유용한 도구는 'Apache Directory Studio'입니다. ldif가 나타날 수있는 방법의 예 :
dn:cn=myuser,cn=localhost
changetype: modify
add: cn=myuser
userPassword: password01
이것은 스키마에 따라 다릅니다. https://pythonhosted.org/django-auth-ldap/
을이 좋은 (워드 프로세서)에서 예입니다 : 내가보기 엔 당신이 특정 구현을위한 장고 문서를 읽어 보는 것이 좋습니다
import ldap
from django_auth_ldap.config import LDAPSearch
AUTH_LDAP_BIND_DN = ""
AUTH_LDAP_BIND_PASSWORD = ""
AUTH_LDAP_USER_SEARCH = LDAPSearch("ou=users,dc=example,dc=com",
ldap.SCOPE_SUBTREE, "(uid=%(user)s)")
하지만 LDIF를 통해 사용자를 추가했다 맡기 "CN = localhost "를 입력하면 검색 필드에 사용할 dn이 표시됩니다. 문서 메모에서 원하는 경우 전체 디렉토리를 검색 할 수 있습니다.
그것 무슨 일이 일어나고 있는지 명확하지 않으면 :
- 가져 오기 LDAP를 모듈
- 가져 오기의 ldapsearch 기능을? 장고 모듈
- 에서 설정 빈 바인드 DN (이 완전한 사용자 이름과 같다. 예를 들어, UID = 참고 MyUser, DC = com)을
- 빈 바인드 암호
- 가 검색을 수행 설정합니다. 형식과 같이 : ("기본", 범위, searchfilter) 당신은 파이썬의 표준 LDAP 모듈을 사용하여 테스트 할 수 있습니다
: 정말 중요하지만, "ldap.SCOPE_SUBTREE"뿐만
import ldap
ld = ldap.initialize("ldaps://acme.com:636")
ld.bind_s("userDN","Password")
ld.search_s("cn=acme.com",ldap.SCOPE_SUBTREE,"uid=myuser")
를, "LDAP .SCOPE_BASE "등은 정수입니다. 그래서 대신 0, 1, 2를 전달할 수 있습니다.
오래 전에 해결해도 행운을 비네.