3 Oracle GoldenGate資格証明の確立

データベースと対話するプロセス用のデータベース・ユーザーを作成し、適切な権限を割り当てて、不正な使用から資格証明を保護する方法について説明します。

トピック

3.1 Oracle GoldenGateへの資格証明の割当て

Oracle GoldenGateプロセスでは、データベース・バージョン、データベース構成、および使用しているOracle GoldenGate機能の適切なデータベース権限が含まれるデータベース資格証明が1つ以上必要です。

ソースおよびターゲットのデータベース・インスタンスに、それぞれOracle GoldenGate専用となるユーザーを作成します。割り当てられたユーザーには、ソースまたはターゲットのOracle Databaseに接続するすべてのOracle GoldenGateプロセス用の同じユーザーを使用できます。

資格証明ストアの作成および使用について詳しくは、「資格証明ストアの作成および移入」を参照してください。

3.1.1 Oracle GoldenGateユーザー(データベース)

Oracle GoldenGateのDDLサポートを使用している場合は、MAのService ManagerまたはCAのManagerプロセスのソース・データベースにユーザーが必要となります。このユーザーは、DDLキャプチャをサポートするOracle GoldenGateデータベース・オブジェクトでメンテナンスを実行します。

DEFGENユーティリティでは、ソースまたはターゲット・データベースにユーザーが必要です。場所は、データ定義ファイルが生成される場所によって異なります。このユーザーは、ローカル・メタデータの問合せを行い、リモートOracle GoldenGateインスタンスにメタデータを提供するデータ定義ファイルを作成します。

Extractがクラシック・キャプチャ・モードで実行される場合、次の機能を使用するには追加のユーザーまたは権限が必要な場合があります。

3.1.1.1 適切なユーザー権限の付与

Oracle GoldenGateに必要なユーザー権限は、データベース・バージョンおよびExtractまたはReplicatプロセスのモードによって異なります。プロセス・モードの詳細は、「キャプチャおよび適用モードの選択」を参照してください。

3.1.1.1.1 Oracle Database権限

次の権限は、Oracleデータベースに適用されます。

権限 Extractクラシック・モード Extract統合モード Replicat全モード 目的

CREATE SESSION

X

X

X

データベースに接続

RESOURCE

X

X

X

オブジェクトを作成

Oracle Database 12cR1以降では、RESOURCEのかわりに次の権限を付与します。

ALTER USER user QUOTA {size | UNLIMITED} ON tablespace;

ALTER SYSTEM

X

X

X

ロギングの有効化などの管理変更を実行

ALTER USER

SQL> exec dbms_goldengate_auth.grant_admin_privilege('REPUSER',container=>'PDB1');

X

X

X

マルチテナント・アーキテクチャに必要であり、GGADMINは有効なOracle GoldenGate管理者スキーマである必要があります。

dbms_goldengate_auth.grant_admin_privilegeで付与された権限

X

X

X

(Extract)ログマイニング・サーバーを含む、クラシックおよび統合Extractの両方の権限を付与。

(Replicat)データベース・インバウンド・サーバーを含む、非統合および統合Replicatの両方の権限を付与。

dbms_goldengate_auth.grant_admin_privilegeのオプションの任意またはすべての権限

X

X

X

  • 仮想プライベート・データベースからキャプチャ

  • リダクション済データをキャプチャ

