Kerberos 인증 구성
Oracle GoldenGate for Oracle AI Database에서 Kerberos 인증을 사용으로 설정하려면 다음 구성을 가정합니다.
-
Kerberos KDC가 구성되고 Kerberos 시스템이 로컬로 설치됩니다.
-
외부에서 인증된 데이터베이스 사용자에 대해 Kerberos 주체가 구성됩니다.
-
Kerberos 캐시는 각 Kerberos 주체에 대해 로컬로 구성됩니다.
-
Oracle Net Services가 제대로 구성되어 있습니다.
-
Oracle Server 매개변수 파일은 Kerberos 관련 설정으로 구성됩니다.
-
외부에서 인증된 데이터베이스 유저는 적절한 권한으로 생성됩니다.
-
TNS_ADMIN환경 변수가 Oracle GoldenGate에 대해 구성되었습니다.
Kerberos 계정을 구현 및 사용하여 Oracle GoldenGate에서 Oracle AI Database에 액세스
Oracle GoldenGate Microservices Architecture에서 Kerberos 인증을 시작하려면 먼저 DBLOGIN를 사용하기 전에 데이터베이스 사용자 계정 별칭을 생성해야 합니다.
CONNECT http://localhost:9005 as ggadmin password We1come_$
다음 샘플에서는 배치 demo를 사용하여 Kerberos 계정에 대한 사용자 ID 별칭을 설정합니다.
ALTER CREDENTIALSTORE ADD USER
/@EAST nopassword alias dbeast
2020-06-22T21:08:33Z INFO OGG-15102 Credential store created.
2020-06-22T21:08:33Z INFO OGG-15114 Credential store altered.
INFO CREDENTIALSTORE
Default domain: OracleGoldenGate
Alias: dbeast
Userid: /@EAST
DBLOGIN USERIDALIAS dbeast
Successfully logged into database EAST.
여기서 NET SERVICE은 데이터베이스 서비스의 간단한 이름입니다. 또는 Oracle Net 서비스 이름 대신 전체 연결 문자열(기술자)을 사용할 수 있습니다.
다음은 미리 정의된 네트 서비스 이름 및 접속 기술자 매핑의 예입니다.
EAST = (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=db1))
(CONNECT_DATA=(SERVICE_NAME=EAST.regress.rdbms.test.us.oracle.com)))
그러면 USERID 및 암호가 없는 유효한 DBLOGIN 명령을 다음과 같이 지정할 수 있습니다.
DBLOGIN USERID /@EAST
자세한 내용은 ALTER CREDENTIALSTORE, DBLOGIN USERIDALIAS 및 MININGDBLOGIN 명령을 참조하십시오. USERIDALIAS 매개변수도 참조하십시오.
Oracle GoldenGate측에서 다른 외부 인증 사용자와 함께 DBLOGIN 명령을 실행하려는 경우 기본 Kerberos 캐시 위치 사용이 SQLNET.ORA 파일에 지정됩니다. 그런 다음 이 유저는 데이터베이스에 로그인하기 위해 외부에서 인증된 유저로 간주됩니다.
예를 들어, 클라이언트측 SQLNET.ORA 파일에 지정된 Kerberos 캐시 위치를 확인합니다.
SQLNET.KERBEROS5_CONF = /test/b/1234567890/oracle/work/krb/krb.conf
SQLNET.KERBEROS5_KEYTAB = /test/b/9876543210/oracle/work/krb/v5srvtab
SQLNET.KERBEROS5_CC_NAME = /test/b/1234506789/oracle/work/krb/krb.cc
이 예에서 krb.cc은 이 Oracle GoldenGate 배치에 사용된 Kerberos 캐시입니다. oklist 유틸리티를 사용하여 krb.cc 캐시 파일을 열면 기본 주체가 외부에서 인증된 사용자 oratst@US.ORACLE.COM로 사용되는 것을 확인할 수 있습니다.
[ demo_vw2 ] [demo@test02swv krb]$ oklist krb.cc
Kerberos Utilities for Linux: Version 21.0.0.0.0 - Production on 27-JUN-2025 23:59:13
Copyright (c) 1996, 2025 Oracle. All rights reserved.
Configuration file : /test/b/1234567890/oracle/work/krb/krb.conf
Ticket cache: FILE:krb.cc
Default principal: oratst@US.ORACLE.COM
Valid starting Expires Service principal
06/27/20 12:12:34 06/28/20 12:12:34 krbtst/US.ORACLE.COM@US.ORACLE.COM
06/27/20 12:12:34 06/28/20 12:12:34 oratst/demo2swv.us.oracle.com@US.ORACLE.COM
MA를 사용하여 Kerberos 인증 구성
다음은 관리 클라이언트에서 Kerberos 인증을 구성하는 단계입니다. Oracle GoldenGate 26ai부터는 NOPASSWORD 옵션 또는 KERBEROS 키워드를 모두 사용하여 Kerberos 계정에 대한 인증서를 설정할 수 있습니다.
관리 클라이언트에서 관리 서비스에 연결합니다.
CONNECT http://localhost:9005 DEPLOYMENT oggdep as ggadmin PASSWORD We1come_$
KERBEROS를 사용하여 oggdep 배치의 관리 서비스에 접속한 후 인증서 저장소를 변경합니다.
ALTER CREDENTIALSTORE ADD USER /@dbwest ALIAS ggwest KERBEROS ALIAS u1alias;
출력에는 다음이 표시됩니다.
2020-06-22T21:08:33Z INFO OGG-15102 Credential store created.
2020-06-22T21:08:33Z INFO OGG-15114 Credential store altered.
NOPASSWORD 옵션을 사용하는 경우 명령은 다음과 유사합니다.
ALTER CREDENTIALSTORE ADD USER /@dbwest NOPASSWORD ALIAS u1alias;
다음 명령을 실행하여 인증서 저장소가 성공적으로 변경되었는지 확인합니다.
INFO CREDENTIALSTORE
출력이 다음과 같이 표시됩니다.
Default domain: OracleGoldenGate
Alias: ggeast
Userid: /@DBEAST
Type: Kerberos
MA 웹 UI를 사용하여 인증서를 생성할 때 사용자 ID 필드가 / 문자로 시작하면 비밀번호가 필요하지 않습니다. 따라서 User ID 필드에 /connect_string를 입력합니다. 여기서 connect_string은 접속 문자열입니다.
여기서 NET SERVICE은 데이터베이스 서비스의 간단한 이름입니다. 또는 Oracle Net 서비스 이름 대신 전체 연결 문자열(기술자)을 사용할 수 있습니다.
다음은 미리 정의된 네트 서비스 이름 및 접속 기술자 매핑의 예입니다.
DBEAST = (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=db1))
(CONNECT_DATA=(SERVICE_NAME=DBEAST.regress.rdbms.test.example.com)))
예: Kerberos 계정에 대한 매개변수 파일에 USERIDALIAS 사용
다음 예에서는 Kerberos 인증을 사용하여 자격 증명 저장소를 만든 후 매개변수 파일에서 USERIDALIAS 값을 설정하는 방법을 보여줍니다.
이전 구문과 새 구문이 모두 작동하는 것을 고려하십시오.
KERBEROS 키워드를 사용하는 Kerberos 인증:
ALTER CREDENTIALSTORE ADD USER /@ggadmin KERBEROS ALIAS u1alias;
NOPASSWORD를 사용한 Kerberos 인증
ALTER CREDENTIALSTORE ADD USER /@ggadmin NOPASSWORD ALIAS ggadmin
2020-12-17T21:08:33
INFO OGG-15102 Credential store created.2020-12-17T21:08:33
INFO OGG-15114 Credential store altered.
ALTER CREDENTIALSTORE ADD USER /@ggadmin_mining NOPASSWORD ALIAS ggadmin_mining
2020-12-17T21:09:45
INFO OGG-15102 Credential store created.2020-12-17T21:09:45
INFO OGG-15114 Credential store altered.
INFO CREDENTIALSTORE
이 명령의 출력 결과는 다음과 같습니다.
Default domain: OracleGoldenGate
Alias: ggadmin
Userid: /@ggadmin
Type: Kerberos
Default domain: OracleGoldenGate
Alias: ggadmin_mining
Userid: /@ggadmin_mining
Type: Kerberos
인증서 저장소를 변경한 후 매개변수 파일에 USERIDALIAS 옵션을 지정할 수 있습니다.
USERIDALIAS ggadmin
DOMAIN OracleGoldenGate
TRANLOGOPTIONS MININUSERIDLIAS ggadmin_mining
DOMAIN OracleGoldenGate