LDAP 연결은 인증되어야 합니다.

 

LDAP 클라이언트는 간단한 인증 방법을 제공하는 ‘바인드 요청’을 통해 LDAP 서버에 인증합니다.

LDAP의 간편 인증은 세 가지 메커니즘으로 사용할 수 있습니다:

  • 길이가 0인 사용자 이름 및 비밀번호 값으로 바인드 요청을 수행하는 익명 인증 메커니즘.
  • 길이가 0인 비밀번호 값으로 바인드 요청을 수행하여 인증되지 않은 인증 메커니즘.
  • 길이가 0이 아닌 비밀번호 값으로 바인드 요청을 수행하여 이름/비밀번호 인증 메커니즘.

익명 바인드와 인증되지 않은 바인드는 비밀번호를 제공하지 않고도 LDAP 디렉터리의 정보에 액세스할 수 있으므로 사용을 권장하지 않습니다.

규칙을 어긴 코드

import ldap

def init_ldap():
   connect = ldap.initialize('ldap://example:1389')

   connect.simple_bind('cn=root') # 규칙을 어긴 코드
   connect.simple_bind_s('cn=root') # 규칙을 어긴 코드
   connect.bind_s('cn=root', None) # 규칙을 어긴 코드
   connect.bind('cn=root', None) # 규칙을 어긴 코드

규칙을 준수한 해결책

import ldap
import os

def init_ldap():
   connect = ldap.initialize('ldap://example:1389')

   connect.simple_bind('cn=root', os.environ.get('LDAP_PASSWORD')) # 규칙을 준수한 코드
   connect.simple_bind_s('cn=root', os.environ.get('LDAP_PASSWORD')) # 규칙을 준수한 코드
   connect.bind_s('cn=root', os.environ.get('LDAP_PASSWORD')) # 규칙을 준수한 코드
   connect.bind('cn=root', os.environ.get('LDAP_PASSWORD')) # 규칙을 준수한 코드

같이보면 좋은 자료

If you like SONARKUBE, don’t forget to give me a star. :star2:

원문으로 바로가기

Star This Project