본문 바로가기

용어모음

[LDAP] LDAP 이 무엇일까?!

1. LDAP

 LDAP (Lightweight Directory Access Protocol)은 X.500 디렉토리 서비스를 위한 DAP(Directory Access Protocol)의 일종이다. DAP 는 OSI 프로토콜 스택에서 작동되고 , 컴퓨팅 자원을 많이 사용하는 무거운  프로토콜이라는 단점이 있다. 이러한 문제점을 해결한것이 LDAP 이다.

LDA은 TCP/IP 에서 작동되며, 보다 저렴한 비용으로 DAP의 기능을 대부분 지원할 수 있다.

따라서, LDAP을 사용하면 보다 가단한 방법으로 X.500 디렉토리 서비스를 접근할수 있다.

Figure 1-1.   X.500 over OSI versus LDAP over TCP/IP

2. X.500

 디렉토리 이름을 가지는 객체들로 구성된 데이터베이스이다.
이것은 컴퓨팅 환경에서 전화 번호 책과 같은 역할을 한다고 볼 수 있다.
X.500 은 디렉토리 서비스를 위한 표준이다.
이 서비스는 이름을 이용해서 정보를 찾고, 정보를 브라우징할 수 있는 기능을 제공한다.

 

디렉토리에는 크게 DSA(Directory System Agent) , DUA(Directory User Agent), DIB(Directory Information Base) 라는 세 개의 컴포넌트로 구성되어 있다.

 - DSA 는 디렉토리에 있는 정보를 관리한다.

 - DUA 는 사용자가 디렉토리 서비스에 접근할 수 있도록 한다.

 - DIB 는 정보를 저장한다.

      DIB에 저장되는 엔트리는 DIT(Directory Information Tree) 라고 불리는 트리 구조이다.

          * 엔트리는 이름을 가지고 있는 객체

          * 객체는 속성들의 집합으로 구성

          * 속성은 타입과 하나 이상의 값을 가진다.


 




 




약어

dn : distinguished name

o : organization

cn : common name

c : country

rdn : relative distinguished name

ou : organizational unit

sn : surname

 
LDAP Server LIST

? Novell eDirectory
? iPlanet Directory Server(sun)
? Oracle Internet Directory
? Critical Path InJoin Directory Server
? Microsoft Active Directory
? IBM SecureWay Directory
? Open Source OpenLDAP Directory
? Data Connection Directory
? OctetString Virtual Directory Engine

 
3. 사용 방법

 3.1 JNDI

 

 


네이밍 서비스 와 디렉토리 서비스 종류는 상당히 많으며, 앞으로도 계속 개발 될것이다.

LDAP , DNS, NIS, RMI,... 등 모두 이러한 서비스의 일종이다.

이러한 네이밍 과 디렉토리 서비스는 각기 API와 사용법이 다르기 때문에 프로그래머가 이러한 서비스를 이용하기 어려움들이 많았다. 이러한 문제를 해결하기 위해 개발된것이 JNDI(Java Naming and Directory Interface) 이다.

우리가 JDBC를 사용하면 DBMS에 무관하게 자바 프로그램을 작성할 수 있었던 것처럼, JNDI를

사용하면 네이밍 서버의 종류에 관계없이 동일한 방법으로 프로그램을 작성할 수 있다.

JDBC를 사용하려면 DBMS에 맞는 드라이버가 필요하듯이 JNDI 에서도 JNDI API 와 실제 네이밍

서버 사이에는 JNDI SPI (Service Provider Interface) 가 존재하게 된다.

 

밴더사 제공 : JNDI SPI 는 네이밍 과 디렉토리 서비스를 제공하는 벤더에서 작성

일반프로그래머 : JNDI API 사용

JNDI 참조 문서들 : http://java.sun.com/products/jndi/docs.html#TUTORIAL

########### 출처 #############
작성자 : 양승진
작성날짜 : 2004 / 05 / 23

메일 : sj99yang@naver.com