2011-08-22 2 views
0

내 응용 프로그램에 LDAP 인증을 사용하고 싶습니다. 내 응용 프로그램은 사용자의 입력을 받아 firstname, lastname과 같은 세부 정보를 데이터베이스에 저장합니다. 내 settings.py 파일에 다음 코드를 작성할 때 오류가 발생하지 않았으므로 응용 프로그램이 정상적으로 실행 중입니다. 그렇다면 LDAP가 앱에서 사용 중이거나 앱에서 일부 수정이 필요하다는 것을 어떻게 알 수 있습니까? 도와주세요. 장고 문서의 기본 설정을 사용했습니다.django에서 앱 인증을 위해 ldap을 사용하는 방법은 무엇입니까?

import ldap 
from django_auth_ldap.config import LDAPSearch, GroupOfNamesType 
# Baseline configuration. 
AUTH_LDAP_SERVER_URI = "ldap://ldap.example.com" 
AUTH_LDAP_BIND_DN = "cn=django-agent,dc=example,dc=com" 
AUTH_LDAP_BIND_PASSWORD = "marksheet" 
AUTH_LDAP_USER_SEARCH = LDAPSearch("ou=users,dc=example,dc=com", 
    ldap.SCOPE_SUBTREE, "(uid=%(user)s)") 
AUTH_LDAP_GROUP_SEARCH = LDAPSearch("ou=django,ou=groups,dc=example,dc=com", 
    ldap.SCOPE_SUBTREE, "(objectClass=groupOfNames)" 
) 
AUTH_LDAP_GROUP_TYPE = GroupOfNamesType(name_attr="cn") 
AUTH_LDAP_REQUIRE_GROUP = "cn=enabled,ou=django,ou=groups,dc=example,dc=com" 
AUTH_LDAP_USER_ATTR_MAP = { 
    "first_name": "firstname", 
    "last_name": "lastname", 
} 

감사합니다 ...

+1

질문을 다시 포맷하십시오. 코드 블록 앞에 추가 줄 바꿈을 넣고 그 앞뒤에 역 따옴표 ''를 제거 할 수 있습니다. 백틱은 일반적으로 인라인 코드 블록에 사용됩니다. 또한 settings.py에서 LDAP 서버가있는 실제 URI로 URI를 변경 했습니까 (코드에 표시된 example.com이 아닌)? 내 생각 엔 AUTH_LDAP_SERVER_URI 등이 제대로 구성된 도메인을 가진 실제 LDAP 서버를 가리 키지 않는 한 아무 일도 없을 것입니다. – arunkumar

+0

Thanks.i는 ldap_server_uri 실제 LDAP 서버를 사용해야 함을 이해합니다. ldap에 대한 사용자를 생성하는 방법과 실제 ldap 서버를 알 수있는 방법 ldapserver의 설정과 django와 연결하는 주된 문제 ??? –

+0

질문을 다시 포맷하고 다시 말해야합니다. 첫 번째 질문은 LDAP를 설정하는 방법입니다. 다음 질문은 인증을 위해 장고를 사용하는 방법입니다. 어쨌든 여기에 포인터가 있습니다 - http://www.openldap.org/doc/admin22/ – arunkumar

답변

2

당신이 django-auth-ldap 패키지를 사용하여이 작업을 수행하려고하는 것 같다. 이 설정의 경우 설정에 가장 중요한 부분이 없으므로 AUTHENTICATION_BACKENDSdjango_auth_ldap.backend.LDAPBackend을 추가하십시오.

자세한 설정 지침은 django-auth-ldap documentation을 참조하십시오.

관련 문제