맨위로가기

OpenLDAP

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

OpenLDAP은 1998년 시작된 오픈 소스 LDAP 서버 구현 프로젝트이다. 핵심 구성 요소는 독립형 LDAP 데몬인 `slapd`, LDAP 부하 분산 프록시 서버인 `lloadd`, LDAP 프로토콜을 구현하는 라이브러리, 그리고 클라이언트 소프트웨어로 구성된다. OpenLDAP은 다양한 백엔드, 오버레이, 모듈을 지원하며, 특히 RFC 4533 기반의 Syncrepl 및 Delta-syncrepl 복제 기능을 제공한다.

더 읽어볼만한 페이지

  • 디렉토리 서비스 - 액티브 디렉터리
    액티브 디렉터리는 마이크로소프트에서 개발한 디렉터리 서비스로, 윈도우 도메인 네트워크의 핵심 기반이며, 사용자, 컴퓨터, 그룹 등 네트워크 리소스에 대한 중앙 집중식 관리, 인증 및 접근 권한 제어를 제공하고, AD DS, AD LDS, AD CS, AD FS, AD RMS 등의 서비스로 구성되어 포리스트, 트리, 도메인으로 구성된 계층 구조를 가진다.
  • 디렉토리 서비스 - X.500
    X.500은 ITU-T가 정의한 디렉터리 서비스 표준으로, 분산 환경에서 정보 접근을 위한 프로토콜과 데이터 모델을 제공하며, 경량 디렉터리 접근 프로토콜(LDAP)과 X.509 인증 프레임워크에 영향을 주었다.
  • 크로스 플랫폼 자유 소프트웨어 - 김프
    김프(GIMP)는 GNU 프로젝트에서 개발된 크로스 플랫폼 기반의 무료 오픈소스 래스터 그래픽 편집기로, 다양한 운영체제를 지원하며 풍부한 기능을 제공하지만 사용자 인터페이스에 대한 비판과 일부 기능의 부족함에 대한 평가도 존재한다.
  • 크로스 플랫폼 자유 소프트웨어 - Tcl
    Tcl은 존 오스터하우트가 개발한 명령어 기반의 프로그래밍 언어로, Tk 툴킷과 결합하여 GUI 스크립팅 환경으로 발전했으며, 다양한 운영체제에서 사용 가능하고 C, C++, Java 등 다른 언어와의 인터페이스를 지원한다.
  • C로 작성된 자유 소프트웨어 - PostgreSQL
    PostgreSQL은 캘리포니아 대학교 버클리 분교의 Ingres 프로젝트에서 시작되어 전 세계 개발자들의 협력을 통해 발전해온 객체 관계형 데이터베이스 관리 시스템(ORDBMS)이다.
  • C로 작성된 자유 소프트웨어 - 김프
    김프(GIMP)는 GNU 프로젝트에서 개발된 크로스 플랫폼 기반의 무료 오픈소스 래스터 그래픽 편집기로, 다양한 운영체제를 지원하며 풍부한 기능을 제공하지만 사용자 인터페이스에 대한 비판과 일부 기능의 부족함에 대한 평가도 존재한다.
OpenLDAP - [IT 관련 정보]에 관한 문서
지도 정보
일반 정보
명칭OpenLDAP
설명인터넷 프로토콜 구현체
소프트웨어 정보
개발자OpenLDAP 프로젝트
최초 릴리스 날짜1998년 8월 26일
최신 릴리스 버전2.6.6
최신 릴리스 날짜2023년 7월 31일
프로그래밍 언어C 언어
운영 체제모든 운영 체제
플랫폼크로스 플랫폼
장르LDAP
디렉터리 서비스
라이선스OpenLDAP Public License

2. 역사

