>>박근오 님께서 쓰시길<<
:: 안녕하세요. :-)
::
::
:: >>노희창 님께서 쓰시길<<
::
:: :: 제가 찾아본 문서에 "objectclass가 Entry가 가져야만 할 속성과 추가로 가질 수 있는 속성들을 정
:: 의
:: :: 할 수 있으며, 이 속성의 값은 그 Entry가 반드시 지켜야 할 Schema Rules를 결정한다."라고 되어
:: 있는
:: :: 데요.
:: :: 일단 가져야할 속성과 추가로 가질수 있는 속성은 requires 와 allows 를 사용하는
:: :: 것 같은데 Schema Rules를 결정한다는 말이 무슨 뜻이죠?
::
:: Schema Rules를 결정한다는 말에서 스키마란 데이타베이스에서 작성하는 스키마와
:: 같은 의미 입니다. 그러므로 스키마 규칙을 결정한다는 것은 자신이 디자인한
:: objectclass를 바탕으로 입력한 실제 엔트리가 포함할수 있는 attribute들이
:: objectclass의 정의규칙을 따른다는 말입니다. slapd.oc.conf의 내용처럼 간단히
:: requires와 allows항목으로 입력attribute를 제한또는 허가 해줄수 있으면서
:: slapd.at.conf에서 처럼 attribute의 데이타타입을 제한해 줄수 있는것입니다.
::
:: :: 그리고 slapd.oc.conf화일에 보면 objetclass 가 정의 되어 있는 것같은데
:: :: objectclass top
:: :: requires
:: :: objectClass
:: :: objectclass person
:: :: requires
:: :: objectClass,
:: :: sn,
:: :: cn
:: :: allows
:: :: description,
:: :: seeAlso,
:: :: telephoneNumber,
:: :: userPassword
:: ::
:: :: 위와 같이 되어 있더라고요 무슨 내용인지 잘모르겠네요.
:: :: top와 person은 objectclass이름이고 requires allows는 알것 같은데 중간에 있는 objectClass는
:: 무엇
:: :: 이고 나머지 값들이 일종의 attribute인지?
::
:: objectclass는 엔트리의 attribute값으로 꼭 objectclass값을 가져야만 한다는
:: 것입니다. 그리고 나머지 정의들은 마찬가지로 attribute들입니다.
:: 그러므로 만일 우리가 person타입의 엔트리를 입력하려면 attribute로
:: sn,cn,objectclass를 꼭 가져야 한다는 것입니다.
:: 예를 들어 볼까요? 다음은 person타입의 엔트리 데이타를 ldif포맷으로 나타낸
:: 것입니다. allows항목의 attribute를 제외한 최소한의 엔트리 데이타입니다.
::
:: dn: cn=Park Keun O,dc=sahara,dc=sarang,dc=net
:: cn: Park Keun O
:: sn: Park
:: objectclass: person
::
::
:: :: 끝으로 index에서
:: :: index sn,uid eq,sub,approx
:: :: index default none
:: :: 위와 같이 되어 있는데 의미를 잘모르겠네요.
:: :: pres,eq,approx,sub,none는 옵션인것 같은데 무슨 옵션인지?
:: :: 고수님들의 도움을 부탁드립니다.
:: ::
:: ::
::
:: index란 입력된 데이타를 더욱 빠르게 검색이 가능하도록 인덱싱을 하라는 지시어
:: 입니다. 형식을 보면 index sn,uid 이런식이지요. 그러면 sn과 uid라는 attribute를
:: 가지는 모든 엔트리에 대해서 입력이 이루어 질때 인덱싱을 실시 합니다.
:: 그냥 index sn,uid는 index sn,uid pres,eq,approx,sub 와 같습니다.
:: 그럼 자세한 인덱싱 옵션을 보며는 pres는 presence의 의미입니다.
:: 위의 경우 sn이나 uid라는 attribute를 가진 엔트리에 대해서 인덱싱을 실시합니다.
:: "sn=*"나 "uid=*" 와 같은 검색을 할때에 쓰입니다.
:: eq는 equalization의 의미입니다. 찾고자 하는 것이 완전히 매칭되는 것을 검색하는
:: 경우 해당 attribute를 eq로 해두면 좋습니다.
:: "sn=Park Keun O"라는 검색어를 사용할때 (완전매칭) 유용하겠지요?
:: 또는 objectclass같은경우 eq만 쓰는게 대개 좋습니다. "objectclass=person"
:: approx는 approximation의 의미인데 정확히 저도 이것이 어떻게 적용이 되는지
:: 모르겠습니다. 한글은 안되는것 같기도 하고...
:: sub는 substring의 의미입니다. 다음과 같이 "sn=*Keun*"과 같은 검색이 많은
:: attribute라면 sub인덱싱을 하면됩니다.
::
:: 참.. index default none은 그외의 모든 attribute들에 대해서는 인덱싱을 안한다는
:: 뜻입니다.
:: 글이 길군요. 그럼 즐거운 하루되세요. :-)
먼저 궁금하던 사항에 대해 친절히 답해 주신데 감사드립니다.
그런데요.
제가 콘솔상에서 아래와 같이 입력하니까.
[/libexec]# ldapadd -D "dc=Manager,dc=my-domain,dc=com"
dn:dc=aa,dc=Manager,dc=my-domain,dc=com
cn:aa
telephoneNumber:017-111-1111
sn:aa
objectclass:person
아래와 같은 메시지가 뜨거든요.
adding new entry dc=aa,dc=Manager,dc=my-domain,dc=com
ldap_add: No such object
이틀째 여기서 진전이 없습니다.
어떻게 해야 할까요.
그리고 openldap 의 lib 밑에 있는 화일들이 C를 지원하기 위한 API인가요?
만약 그렇다면 API메뉴얼은 구할수 없나요?
자꾸 질문만 올리게 되네요.
|