3 Oracle GoldenGate資格証明の確立
データベースと対話するプロセス用のデータベース・ユーザーを作成し、適切な権限を割り当てて、不正な使用から資格証明を保護する方法について説明します。
トピック
- Oracle GoldenGateへの資格証明の割当て
Oracle GoldenGateプロセスでは、データベース・バージョン、データベース構成、および使用しているOracle GoldenGate機能の適切なデータベース権限が含まれるデータベース資格証明が1つ以上必要です。 - Oracle GoldenGate資格証明の保護
データのセキュリティを確保し、Oracle GoldenGateの処理を正確に監視するためには、他のユーザー、アプリケーションまたはプロセスにOracle GoldenGateデータベース・ユーザーとしてのログオンまたは操作を許可しないでください。
Oracle GoldenGateへの資格証明の割当て
Oracle GoldenGateプロセスでは、データベース・バージョン、データベース構成、および使用しているOracle GoldenGate機能の適切なデータベース権限が含まれるデータベース資格証明が1つ以上必要です。
ソース・システムとターゲット・システムのOracle GoldenGateにそれぞれ専用のソース・データベース・ユーザーとターゲット・データベース・ユーザーを作成します。割り当てられたユーザーには、ソースまたはターゲットのOracle Databaseに接続するすべてのOracle GoldenGateプロセスに同じユーザーを使用できます。
Extractユーザー
Extractユーザーは、ソース・データベースに対してメタデータ問合せを実行し、必要に応じてソース表からデータをフェッチします。統合キャプチャのローカル・マイニング・デプロイでは、このユーザーは、作成、変更、ログマイニング・サーバーへの接続およびログマイニング・サーバーからの論理変更レコード(LCR)の受信も行います。(キャプチャ・モードの詳細は、「使用するキャプチャ方法の決定」を参照してください。)
ソース・データベースがマルチテナント・コンテナ・データベースの場合、Extractユーザーは共通ユーザーである必要があり、ルート・コンテナにログインする必要があります。詳細は、「マルチテナント・コンテナ・データベースでのOracle GoldenGateの構成」を参照してください。
Extractが統合キャプチャ・モードで動作しており、データストリーム・マイニング・データベースを使用している場合は、追加のユーザーを割り当てる必要があります。このユーザーは、マイニング・ユーザーになり、ダウンストリーム・データベースに作成されます。マイニング・ユーザーは、マイニング・データベースでログ・マイニング・サーバーの作成、変更および接続を実行し、ログマイニング・サーバーから論理変更レコード(LCR)を受信します。このユーザーはソースExtractユーザーと同じでも別でもかまいません。マイニング・ユーザーの名前は慎重に選択してください。このユーザーによる作成後、データベース・ログマイニング・サーバーは、他のユーザーが変更したり、使用できません。ダウンストリーム・マイニングの構成の詳細は、「ダウンストリーム・マイニング・データベースの構成」を参照してください。
親トピック: Oracle GoldenGateへの資格証明の割当て
Replicatユーザー
Replicatユーザーは、Replicatチェックポイント表を作成し(使用されている場合)、Replicatモードに応じて、Oracle Call Interfaceまたはデータベース・インバウンド・サーバーを通じてDMLおよびDDL操作を適用します(「使用する適用方法の決定」を参照)。
親トピック: Oracle GoldenGateへの資格証明の割当て
その他のOracle GoldenGateユーザー
Oracle GoldenGate DDLサポートを使用している場合は、Managerプロセスでソース・データベースにユーザーが必要です。このユーザーは、DDLキャプチャをサポートするOracle GoldenGateデータベース・オブジェクトでメンテナンスを実行します。
DEFGEN
ユーティリティでは、ソースまたはターゲット・データベースにユーザーが必要です。場所は、データ定義ファイルが生成される場所によって異なります。このユーザーは、ローカル・メタデータの問合せを行い、リモートOracle GoldenGateインスタンスにメタデータを提供するデータ定義ファイルを作成します。データ定義ファイルの詳細は、『Oracle GoldenGateの管理』を参照してください。
Extractがクラシック・キャプチャ・モードで実行される場合、次の機能を使用するには追加のユーザーまたは権限が必要な場合があります。
-
RMANログ保存(「ログ保存のオプション」を参照)。
-
TDEサポート(「クラシック・キャプチャ・モードでのOracle TDEデータの構成」を参照)。
-
ASM (「クラシック・キャプチャ・モードでのASMストアド・ログのマイニング」を参照)。
親トピック: Oracle GoldenGateへの資格証明の割当て
適切なユーザー権限の付与
Oracle GoldenGateに必要なユーザー権限は、データベース・バージョンおよびExtractまたはReplicatプロセスのモードによって異なります。プロセス・モードの詳細は、「キャプチャおよび適用モードの選択」を参照してください。
- Oracle 11.2.0.4以上のデータベース権限
- Oracle 11.2.0.3以前のデータベース権限
- dbms_goldengate_auth.grant_admin_privilegeパッケージについて
- dbms_goldengate_auth.grant_admin_privilegeのオプションの付与
親トピック: Oracle GoldenGateへの資格証明の割当て
Oracle 11.2.0.4以上のデータベース権限
次の権限は、11.2.0.4以上のOracleバージョンに適用されます。
表3-1 Oracle GoldenGate権限、バージョン11.2.0.4以上
権限 | Extractクラシック・モード | Extract統合モード | Replicat全モード | 目的 |
---|---|---|---|---|
|
X |
X |
X |
データベースに接続 |
|
X |
X |
X |
Replicatの場合は、Replicatがターゲット・オブジェクトを所有している場合のみ必要。または、 |
|
X |
X |
X |
オブジェクトを作成
|
|
X |
X |
|
|
|
X |
X |
ロギングの有効化などの管理変更を実行 |
|
|
X |
X |
マルチテナント・アーキテクチャに必要であり、 |
|
|
X |
X |
X |
(Extract)ログマイニング・サーバーを含む、クラシックおよび統合Extractの両方の権限を付与。(Replicat)データベース・インバウンド・サーバー(Oracle 11.2.0.4以上)を含む、非統合および統合Replicatの両方の権限を付与。 |
|
X |
X |
X |
詳細は、「dbms_goldengate_auth.grant_admin_privilegeパッケージについて」を参照してください。 |
ターゲット表の |
X |
レプリケートされたDMLをターゲット・オブジェクトに適用 |
||
|
X |
チェックポイント表をターゲット・データベースに作成 |
||
ターゲット・オブジェクトのDDL権限(DDLサポートを使用している場合) |
X |
レプリケートされたDDLをターゲット・オブジェクトに発行 |
||
|
X |
|
X |
DDLおよびシーケンス・サポート |
|
X |
ターゲット表をロック。SQL*Loaderへのダイレクト・バルク・ロードを使用する初期ロードのみに必要。 |
||
SELECT ANY DICTIONARY |
X | X | X | ディクショナリ表で適切に機能するためにすべての権限を許可します。 |
|
X |
新しいOracle ASM APIを使用。「クラシック・キャプチャ・モードでのASMストアド・ログのマイニング」を参照してください。 |
親トピック: 適切なユーザー権限の付与
Oracle 11.2.0.3以前のデータベース権限
次の権限は、11.2.0.3以前のOracleバージョンに適用されます。
表3-2 Oracle GoldenGate権限、Oracleバージョン11.2.0.3以前
権限 | Extractクラシック・モード | Extract統合モード | Replicat | Manager | 目的 |
---|---|---|---|---|---|
および
|
X |
X |
X |
データベースに接続 |
|
|
X |
X |
ロギングの有効化などの管理変更を実行 |
||
|
X |
X |
X |
オブジェクトを作成
|
|
|
X |
X |
X |
Replicatの場合は、Replicatがターゲット・オブジェクトを所有している場合のみ必要。または、 |
|
|
X |
X |
X |
SYSスキーマのデータ・ディクショナリ・オブジェクトの問合せを実行 |
|
または
|
X |
X |
フラッシュバック問合せを実行 |
||
または
|
X |
X |
X |
任意の表で問合せを実行 |
|
|
X |
X |
|||
ターゲット表の |
X |
レプリケートされたDMLをターゲット・オブジェクトに適用 |
|||
|
X |
チェックポイント表をターゲット・データベースに作成 |
|||
|
X |
X |
|
||
ターゲット・オブジェクトのDDL権限(DDLサポートを使用している場合) |
X |
レプリケートされたDDLをターゲット・オブジェクトに発行 |
|||
|
X |
X |
Oracle GoldenGate DDLオブジェクトのDML権限。ロールは、DDLオブジェクトのインストール時に、 |
||
Oracle GoldenGate DDLオブジェクトに対する |
X |
Oracle GoldenGate DDLオブジェクトを保持するパラメータを使用 |
|||
|
X |
ターゲット表をロック。SQL*Loaderへのダイレクト・バルク・ロードを使用する初期ロードのみに必要。 |
|||
|
X |
新しいOracle ASM APIを使用。「クラシック・キャプチャ・モードでのASMストアド・ログのマイニング」を参照してください。 |
|||
|
X |
データベース・ログマイニング・サーバーと対話 |
|||
|
X |
11.1.0.5以上11.2.0.1以下のOracleバージョンに必要。 |
|||
|
X |
11.1.0.5以上11.2.0.1以下のOracleバージョンに必要。 |
親トピック: 適切なユーザー権限の付与
dbms_goldengate_auth.grant_admin_privilegeパッケージについて
ExtractおよびReplicatがクラシックおよび統合モードで動作するために必要なほとんどの権限は、dbms_goldengate_auth.grant_admin_privilege
パッケージを使用して付与されます。
-
次は、Oracle 11.2.0.4以上の基本的な権限を付与します。最初の例はデフォルトで、ExtractとReplicatの両方に付与されます。2つ目の例は、ExtractまたはReplicat (この場合はExtract)のいずれかに明示的に付与する方法を示しています。
grant_admin_privilege('ggadm') grant_admin_privilege('ggadm','capture');
-
次は、Oracle 11.2.0.3の基本的な権限を付与します。最初の例はデフォルトで、ExtractとReplicatの両方に付与されます。2番目は、Extractに明示的に付与する方法を示します。
grant_admin_privilege('ggadm',grant_select_privileges=>true) grant_admin_privilege('ggadm','capture',grant_select_privileges=>true)
次の例は、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;
親トピック: 適切なユーザー権限の付与
dbms_goldengate_auth.grant_admin_privilegeのオプションの付与
オプションの機能をサポートするために、追加の付与をdbms_goldengate_auth.grant_admin_privilege
に追加できます。
ロール/権限 | Extractクラシック・モード | Extract統合モード | Replicat | 目的 |
---|---|---|---|---|
|
X |
X |
X |
Oracle Data Vaultが使用されている場合にキャプチャまたは適用。 Oracle Database Vault環境にユーザー・アカウントを作成する また、Oracle Data Vaultで レルムに適用する場合は、 |
|
X |
X |
X |
Oracle Virtual Private Databaseが使用されている場合にキャプチャまたは適用。 |
|
X |
X |
X |
リダクション済データをキャプチャまたは適用 |
これらの権限の1つ以上をカンマ区切りリストとして'CAPTURE'
、'APPLY'
、または'*'
に付与できます。デフォルトは*
(キャプチャまたは適用)です。
-
次の例では、Extractに必要な権限に加えて、
DV_GOLDENGATE_ADMIN
およびEXEMPT REDACTION POLICY
がExtract (キャプチャ)ユーザーggadm
に付与されています。dbms_goldengate_auth.grant_admin_privilege('ggadm','capture', grant_optional_privilege=>'DV_GOLDENGATE_ADMIN,EXEMPT REDACTION POLICY')
-
次の例では、Extractに必要な権限に加えて、オプションのすべての権限がExtract (キャプチャ)ユーザー
ggadm
に付与されています。dbms_goldengate_auth.grant_admin_privilege('ggadm','capture', grant_optional_privileges=>'*')
-
Extractが統合モードのDatabase Vault 12c環境の場合、Database Vault所有者は追加で次の2つの権限を付与する必要があります。
BEGIN DVSYS.DBMS_MACADM.ADD_AUTH_TO_REALM (REALM_NAME => 'Oracle Default Component Protection Realm' ,GRANTEE => '<GGADMIN>' ,AUTH_OPTIONS => DBMS_MACUTL.G_REALM_AUTH_OWNER) ; END ; /
BEGIN Exec dbms_macadm.authorize_ddl(‘GG_ADMIN’, ‘%’); END; /
-
Extractがクラシック・モードのOracle Transparent Data Encryption (TDE)環境の場合、
ORACLE_HOME/rdbms/admin
から追加でprvtclkm.plb
パッケージをインストールし、Oracle GoldenGate管理ユーザーGGADMIN
に実行権限を付与する必要があります。grant execute on
sys.dbms_internal_clkm
toGGADMIN
-
異なるスキーマに空間索引を作成する場合は、Oracle GoldenGate管理ユーザー
GGADMIN
が、ユーザーに付与された表権限に対して明示的なCREATE TABLE
、CREATE SEQUENCE
、select
およびindex
を持つ必要があります。grant create table,create sequence to GGADMIN;
この1回かぎりの操作は、空間レプリケーションで使用する必要がある場合に実行できます。また、この項で説明するように
dbms_goldengate_auth.grant_admin_privilege
を使用することもできます。GGADMIN
ユーザーはselect
、および索引を作成するSDO列を持つ各表に対するindex
を持つ必要があります。grant select, index on tklmob31.cola_markets1 to GGADMIN;
表がターゲットに存在する必要があり、ターゲットに対して手動でこのgrant文を発行してから、ソースに対して
Create index ... indextype is MDSYS.SPATIAL_INDEX
を発行する必要があります。ユーザーGGADMINを適用して、自身に権限を付与することはできないため、grant文をソースに対して発行してレプリケートすることはできません。
dbms_goldengate_auth.grant_admin_privilege
の詳細は、『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』を参照してください。
Data Vault要件の詳細は、『Oracle Database Vault管理者ガイド』を参照してください。
親トピック: 適切なユーザー権限の付与
Oracle GoldenGate資格証明の保護
データのセキュリティを確保し、Oracle GoldenGateの処理を正確に監視するため、他のユーザー、アプリケーションまたはプロセスにOracle GoldenGateデータベース・ユーザーとしてのログオンまたは操作を許可しないでください。
Oracle GoldenGateには、Oracle GoldenGateプロセスに割り当てられたログイン資格証明を保護する様々なオプションが用意されています。推奨されるオプションは、資格証明ストアを使用することです。1つの資格証明ストアを作成して、Oracle GoldenGateのすべてのインストールでアクセス可能な共有の場所に格納したり、Oracle GoldenGateがインストールされるシステムごとに個別の資格証明ストアを作成したりできます。
資格証明ストアには、割り当てられている各Oracle GoldenGateユーザーのユーザー名およびパスワードが格納されます。ユーザーIDは1つ以上の別名に関連付けられ、実際のユーザー名またはパスワードではなく、コマンドおよびパラメータ・ファイルで提供される別名です。資格証明ファイルはドメインにパーティション化できるため、別名の標準のセットをプロセスに使用して、各システムの管理者がローカルで管理できます。
資格証明ストアの作成およびユーザー資格証明の追加の詳細は、『Oracle GoldenGateの管理』を参照してください。
親トピック: Oracle GoldenGate資格証明の確立