OpenLDAP 프로젝트는 1998년 쿠르트 자일렌가(Kurt Zeilenga)에 의해 시작되었다.[38][4][5] 이 프로젝트는 미시간 대학교에서 1996년 최종 릴리스까지 LDAP 프로토콜의 개발과 발전을 지원했던 장기 프로젝트의 레퍼런스 구현을 복제하여 시작되었다.

2015년 5월 기준으로 OpenLDAP 프로젝트의 핵심 팀원은 하워드 추(수석 아키텍트)[6][30], 콴아 기브슨-마운트, 홀바르드 푸루세스, 쿠르트 자일렌가 4명이다. 그 외에도 루크 하워드, 라이언 탠디, 개빈 헨리 등 중요하고 활동적인 기여자들이 있으며,[7] 과거 핵심 팀원으로는 피에란젤로 마사라티[31]가 있다.

2. 1. 주요 릴리즈

버전출시일주요 특징
OpenLDAP 1미시간 대학교의 마지막 릴리스(릴리스 3.3) 정리 및 개선[38]
OpenLDAP 2.02000년 8월LDAPv3 지원, IPv6 지원 등[4][5]
OpenLDAP 2.12002년 6월트랜잭션 데이터베이스 백엔드(버클리 DB 기반), 단순 인증 및 보안 계층(SASL) 지원 등[4][5]
OpenLDAP 2.22003년 12월복제 지원(syncrepl), 오버레이 인터페이스 등[4][5]
OpenLDAP 2.32005년 6월구성 백엔드(동적 구성), RFC 준수 비밀번호 정책 등[4][5]
OpenLDAP 2.42007년 10월N-way 멀티마스터 복제, 스키마 요소 동적 수정 등[20]
OpenLDAP 2.52021년 4월LDAP 로드 밸런싱 프록시 서버, LDAP 트랜잭션 지원 등[21]
OpenLDAP 2.62021년 10월추가 로드 밸런싱 전략, 로깅 기능 개선 등[22]


3. 구성 요소

OpenLDAP는 독립형 LDAP 데몬인 slapd, lloadd, LDAP 프로토콜과 ASN.1 BER(Basic Encoding Rules)을 구현하는 라이브러리, 클라이언트 소프트웨어 (ldapsearch, ldapadd, ldapdelete 등)로 구성된다.[8]

3. 1. 핵심 구성 요소

OpenLDAP는 다음 4가지 주요 구성 요소를 가지고 있다.[8]

  • slapd - 독립형 LDAP 데몬 및 관련 모듈과 도구.[8]
  • lloadd - 독립형 LDAP 부하 분산 프록시 서버[8]
  • LDAP 프로토콜과 ASN.1 기본 인코딩 규칙(BER)을 구현하는 라이브러리[8]
  • 클라이언트 소프트웨어: ldapsearch, ldapadd, ldapdelete 등[8]


또한 OpenLDAP 프로젝트는 여러 하위 프로젝트를 보유하고 있다.[8]

  • JLDAP – Java용 LDAP 클래스 라이브러리[8]
  • JDBC-LDAP – Java JDBC – LDAP 브리지 드라이버[8]
  • ldapc++ – C++용 LDAP 클래스 라이브러리[8]
  • LMDB – 메모리 맵 데이터베이스 라이브러리[8]

3. 2. 하위 프로젝트

OpenLDAP 프로젝트는 다음과 같은 여러 하위 프로젝트를 포함하고 있다.

  • JLDAP – 자바용 LDAP 클래스 라이브러리[8]
  • JDBC-LDAP – Java JDBC – LDAP 브리지 드라이버[8]
  • ldapc++ – C++용 LDAP 클래스 라이브러리[8]
  • LMDB – 메모리 맵 데이터베이스 라이브러리[8]
  • Fortress - 자바 용 롤 기반 ID 액세스 관리 (일본어판)[8]

4. 백엔드

OpenLDAP 서버(slapd)는 네트워크 처리와 프로토콜 처리를 담당하는 프론트엔드와 데이터 스토리지를 처리하는 백엔드로 나뉜다. 이러한 구조는 1996년 미시간 대학교 코드에서 시작되어[9] 모든 OpenLDAP 릴리스에서 이어져 왔다.

