Kerberos 인증 구성

Oracle GoldenGate for Oracle AI Database에서 Kerberos 인증을 사용으로 설정하려면 다음 구성을 가정합니다.

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