Kerberos認証の構成
-
Kerberos KDCが構成され、Kerberosシステムがローカルにインストールされています。
-
外部認証データベース・ユーザー用にKerberosプリンシパルが構成されています。
-
KerberosキャッシュがKerberosプリンシパルごとにローカルに構成されています。
-
Oracle Net Servicesが適切に構成されています。
-
Oracle Serverパラメータ・ファイルがKerberos関連の設定で構成されています。
-
外部認証データベース・ユーザーが適切な権限で作成されています。
-
TNS_ADMIN環境変数がOracle GoldenGate用に構成されています。
Oracle GoldenGateからOracle 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認証を構成するステップを次に示します。
Admin ClientからAdministration Serviceに接続します。
CONNECT http://localhost:9005 DEPLOYMENT oggdep as ggadmin PASSWORD We1come_$
デプロイメントoggdepのAdministration Serviceに接続した後、資格証明ストアを変更します。
ALTER CREDENTIALSTORE ADD USER /@DBEAST NOPASSWORD ALIAS ggeast
次のように出力されます。
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: ggeast
Userid: /@DBEAST
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の使用
USERIDALIAS値を設定する方法を示します。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
Default domain: OracleGoldenGate
Alias: ggadmin_mining
Userid: /@ggadmin_miningUSERIDALIASオプションを指定できます。USERIDALIAS ggadmin
DOMAIN OracleGoldenGate
TRANLOGOPTIONS MININUSERIDLIAS ggadmin_mining
DOMAIN OracleGoldenGate