OpenLDAP는 모듈식 구조를 가지고 있으며, 일반적인 데이터베이스뿐만 아니라 다양한 기술과 인터페이스하는 여러 종류의 백엔드를 제공한다. OpenLDAP 배포판에는 17가지 백엔드가 포함되어 있으며, 서드 파티 개발 백엔드도 존재한다. 표준 백엔드는 크게 데이터 저장, 프록시, 동적 백엔드의 세 가지로 분류된다.[10]

4. 1. 백엔드의 개념

OpenLDAP 서버(slapd, 독립형 LDAP 데몬) 아키텍처는 네트워크 접근과 프로토콜 처리를 담당하는 프론트엔드와 데이터 저장만을 처리하는 백엔드로 나뉘어져 있다. 이러한 분할 설계는 1996년에 작성된 미시간 대학교의 원래 코드[9]의 특징이며, 이후 모든 OpenLDAP 릴리스에서 지속되었다. 원래 코드는 하나의 주요 데이터베이스 백엔드와 두 개의 실험/데모 백엔드를 포함했다. 이 아키텍처는 모듈형이며, 전통적인 데이터베이스뿐만 아니라 다른 기술과의 인터페이스를 위한 다양한 백엔드가 현재 제공되고 있다.

이전(1.x) 릴리스에서는 "백엔드"와 "데이터베이스"라는 용어가 종종 같은 의미로 사용되었으나, 정확히는 "백엔드"는 스토리지 인터페이스의 클래스이고, "데이터베이스"는 백엔드의 인스턴스이다. slapd 서버는 임의의 수의 백엔드를 동시에 사용할 수 있으며, 각 백엔드의 임의의 수의 인스턴스(즉, 임의의 수의 데이터베이스)를 동시에 활성화할 수 있다.[10]

4. 2. 백엔드의 종류

OpenLDAP 배포판에는 17가지 종류의 백엔드가 포함되어 있으며, 이 외에도 서드 파티가 자체 백엔드를 개발하고 있다. 표준 백엔드는 크게 데이터 저장, 프록시, 동적 백엔드의 세 가지로 분류할 수 있다.[10]

과거에는 back-ldbm, back-tcl 등의 백엔드도 있었으나 현재는 사용되지 않는다. back-ldbm은 원래 미시간 대학교의 코드를 계승한 백엔드이며, back-tcl은 Tcl 스크립트를 호출하는 백엔드였다.[15]

back-perl, back-shell, back-sock과 같은 백엔드는 임의의 프로그래밍 언어에 대한 인터페이스를 제공하여 확장 및 사용자 정의가 자유롭게 가능하다. 이를 이용하여, slapd를 작고 잘 정의된 API를 가진 RPC 엔진으로 사용할 수도 있다.

4. 2. 1. 데이터 저장 백엔드

OpenLDAP는 데이터를 실제로 저장하는 다양한 백엔드를 제공한다.[10]

  • back-mdb: Lightning Memory-Mapped Database(LMDB) 기반의 트랜잭션 백엔드이다.[10]
  • back-ldif: LDIF 파일을 기반으로 하는 백엔드이다.[10]
  • back-bdb (제거됨): 버클리 DB 기반의 트랜잭션 백엔드였으나, OpenLDAP 2.5에서 제거되었다.[11]
  • back-hdb (제거됨): back-bdb의 변형으로 계층적 구조를 지원했으나, OpenLDAP 2.5에서 제거되었다.[12]
  • back-ndb (제거됨): MySQL NDB 클러스터 엔진 기반의 트랜잭션 백엔드였으나, OpenLDAP 2.6에서 제거되었다.[13]
  • back-wiredtiger: WiredTiger 기반의 실험적인 트랜잭션 백엔드이다.[10]


