기존의 메디씨, 베가스 한차트 로그인 구조, 인증 과정에 대해서 미리 알고 있는 것이 좋겠다
LDAP
lightweight directory access protocol
네트워크 상에서 개인정보 또는 파일이나 디바이스 정보 등을 찾아보는 것을 가능하게 만든 소프트웨어 프로토콜임
DAP의 경량화된 버전임
디렉토리 서비스: 이름 기준으로 대상을 찾아 조회하거나, 편집할 수 있는 서비스
DNS도 디렉토리 서비스의 일종이다. 왜냘하면 도메인 이름으로 IP 주소를 조회할 수 있으니까
Lightweight 하다.
이 의미는 사용하기 간편하다는 의미가 아니라 통신 네트워크 대역폭 상의 가벼움을 의미
인터넷 프로토콜로 데이터를 조금만 주고 받아도 되게끔 설계되었다고 함
LDAP의 요청의 99%는 검색에 대한 요청
디렉토리 안에는 연락처, 사용자, 파일, code 등 무엇이든 넣을 수 있고, insert, update 보다는 검색 요청에 특화되어 있다.
검색에 특화되다보니 트랜잭션이나 롤백이 없고 복잡한 관계 등을 설정할 수 없다.
신뢰성이나 가용성을 개선하기 위해 쉽게 복제될 수 있는 아키텍처로 이루어져 있다.
기본적으로 바이너리 프로토콜이다.
ASN.1이라는 언어로 메시지를 표현메시지를 BER(Basic Encoding Rules)라는 포맷으로 인코딩하여 주고 받음
BER 인코딩이 바이너리라서 내용을 알아볼 순 없음
비동기 프로토콜이다.
세션을 하나만 열어서 여러 메시지 요청을 보낼 수 있고,
각각의 요청에 대한 응답이 다른 시점에 올 수도 있음
응답마다 어떤 요청의 응답인지 식별할 수 있는 아이디가 부여됨
특정 데이터를 중앙에서 일괄 관리하는 일반적인 경우에 쓴다
권한 관리, 주소록 조직도, 사용자 정보 관리, 앱, 시스템 설정 정보, 공개 키 인프라…
트리 구조로 저장하여 조회하거나 관리함
주요 용어
DN : Distinguish Name(아래 그림에서 엔트리를 고유하게 구분하기 위한 이름이다)
RDN : Relative Distinguished Name
DIT : Directory Information Tree
LDIF : LDAP Data Interchange Format
UID : User ID
DC : Domain Component
OU : Organizational Unit