Oracle Internet Directory는 외부 Oracle 데이터베이스를 사용하여 데이터를 저장하고 Oracle 애플리케이션을 위한 단일 사인온 솔루션을 제공하는 LDAP(Lightweight Directory Access Protocol) 서버입니다.
• OID는 대규모 애플리케이션에 고성능을 제공합니다.
• OID는 전송 중인 데이터부터 저장 또는 백업까지 각 수준에서 보안을 제공하는 가장 안전한 디렉터리 서비스입니다.
• 스토리지 및 동기화 서비스를 제공합니다. Oracle Unified Directory는 스토리지, 프록시, 동기화 및 가상화 기능을 갖춘 Oracle 차세대 올인원 디렉토리 솔루션입니다. 이 LDAP 서버는 고성능을 제공하기 위해 대규모 지원 확장 가능한 배포를 위해 JAVA로 완전히 작성되었습니다.
OUD를 사용하여 다음을 완료할 수 있습니다.
• 데이터를 저장할 LDAP 디렉토리 서버.
• 클라이언트와 디렉토리 서버 간의 프록시 서버 인터페이스로 사용.
• Oracle Unified Directory와 Oracle Directory Server Enterprise Edition 간의 복제 게이트웨이. OID를 OUD로 마이그레이션하는 두 가지 접근 방식이 있습니다.
-
DIP를 사용하여 OUD와 OID 동기화
-
스키마 동기화
1. DIP를 사용하여 OUD와 OID 동기화
사전 단계
마이그레이션을 진행하려면 사전 단계로 외부 변경 로그를 활성화해야 합니다. 외부 변경 로그(ECL)는 디렉토리 서버와 복제 서버를 모두 포함하는 모든 서버 인스턴스에서 기본적으로 사용할 수 있습니다. ECL은 디렉토리 서버가 설치 중 복제 토폴로지의 일부로 구성될 때 활성화되거나 복제 해제 명령을 실행하여 복제를 구성할 수 있습니다.
$ dsreplication enable-changelog -h localhost -p 4444 -D "cn=directory manager" -j
pwd-file -r 8989 -b dc=example,dc=com -X -n
아래 명령을 실행하여 변경 로그가 활성화되었는지 확인하십시오.
ldapsearch -h <HOSTNAME> -p <PORT> -D "cn=<DM_ADMIN>" -w <PASSWORD> -s base -b ""
"objectclass=*" namingContexts
version: 1
dn:
namingContexts: cn=changelog
namingContexts: <SUFFIX_DN>
DIP 및 OID 구성 및 배포
OID에서 SSL 활성화:
DIP-OID 동기화는 SSL 모드에서만 가능하며, SSL 모드에서 OID에 바인딩할 수 있도록 OID 지갑을 생성해야 합니다. Enterprise Manager를 사용하여 생성하려면 자체 서명된 지갑이 필요하며 다음 단계에 따라 Oracle 지갑에 복사해야 합니다.
OID 자체 서명 인증서를 만드는 단계:
신뢰할 수 있는 인증서를 내보내고 Oracle Wallet 관리자에 복사합니다.
OWM에서 OID 지갑 생성 및 지갑에 신뢰할 수 있는 인증서 복사
아래 명령을 사용하여 SSL 모드에서 OID1에 바인딩합니다.
ldapbind -h <OID_HOSTNAME> -p <OID_PORT> -D "cn=<OID_ADMIN>" -w <PASSWORD> -U 2
-W "file:/home/oracle/oid1_client_wallet" -P "<PASSWORD>"
bind successful
DIP 구성 단계
OID 자체 서명 인증서가 있는 Keytool을 사용하여 키 저장소 만들기
keytool -importcert -trustcacerts -file /home/oracle/certificates_base/
oid1_selfsigned_cert.txt -keystore $HOME/dip_keystore
키 저장소 암호 입력:
새 비밀번호 재입력:
Trust this certificate? [no]: yes
Certificate was added to keystore
키 저장소 위치를 가리키도록 DIP 구성 업데이트
$ORACLE_HOME/bin/manageDIPServerConfig set -attribute keystorelocation -h
<OID_HOSTNAME> -p <WLS_PORT> -D <WL_ADMIN> -value $HOME/dip_keystore <wls admin
user password>
Connection parameters initialized.
Connected successfully.
The attribute keystorelocation is successfully changed to value /home/oracle/dip_keystore.
아래 명령을 사용하여 SSL V2 모드에서 DIP를 구성합니다.
$ORACLE_HOME/bin/manageDIPServerConfig set -attribute sslmode -h <OID_HOSTNAME> -p
<WLS_PORT> -D <WLS_ADMIN> -value 2 <wls admin user password>
Connection parameters initialized.
Connected successfully.
The attribute sslmode is successfully changed to a value of 2.
wlst.sh를 사용하여 Java 키 저장소를 업데이트하고 OID 및 DIP 서비스를 다시 시작하여 이 변경 사항을 적용하십시오.
wlst.sh
connect('<WLS_ADMIN>','<PASSWORD>','t3://localhost:<EM_PORT>')
createCred(map="dip",key="jksKey", user="<JKS_USER>",password="<PASSWORD>")
disconnect()
동기화 프로필 OUD 및 OID:
OUD 데이터를 채우려면 OID에 Suffix_dn 항목을 만들어야 합니다. 생성할 접미사를 선택하는 것이 매우 중요하며 동기화 프로필 관리 중에 직접 사용됩니다. 다음 스크린샷과 같이 상위 디렉터리를 선택하십시오.
동기화 프로필 만들기:
메뉴> ID 및 접근> OID 관리에서 OID 선택 후 다음 이미지와 같이 동기화 프로필을 선택합니다.
아래와 같이 2개의 동기화 프로필을 생성합니다.
OUD> OID:OUDI가져오기 OID> OUD:OUDExport
동기화 프로필을 생성하는 동안 OID를 소스로 사용할지 목적지로 사용할지 결정해야 합니다.
호스트 이름과 포트를 OID 호스트 이름으로 사용하고 OID가 소스로 사용되는 포트 번호를 사용합니다. 위의 매핑이 완료되면 OUDImport /OUDExport는 “ou=people, dc=people,dc=com”
을 매핑합니다. 다음 스크린샷에 반영된 것처럼 양쪽에 있습니다.
매핑이 활성화되면 기본적으로 다음 속성이 자동으로 매핑됩니다.
OID에서 OUD로 데이터 부트스트랩:
syncProfileBootstrap을 수행하기 위해 DIP가 접미사 DN에 액세스할 수 있도록 OID ACI를 추가합니다.
다음 명령어를 사용하여 OID ACI를 추가합니다.
cat aci_oudimport.ldif
dn: ou=People,dc=people,dc=com
changetype :modify
add: orclaci
orclaci:access to entry by dn="orclodipagentname=OUDImport,cn=subscriber profile,
에 의한 항목에 대한 액세스 cn=changelog subscriber,cn=oracle internet directory" (browse,add,delete)
orclaci: access to attr=(*) by group="orclodipagentname=OUDImport,cn=subscriber
에 의한 attr=(*) 액세스 profile,cn=changelog subscriber,cn=oracle internet directory"
(read,search,write, selfwrite,compare)
ldapmodify 명령을 실행하여 ACI를 추가합니다.
ldapmodify -h <OID_HOSTNAME> -p <OID_PORT> -D cn=<OID_ADMIN> -w <PASSWORD> -f
aci_oudimport.ldif
다음 명령을 실행하여 OID에서 OUD로 데이터를 부트스트랩합니다.
syncProfileBootstrap -h <OID_HOSTNAME> -p <WLS_PORT> -D <WLS_ADMIN> -pf OUDImport
Connection parameters initialized.
Connecting at <OID_HOSTNAME>:<WLS_PORT>, with userid "<WLS_ADMIN>".
Connected successfully.
부트스트랩 작업이 완료되었으며 작업 결과는 다음과 같습니다.
entries read in bootstrap operation: 1907
entries filtered in bootstrap operation: 0
entries ignored in bootstrap operation: 0
entries processed in bootstrap operation: 1906
entries failed in bootstrap operaton: 1
이제 OUD 측에서 접미사 데이터를 볼 수 있습니다.
ou=people,dc=people,dc=com
스키마 동기화
Schemasync 유틸리티를 사용하면 OID와 다른 타사 LDAP 디렉토리 간에 스키마 속성 및 개체 클래스를 동기화할 수 있습니다.
Syntax for Schemasync:
schemasync -srchost hostname -srcport port -srcdn bindDN -srcpwd password -dsthost
hostname -dstport port -dstdn bindDN -dstpwd password [-ldap]
-srchost – Host name of source directory server.
-srcport – Source directory source LDAP listening port
-srcdn – The DN of the user used to bind to the source directory.
-srcpwd – The user password used to bind to the source directory.
-dsthost – Host name of Destination directory server.
-destport – LDAP listening port for Destination directory server.
-dstdn – DN of the user used to bind to the destination directory server.
-ldap – When we use LDAP, Schema changes are applied directly from the source LDAP
to destination LDAP.
schemasync -srchost srchost.domain.com -srcport 3060 -srcdn "cn=orcladmin" \
-dsthost dsthost.domain.com -dstport 3060 \
-dstdn "uid=superuser,ou=people,dc=people,dc=com" -ldap
위의 명령어가 실행되면 Destination 디렉토리 서버에서 DN 정보를 확인한다.
결론:
방법은 이 게시물에서 기존 OID 저장소를 OUD로 마이그레이션하여 싱글 사인온 솔루션을 활성화하는 대규모 애플리케이션을 지원하는 방법을 보여줍니다. OUD는 LDAP 서버가 날짜를 저장하므로 사용자 인증 프로세스에서 고성능을 제공합니다. 마이그레이션 단계는 모든 유형의 애플리케이션에서 구현하기가 매우 간단합니다.
피드백 탭을 사용하여 의견을 작성하거나 질문하십시오. 저희와 대화를 시작할 수도 있습니다.