back-bdb와 back-hdb는 back-mdb보다 성능, 안정성, 관리 용이성이 떨어져 제거되었다. back-ndb는 MySQL을 인수한 오라클에 의해 파트너십이 종료되어 제거되었다.

4. 2. 2. 프록시 백엔드

OpenLDAP에서 프록시 백엔드는 다른 데이터 저장 시스템으로의 게이트웨이 역할을 한다. 다음은 프록시 백엔드의 종류이다.

  • back-ldap: 다른 LDAP 서버로의 단순 프록시 역할을 한다.[10]
  • back-meta: 메타 디렉터리 기능을 갖춘 프록시이다.[10]
  • back-asyncmeta: 메타 디렉터리 기능을 갖춘 비동기 프록시로, OpenLDAP 2.5에 도입되었다.[10]
  • back-passwd: 유닉스 계열 시스템의 passwd 및 그룹 데이터를 사용한다.[10]
  • back-relay: 다른 slapd 백엔드로 리디렉션한다.[10]
  • back-sql: 임의의 SQL 데이터베이스와 통신하며, OpenLDAP 2.5부터 더 이상 사용되지 않는다.[10]

4. 2. 3. 동적 백엔드

동적 백엔드는 요청 시 데이터를 생성한다.

  • back-config: LDAP를 통한 slapd 구성[10]
  • back-dnssrv: DNS를 통해 LDAP 서버를 찾습니다.[10]
  • back-monitor: LDAP를 통한 slapd 통계[10]
  • back-null: Unix /dev/null과 유사한 싱크/무작업 백엔드[10]
  • back-perl: LDAP 요청에 대한 응답으로 임의의 Perl 모듈을 호출하며, OpenLDAP 2.5에서 더 이상 사용되지 않습니다.[10]
  • back-shell: LDAP 요청에 대해 셸 스크립트를 호출하며, OpenLDAP 2.5에서 제거되었습니다.[14]
  • back-sock: IPC를 통해 LDAP 요청을 임의의 데몬으로 전달합니다.[10]

5. 오버레이

OpenLDAP 배포판은 21개의 핵심 오버레이와 15개의 사용자 기여 오버레이를 제공하며, 추가적인 오버레이들이 승인을 기다리고 있다.[16]

5. 1. 오버레이의 개념

일반적으로 LDAP 요청은 프런트엔드에서 수신되어 디코딩된 후 처리를 위해 백엔드로 전달된다. 백엔드가 요청을 완료하면 결과를 프런트엔드로 반환하고, 프런트엔드는 결과를 LDAP 클라이언트로 보낸다. 오버레이는 프런트엔드와 백엔드 사이에 삽입될 수 있는 코드 조각이다. 따라서 백엔드가 요청을 받기 전에 요청을 가로채고 다른 작업을 트리거할 수 있으며, 마찬가지로 백엔드의 결과가 프런트엔드에 도달하기 전에 이에 대해 작용할 수 있다. 오버레이는 slapd 내부 API에 대한 완전한 접근 권한을 가지므로 프런트엔드 또는 다른 백엔드가 수행할 수 있는 모든 것을 호출할 수 있다. 여러 오버레이를 한 번에 사용하여 프런트엔드와 백엔드 사이에 모듈 스택을 형성할 수 있다.[1]

오버레이는 완전히 새로운 백엔드를 작성할 필요 없이 데이터베이스의 기능을 보강하는 간단한 방법을 제공하며, 작고, 쉽게 디버깅하고 유지 관리할 수 있는 모듈로 새로운 기능을 추가할 수 있다. OpenLDAP 2.2에서 오버레이 기능이 도입된 이후 OpenLDAP 커뮤니티에서 많은 새로운 오버레이가 기여되었다.[2]

5. 2. 오버레이의 종류

