Sun Java System Directory Server Enterprise Edition 6.3 관리 설명서

참조 설정

참조를 사용하여 클라이언트 응용 프로그램에서 로컬에 없는 정보를 구하기 위해 연결할 서버를 알려줄 수 있습니다. 참조란 디렉토리 서버에서 작업 결과 대신 클라이언트로 반환하는 원격 접미어 또는 항목에 대한 포인터입니다. 이 경우 클라이언트는 참조에 지정된 원격 서버에 대해 다시 작업을 수행해야 합니다.

리디렉션은 다음 세 가지 경우에 발생합니다.

참조는 항상 다른 서버의 호스트 이름, 포트 번호 및 DN(선택 사항)이 포함된 LDAP URL 형식으로 지정됩니다. 예를 들면 다음과 같습니다. ldap://east.example.com:389 .

디렉토리 배포에서 참조를 사용하는 방법에 대한 개념 정보는 Sun Java System Directory Server Enterprise Edition 6.3 Deployment Planning Guide를 참조하십시오.

다음 절에서는 디렉토리의 기본 참조를 설정하고 스마트 참조를 작성 및 정의하는 절차에 대해 설명합니다.

기본 참조 설정

기본 참조는 디렉토리 서버에서 유지관리하는 접미어에 포함되지 않은 DN에서 작업을 제출하는 클라이언트 응용 프로그램에 반환됩니다. 서버는 정의된 모든 참조를 반환하지만 반환 순서는 정의되어 있지 않습니다.

Procedure기본 참조를 설정하는 방법

DSCC를 사용하여 이 작업을 수행할 수 있습니다. 자세한 내용은 디렉토리 서비스 제어 센터 인터페이스 및 DSCC 온라인 도움말을 참조하십시오.

  1. dsconf 명령줄 유틸리티를 사용하여 하나 이상의 기본 참조를 설정합니다.


    $ dsconf set-server-prop -h host -p port suffix-DN referral-url:referral-URL
    

    예를 들면 다음과 같습니다.


    $ dsconf set-server-prop -h host1 -p 1389 dc=example,dc=com \
     referral-url:ldap://east.example.com:1389

스마트 참조 설정

스마트 참조를 사용하여 디렉토리 항목이나 디렉토리 트리를 특정 LDAP URL에 매핑할 수 있습니다. 스마트 참조를 통해 클라이언트 응용 프로그램에서 특정 서버나 특정 서버의 특정 항목을 참조하도록 설정할 수 있습니다.

스마트 참조는 동일한 DN을 가진 다른 서버의 실제 항목을 가리키는 경우가 많습니다. 하지만 동일한 서버나 다른 서버의 모든 항목에 대해 스마트 참조를 정의할 수 있습니다. 예를 들어 다음과 같은 DN을 가진 항목을 스마트 참조로 정의할 수 있습니다.


uid=bjensen,ou=People,dc=example,dc=com

스마트 참조는 east.example.com 서버에서 다른 항목을 가리킵니다.


cn=Babs Jensen,ou=Sales,o=east,dc=example,dc=com

디렉토리에서 스마트 참조를 사용하는 방법은 RFC 4511의 섹션 4.1.10(http://www.ietf.org/rfc/rfc4511.txt)절에 지정된 표준을 따릅니다.

Procedure스마트 참조를 만들거나 수정하는 방법

DSCC를 사용하여 이 작업을 수행할 수 있습니다. 자세한 내용은 디렉토리 서비스 제어 센터 인터페이스 및 DSCC 온라인 도움말을 참조하십시오.

  1. 스마트 참조를 만들려면 referralextensibleObject 객체 클래스를 가진 항목을 만듭니다.

    referral 객체 클래스는 LDAP URL이 포함될 것으로 예상되는 ref 속성을 허용합니다. extensibleObject 객체 클래스를 사용하면 이름 지정 속성과 같은 스키마 속성을 사용하여 대상 항목과 일치시킬 수 있습니다.

    예를 들어 uid=bjensen 항목 대신 스마트 참조를 반환하도록 아래 항목을 정의하려면 다음 명령을 사용합니다.


    $ ldapmodify -a -h host1 -p 1389 -D cn=admin,cn=Administrators,cn=config -w -
    Enter bind password:
    dn: uid=bjensen,ou=People,dc=example,dc=com
    objectclass: top
    objectclass: extensibleObject
    objectclass: referral
    uid: bjensen
    ref: ldap://east.example.com/cn=Babs%20Jensen,ou=Sales,o=east,dc=example,dc=com

    주 –

    LDAP URL에서 공백 뒤의 정보는 서버에서 무시되므로참조로 사용할 LDAP URL에는 공백 대신 %20을 사용해야 합니다. 다른 특수 문자는 이스케이프해야 합니다.


    스마트 참조를 정의한 후에 uid=bjensen 항목을 수정하면 이 변경 사항이 실제로 다른 서버의 cn=Babs Jensen 항목에 적용됩니다. ldapmodify 명령은 다음과 같이 자동으로 참조를 수행합니다.


    $ ldapmodify -h host1 -p 1389 -D cn=admin,cn=Administrators,cn=config -w -
    Enter bind password:
    dn: uid=bjensen,ou=People,dc=example,dc=com
    changetype: replace
    replace: telephoneNumber
    telephoneNumber: (408) 555-1234
  2. (옵션) 스마트 참조 항목을 수정하려면 ldapmodify-M 옵션을 사용합니다.


    $ ldapmodify -M -h host1 -p 1389 -D cn=admin,cn=Administrators,cn=config -w -
    Enter bind password:
    dn: uid=bjensen,ou=People,dc=example,dc=com
    changetype: replace
    replace: ref
    ref: ldap://east.example.com/cn=Babs%20Jensen,ou=Marketing,o=east,dc=example,dc=com