Kerberos認証の構成

Oracle GoldenGate for Oracle AI DatabaseでKerberos認証を有効にするには、次の構成が想定されます。

Oracle GoldenGateからOracle AI DatabaseにアクセスするためのKerberosアカウントの実装および使用

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ネット・サービス名のかわりに完全な接続文字列(記述子)を使用できます。

事前定義済のネット・サービス名と接続記述子のマッピングの例を次に示します。

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認証の構成

Admin Clientからkerberos認証を構成するステップを次に示します。Oracle GoldenGate 26ai以降では、NOPASSWORDオプションまたはキーワードKERBEROSの両方を使用して、kerberosアカウントの資格証明を設定できます。

Admin ClientからAdministration Serviceに接続します。

CONNECT http://localhost:9005 DEPLOYMENT oggdep as ggadmin PASSWORD We1come_$

デプロイメントoggdepのAdministration Serviceに接続した後、KERBEROSを使用して資格証明ストアを変更します。

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 Web UIを使用して資格証明を作成するときに、「ユーザーID」フィールドが/文字で始まる場合、パスワードは必要ありません。そのため、「ユーザーID」フィールドに/connect_stringと入力します。connect_stringは接続文字列です。

ここで、NET SERVICEはデータベース・サービスの単純名です。または、Oracleネット・サービス名のかわりに完全な接続文字列(記述子)を使用できます。

事前定義済のネット・サービス名と接続記述子のマッピングの例を次に示します。

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;

Kerberos認証(NOPASSWORD)

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