OpenLDAP영어는 프런트엔드와 백엔드 사이에 삽입되어 기능을 보강하거나 변경할 수 있는 다양한 오버레이를 제공한다. 오버레이는 작고, 쉽게 디버깅하고 유지 관리할 수 있는 모듈로 새로운 기능을 추가할 수 있게 해준다. OpenLDAP 2.2에서 오버레이 기능이 도입된 이후, OpenLDAP 커뮤니티에서는 많은 새로운 오버레이들이 개발, 추가되었다.[16]

5. 2. 1. 코어 오버레이

OpenLDAP는 핵심 배포판에 25개의 오버레이를 제공하며, 사용자 기여 코드 섹션에는 24개의 오버레이가 있고, 더 많은 오버레이가 승인을 기다리고 있다.[16] 코어 오버레이는 다음과 같다.

이름설명비고
accesslog다른 LDAP 데이터베이스에 서버 활동을 로깅한다.[16]
auditlog텍스트 파일에 서버 활동을 기록한다.[16]
autoca자동 인증 기관.OpenLDAP 2.5[16]
chain참조를 가로채 연결한다.back-ldap의 일부[16]
collectX.500 스타일의 집합 속성을 구현한다.[16]
constraint특정 속성에 허용되는 값을 제한한다.[16]
dds동적 데이터 서비스 – 수명이 짧고 자체 만료되는 항목.[16]
deref주어진 검색 결과에서 참조된 항목에 대한 정보를 반환한다.[16]
dyngroup간단한 동적 그룹 지원.[16]
dynlist더욱 정교한 동적 그룹 지원 및 기타 기능.[16]
homedir원격 홈 디렉토리 프로비저닝.OpenLDAP 2.5[16]
memberofmemberOf 및 유사한 백링크 속성에 대한 지원.[16]
otpOATH 일회용 비밀번호를 LDAP 사용자 비밀번호와 함께 사용할 수 있다.OpenLDAP 2.5[16]
pcache검색 결과를 캐시하여 주로 프록시 서버의 성능을 향상시킨다.[16]
ppolicyLDAP 비밀번호 정책 (비밀번호 품질, 만료 등).[16]
refint참조 무결성.[16]
remoteauth원격 디렉토리에 인증 요청 위임을 허용한다. 마이크로소프트 Active Directory와 함께 작동한다.OpenLDAP 2.5[16]
retcode다양한 작업에 대해 미리 결정된 반환 코드를 설정한다. 클라이언트 디버깅에 사용된다.[16]
rwmLDAP 데이터의 다양한 변경을 위한 재작성 모듈.[16]
seqmod개별 항목에 대한 쓰기를 직렬화한다.[16]
sssvlv서버 측 정렬 및 가상 목록 보기.[16]
syncprovSyncrepl Provider, 복제 계약의 마스터 측을 구현한다.[16]
translucent반투명 통과, 프록시 서버에서 로컬로 데이터를 보강하기 위한 것.[16]
unique트리 내에서 속성 값의 고유성을 적용하기 위한 것.[16]
valsort속성 값에 대한 다양한 정렬 순서를 유지한다.[16]


5. 2. 2. contrib 오버레이

