답변 정말 감사하구여^^
일단, 제가 입력한 방식은여 ldif 파일을 생성해서 ldif2ldbm 명령을 통해서 입력을
했습니다.
그리고 저두 모르게 실수로 입력을 한 부분이 있어서 이렇게 다시 몇자 적습니다.
그런데여... 다시 수정하고 테스트 해보니.. 잘되네여^^
정말 그부분이 버그인지? 잘 모르겠네여^^
>>박근오 님께서 쓰시길<<
:: 안녕하세요. :-)
::
:: >>임오근 님께서 쓰시길<<
::
:: :: 다시 질문 드리네여^^
:: :: 음~
:: :: 일단 제가 레벨이 3인 트리를 만들어서 테스트를 해보니 잘되네여...^^
:: :: 질문은 다름이 아니라여...
:: :: 각각의 레벨이름 있잖아여(c, o, ou, cn 등등)...
:: :: 이것들을 구분하기 위해서... objectclass를 사용하는건가여?
::
:: objectclass란 객체지향 개념의 class와 비슷하다라고 말할수있습니다.
:: 객체를 추상화 하여 그 성질을 정의해 놓은것이라고 할수가 있습니다.
:: class의 정의를 따라 생성된 실물을 instance라 하듯이 ldap에서는 objectclass
:: 의 정의를 따라 생성된 데이타를 엔트리라고 합니다.
::
::
:: :: 제가 만든 ldif 양식은 다음과 같습니다.
:: :: dn: o=myorg, c=US
:: :: o: myorg
:: ::
:: :: dn: mail=richardc@xyz.com, o=myorg, c=US
:: :: ou: Richard Collins
:: :: mail: richardc@xyz.com
:: :: locality: 서울
:: :: description: LInux enthusiast
:: :: telephonenumber: 3283-3920392-32932
:: :: sex: man
:: :: objectclass: top
:: :: objectclass: organizationlUnit
:: ::
:: :: dn: mail=harawat@coldmail.com, o=myorg, c=US
:: :: ou: Harish Rawat
:: :: mail: harawat@coldmail.com
:: :: locality: Haldwani
:: :: description: Ox-cart grand-prix champ
:: :: telephonenumber: 870-28912-221
:: :: sex: women
:: :: objectclass: top
:: :: objectclass: organizationlUnit
:: ::
아래 부분을 제가 그만 잘못 입력을 했네요^^ 근데두 잘되던데 ^^ 하하
수정한 내용은 이렇습니다.
님이 말씀하신 부분이 이부분인지 모르겠네여^^
그리고 지금 입력은 항상 ldif 파일을 통해서 하고 있습니다.
님의 답변을 읽고서 점점더 보이기 시작하네여^^
제가 영어에 까막눈이라 T.T 번역기루 번역하면서 사전찾구 하면서
보구있거든여...
dn: mail=s1@s1.com, ou=Richard Collins, o=myorg, c=US
:: :: dn: mail=s1@s1.com, cn=Richard Collins, o=myorg, c=US
:: :: cn: S1
:: :: main: s1@s1.com
:: :: sex: man
:: :: objectclass: top
:: :: objectclass: person
:: ::
:: :: 이렇게 만들어 봤습니다.
:: ::
:: :: 여기서 궁금한건여...
:: :: objectclass 의 requires 항목에 있는 속성들이 단지 계층적인 구조를 나타내기
:: :: 위해서 사용되는 건지요. 그렇다면 음~
:: :: 따로 objectclass를 만들지 않고 디폴트로 제공되는 클래스들을 이용해서..
:: :: 만들면 괜찮은가여?
:: :: 그리고 다음과 같은 클래스에서 속성의 포함관계가 좀 이해가 안가는데여...
:: :: objectclass myperson
:: :: require cn, sn objectclass
:: :: allows mail, phone, fax
:: :: 라고 했을때 문서상에는 myperson의 오브젝트클래스를 가지는 항목은 우편, 전화,
:: 팩스
:: :: 이외의 어떤 다른 속성도 포함하지 않는다구 하는데...
:: :: 위의 ldif양식을 보시믄 아시겠지만 sex, mail 같은 속성은 person 이라는
:: :: 클래스에 없던데... 잘 되더라구여...
:: :: 왜 그런지... 궁금하네여
:: ::
::
:: openldap 1.x의 경우에는 ldap v2 표준을 따르고 있고 2.x는 표준 v3을 따르고
:: 있습니다. 그러므로 1.x의 경우에는 objectclass 의 객체지향과 비슷한
:: inheritance(상속) 개념이 없습니다. 처음에 글을 읽었을때 이 문제를 말씀하시는
:: 가 싶었는데 실제로 위의 데이타를 입력해 보니 입력이 되더군요. -_-;
:: ldif로 입력을 하면 분명이 입력이 안되는데 콘솔상에서 하나하나 입력을 하니
:: 입력이 되는데.. 이것을 버그라고 해야 할지...
:: objectclass의 정의에서 require항목은 entry를 생성할때 꼭 있어야 하는 attribute
:: 를 정의해 놓은 것이고 allow항목의 attribute들은 있어도 없어도 상관이 없는
:: 것들입니다. 그런데 위의 경우는 아마도 버그가 아닐까 생각하는데요.
:: 테스트 하신 Openldap버전이 어떤것인지요. 그다지 도움이 못되는군요. ^^;
:: 그럼.
::
:: 개념적으로 이해가 잘 안가시면 자료실의 LDAP관련문서를 꼭 한번 읽어보시길
:: 권합니다. 그러면 위와 같은 혼동은 적어도 안생길듯 합니다.
그리구여... 이거 넘 공부두 안하면서 궁금한것만 많네여 죄송 ^^
salpd.at.conf 화일에 보면 여러가지 속성관련된 설정이 있는거 같은데여
다음 줄 설명 해주실수 있는지여....
attribute photo bin
attribute ref ces
attribute telephonenumber tel
attribute aliasedObjectName dn
attribute member dn
이파일의 내용이 무슨일을 하는건지... 잘 모르겠네여...
그럼 전이만... 언제나 행복하세여
|