詳細は、「dbms_goldengate_auth.grant_admin_privilegeパッケージについて」を参照してください。

  • SYSユーザーとして接続される次の権限をキャプチャおよび適用ユーザーに付与。

    exec dbms_goldengate_auth.grant_admin_privilege('GGADMIN User','*',
    grant_optional_privileges=>'*');
    grant DV_GOLDENGATE_ADMIN, DV_GOLDENGATE_REDO_ACCESS to GGADMIN USER;
  • レルムに適用する場合は、DBMS_MACADM.ADD_AUTH_TO_REALMの権限をReplicatに付与。

    Connect as Database Vault owner and execute the following sctipts,
    BEGIN
    DVSYS.DBMS_MACADM.ADD_AUTH_TO_REALM(
    REALM_NAME => 'Oracle Default Component Protection Realm',GRANTEE => 'GGADMIN USER',AUTH_OPTIONS => 1) ;
    END ;
    /
    execute dbms_macadm.authorize_ddl('SYS', 'SYSTEM');
  • DDLレプリケーションを実行する場合は、次の権限をDatabase Vault所有者として付与してください:

    execute dbms_macadm.authorize_ddl
    (‘GGADMIN USER', ‘SCHEMA FOR DDL’);

X

X

X

Data Vaultからキャプチャ

ターゲット表のINSERTUPDATEDELETE

該当なし

該当なし

X

レプリケートされたDMLをターゲット・オブジェクトに適用

ターゲット・オブジェクトのDDL権限(DDLサポートを使用している場合)

該当なし

該当なし

X

レプリケートされたDDLをターゲット・オブジェクトに発行

LOCK ANY TABLE

該当なし

該当なし

X

ターゲット表をロック。SQL*Loaderへのダイレクト・バルク・ロードを使用する初期ロードのみに必要。

SELECT ANY TRANSACTION

X

X

該当なし

新しいOracle ASM APIを使用。「クラシック・キャプチャ・モードでのASMストアド・ログのマイニング」を参照してください。

3.1.1.1.2 dbms_goldengate_auth.grant_admin_privilegeパッケージについて

ExtractおよびReplicatがクラシックおよび統合モードで動作するために必要なほとんどの権限は、dbms_goldengate_auth.grant_admin_privilegeパッケージを使用して付与されます。

最初の例はデフォルトで、ExtractとReplicatの両方に付与されます。2つ目の例は、ExtractまたはReplicat (この場合はExtract)のいずれかに明示的に付与する方法を示しています。

grant_admin_privilege('ggadm')
grant_admin_privilege('ggadm','capture');

次の例は、Oracle 12c Multitenant DatabaseでのExtractを示しています。

BEGIN  
dbms_goldengate_auth.grant_admin_privilege 
(  grantee => 'C##GGADMIN',  privilege_type => 'CAPTURE',  grant_select_privileges => TRUE,  do_grants => TRUE,  container => 'ALL'  ); 
END;
3.1.1.1.3 dbms_goldengate_auth.grant_admin_privilegeのオプションの付与

このプロシージャは、ユーザーがOracle GoldenGate管理者になるために必要とする権限を付与します。

『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』DBMS_GOLDENGATE_AUTHを参照してください

3.2 Oracle GoldenGate資格証明の保護

データのセキュリティを確保し、Oracle GoldenGateの処理を正確に監視するため、他のユーザー、アプリケーションまたはプロセスにOracle GoldenGateデータベース・ユーザーとしてのログオンまたは操作を許可しないでください。

Oracle GoldenGateには、Oracle GoldenGateプロセスに割り当てられたログイン資格証明を保護する様々なオプションが用意されています。推奨されるオプションは、資格証明ストアを使用することです。1つの資格証明ストアを作成して、Oracle GoldenGateのすべてのインストールでアクセス可能な共有の場所に格納したり、Oracle GoldenGateがインストールされるシステムごとに個別の資格証明ストアを作成したりできます。

資格証明ストアには、割り当てられている各Oracle GoldenGateユーザーのユーザー名およびパスワードが格納されます。ユーザーIDは1つ以上の別名に関連付けられ、実際のユーザー名またはパスワードではなく、コマンドおよびパラメータ・ファイルで提供される別名です。資格証明ファイルはドメインにパーティション化できるため、別名の標準のセットをプロセスに使用して、各システムの管理者がローカルで管理できます。

資格証明ストアの作成およびユーザー資格証明の追加の詳細は、『Oracle GoldenGate Security Guide』資格証明ストアの作成および移入を参照してください。