이름설명비고
addpartialAdd 요청을 수신하고 대상 항목이 이미 존재하면 수정으로 변환한다.[17]
adremapPAM/NSS MS AD 지원을 위해 속성을 다시 매핑한다.[17]OpenLDAP 2.5
allop요청 방법을 모르는 클라이언트에 대해 모든 운영 속성을 반환한다.[17]
authzidRFC 3829 지원을 구현한다.[17]OpenLDAP 2.5
autogroup동적으로 관리되는 정적 그룹[17]
cloak검색에서 명시적으로 요청하지 않는 한 속성을 숨긴다.[17]
datamorph열거된 값과 고정 크기 정수를 저장한다.[17]OpenLDAP 2.5
denyop임의로 구성된 요청을 거부한다.[17]
dupent다중 값 결과를 별도의 항목으로 반환한다.[17]
lastbind사용자의 마지막 성공적인 인증 타임스탬프를 기록한다.[17]
lastmod트리 내 마지막 변경 타임스탬프를 유지한다.[17]
nops중복 수정을 필터링한다.[17]
noopsrch검색으로 반환될 항목 수를 계산한다.[17]
nssovslapd에서 직접 NSS 및 PAM 요청에 응답하며 nss-ldap 및 pam-ldap를 대체한다.[17]
ppmslapo-ppolicy 오버레이에 추가적인 비밀번호 확인 기준을 추가한다.[17]OpenLDAP 2.5
proxyOldSun 등이 사용하는 ProxyAuthz의 구식 인코딩을 지원한다.[17]
pw-radiusbind 작업을 지정된 radius 서버로 전달한다.[17]OpenLDAP 2.5
rbacApache Fortress RBAC 데이터 형식에 따라 특정 RBAC 정책을 가로채고, 디코딩하고, 시행한다.[17]OpenLDAP 2.5
smbk5pwdSamba 및 Kerberos 비밀번호를 유지한다.[17]
trace모든 LDAP 요청 및 응답을 기록한다.[17]
totpTOTP(시간 기반 일회용 비밀번호) 지원을 제공한다.[17]OpenLDAP 2.5
usn업데이트 시퀀스 번호[17]OpenLDAP 2.5
variant여러 항목 간에 속성/값을 공유한다.[17]OpenLDAP 2.5
vc자격 증명 확인 확장 작업을 제공한다.[17]OpenLDAP 2.5


6. 기타 모듈

백엔드와 오버레이는 가장 일반적으로 사용되는 두 가지 유형의 모듈이다. 백엔드는 일반적으로 `slapd` 바이너리에 내장되었지만, 동적으로 로드 가능한 모듈로 빌드될 수도 있다. 오버레이는 일반적으로 동적 모듈로 빌드된다. 또한, `slapd`는 새로운 LDAP 구문, 일치 규칙, 제어 및 확장 작업을 구현하기 위한 동적 모듈뿐만 아니라 사용자 지정 접근 제어 메커니즘 및 비밀번호 해싱 메커니즘을 구현하기 위한 동적 모듈도 지원한다.

OpenLDAP는 썬 마이크로시스템즈와 넷스케이프/페도라/레드햇에서 사용되는 플러그인 아키텍처인 SLAPI도 지원한다.[32] 현재 릴리스에서는 SLAPI 프레임워크가 `slapd` 오버레이 내에 구현되어 있다. Sun/Netscape/Fedora/Red Hat용으로 작성된 많은 플러그인이 OpenLDAP와 호환되지만, OpenLDAP 커뮤니티에서는 SLAPI를 사용하는 구성원이 거의 없다.[18]

6. 1. 사용 가능한 모듈

OpenLDAP에서 사용 가능한 모듈은 다음과 같다.[17]

  • slapd 네이티브 모듈
  • ACL/posixgroup – POSIX 접근 제어를 지원한다.
  • comp_match – 컴포넌트 기반 매칭을 지원한다.
  • kinit – slapd에서의 Kerberos TGT 유지보수 및 갱신을 지원한다.
  • passwd/ – 추가적인 패스워드 해싱 메커니즘. 현재 Kerberos, Netscape, RADIUS, 그리고 SHA-2를 제공한다.

  • SLAPI 플러그인[19]
  • addrdnvalue – 추가 요청에서 RDN 값이 생략된 경우, 엔트리에 RDN 값을 추가한다.

7. 복제

OpenLDAP는 IETF RFC 4533에 규정된 콘텐츠 동기화를 사용한 복제를 지원하며, 이를 syncrepl이라고 부른다. 기본 사양 외에도 delta-syncrepl로 알려진 확장 기능도 지원한다. 다중 프라이머리형(멀티 마스터) 복제를 지원하기 위해 추가적인 확장 기능이 구현되었다.[24]

이 프로토콜은 변경 시퀀스 번호(CSN) 정보를 사용하여 변경 사항을 추적하며, 별도의 영구 데이터베이스가 필요하지 않다. 복제는 복제 클라이언트(소비자)가 복제 서버(제공자)에 "콘텐츠 동기화 검색"을 보내는 방식으로 이루어진다.[23]

7. 1. Syncrepl

OpenLDAP는 RFC 4533에 명시된 콘텐츠 동기화(Content Synchronization)를 사용하여 복제를 지원하며, 이를 "syncrepl"이라고 부른다.[23]

이 프로토콜은 변경 시퀀스 번호(CSN) 정보를 사용하여 변경 사항을 추적하며, 별도의 영구 데이터베이스가 필요 없다. 복제 클라이언트(소비자)는 복제 서버(제공자)에 "콘텐츠 동기화 검색"을 보내 복제를 수행한다. 소비자는 이전에 제공자와 동기화된 경우 쿠키를 제공할 수 있으며, 이 쿠키에는 제공자로부터 받은 최신 CSN(contextCSN)이 포함된다.[23]

제공자는 쿠키 정보를 기반으로 소비자를 동기화된 상태로 만들기 위해 변경되지 않은 항목, 추가, 수정 또는 삭제된 항목을 반환한다. 쿠키가 없거나 소비자가 완전히 동기화되지 않은 경우, 제공자는 모든 항목에 대한 추가 정보를 보낸다.

검색은 새로 고침(refresh) 또는 새로 고침 및 지속(refreshAndPersist) 모드 중 하나로 수행할 수 있다. 새로 고침 단계에서는 현재(present) 및 삭제(delete)의 두 단계가 발생할 수 있으며, 현재 단계는 항상 삭제 단계보다 먼저 발생한다. 각 단계는 동기화 정보 응답을 통해 구분된다.

현재 단계에서는 변경되지 않은 항목이 반환될 수 있지만, 삭제 단계에서는 삭제될 항목만 제공될 수 있다. 추가 항목(수정된 항목의 모든 현재 속성을 포함)은 두 단계 모두에서 반환될 수 있다. 현재 단계가 끝나면, 소비자는 제공자와 동기화하기 위해 추가 항목 또는 현재 응답에서 식별되지 않은 항목을 삭제해야 한다.

지속 단계가 시작되면, 제공자는 새로 고침 단계 이후 변경된 항목에 대해서만 추가, 수정 및 삭제 정보를 보낸다. 지속 단계는 무기한으로 계속된다.

7. 2. Delta-syncrepl

Delta-syncrepl은 Syncrepl의 확장 기능으로, 변경 로그를 유지하여 변경된 속성만 전송하는 기능을 제공한다. 이는 LDAP 로그 스키마를 사용하여 기록된다.[25]

이 프로토콜은 쓰기(변경) 접근 데이터베이스를 유지함으로써 모든 변경 사항을 엄격하게 나타낸다. 표준 syncrepl 사양을 기반으로 하며, 변경 사항을 항상 완전한 항목으로 전송한다. delta-syncrepl에서는 전송된 항목이 실제로 로그 데이터베이스에서 전송되며, 메인 데이터베이스의 각 변경 사항은 로그 항목으로 기록된다.[34]

참조

[1] 웹사이트 Announcing OpenLDAP 1.0, an open source LDAP distribution https://www.openldap[...] 1998-08-26
[2] 웹사이트 The OpenLDAP Public License, Version 2.8 https://www.openldap[...] 2003-08-01
[3] 웹사이트 OpenLDAP, Public License for 2.4.39 https://www.openldap[...] Openldap.org 2014-02-17
[4] 웹사이트 OpenLDAP, Project https://www.openldap[...] Openldap.org 2014-02-17
[5] 웹사이트 OpenLDAP, Kurt D. Zeilenga https://www.openldap[...] Openldap.org 2014-02-17
[6] 웹사이트 Howard's Miscellaneous Page http://www.highlands[...] Highlandsun.com 2014-02-17
[7] 웹사이트 Ando's Home Page http://www.aero.poli[...] Aero.polimi.it 2014-02-17
[8] 웹사이트 OpenLDAP main page https://www.openldap[...] 2021-10-25
[9] 웹사이트 Archived copy http://www.tux.org/p[...] 2013-08-19
[10] 웹사이트 OpenLDAP man page on slapd backends https://www.openldap[...] 2021-10-25
[11] 웹사이트 OpenLDAP 2.4 slapd-bdb man page https://www.openldap[...] 2021-10-25
[12] 웹사이트 OpenLDAP 2.4 slapd-hdb man page https://www.openldap[...] 2021-10-25
[13] 웹사이트 OpenLDAP 2.5 slapd-ndb man page https://www.openldap[...] 2021-10-25
[14] 웹사이트 OpenLDAP 2.4 slapd-shell man page https://www.openldap[...] 2021-10-25
[15] 웹사이트 OpenLDAP 2.3 slapd-ldbm man page https://www.openldap[...] 2021-10-25
[16] 웹사이트 OpenLDAP overlays man page https://www.openldap[...] 2021-10-25
[17] 웹사이트 OpenLDAP contrib modules source code https://git.openldap[...] 2021-10-25
[18] 웹사이트 OpenLDAP SLAPI plugins man page https://www.openldap[...] 2021-10-25
[19] 웹사이트 OpenLDAP contrib SLAPI plugins https://git.openldap[...] 2021-10-25
[20] 웹사이트 OpenLDAP 2.4 Announcement https://www.openldap[...] Openldap.org 2007-10-03
[21] 웹사이트 OpenLDAP 2.5 Announcement https://lists.openld[...] Openldap.org 2021-04-29
[22] 웹사이트 OpenLDAP 2.6 Announcement https://lists.openld[...] Openldap.org 2021-10-25
[23] 웹사이트 RFC4533 https://datatracker.[...] 2006-06-01
[24] 웹사이트 OpenLDAP replication documentation https://www.openldap[...] 2021-10-25
[25] 웹사이트 draft-chu-ldap-logschema-00 – A Schema for Logging the LDAP Protocol http://tools.ietf.or[...] Tools.ietf.org 2006-05-05
[26] 웹사이트 OpenLDAP, 2.6.6 Feature Release Changes https://www.openldap[...] 2023-09-01
[27] 웹사이트 The OpenLDAP Public License http://www.openldap.[...] OpenLDAP Project
[28] 웹사이트 The OpenLDAP Project Overview http://www.openldap.[...] OpenLDAP Project
[29] 웹사이트 Kurt D. Zeilenga http://www.openldap.[...] OpenLDAP Project
[30] 웹사이트 Howard's Miscellaneous Page http://www.highlands[...]
[31] 웹사이트 Pierangelo Masarati's Home Page http://www.sys-net.i[...]
[32] 웹사이트 Writing SLAPI plugins http://www.slapi.com[...]
[33] 웹사이트 OpenLDAP 2.4 Announcement http://www.openldap.[...]
[34] 웹사이트 draft-chu-ldap-logschema-00 - A Schema for Logging the LDAP Protocol http://tools.ietf.or[...] Tools.ietf.org 2014-02-17
[35] 웹인용 Announcing OpenLDAP 1.0, an open source LDAP distribution https://www.openldap[...] 1998-08-26
[36] 웹인용 The OpenLDAP Public License, Version 2.8 https://www.openldap[...] 2015-08-15
[37] 웹인용 OpenLDAP, Public License for 2.4.39 https://www.openldap[...] Openldap.org 2014-02-17
[38] 웹인용 OpenLDAP, Kurt D. Zeilenga https://www.openldap[...] Openldap.org 2014-02-17



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com