主コンテンツへ
Oracle®Fusion Middleware Oracle GoldenGate環境の保護
12c (12.3.0.1)
E98561-01
目次へ移動
目次

前
次

13 GGSCIコマンド・セキュリティの構成

Oracle GoldenGateでコマンド・セキュリティを確立して、Oracle GoldenGate機能へのアクセスを許可するユーザーを制御できます。

注意:

GGSCIプログラムは、Oracle GoldenGate CAでのみ使用できます。

たとえば、特定のユーザーにINFOコマンドおよびSTATUSコマンドの発行を許可する一方で、STARTコマンドおよびSTOPコマンドの使用を拒否できます。セキュリティ・レベルは、オペレーティング・システムのユーザー・グループによって定義されます。

Oracle GoldenGateコマンドに対するセキュリティを実装するには、Oracle GoldenGateディレクトリにCMDSECファイルを作成します。このファイルがない場合、すべてのユーザーにすべてのOracle GoldenGateコマンドに対するアクセス権が付与されます。

注意:

GGSCIプログラムのセキュリティは、オペレーティング・システムのセキュリティ制御機能によって制御されます。

トピック:

13.1 コマンド・セキュリティの設定

  1. 新しいASCIIテキスト・ファイルを開きます。
  2. 次の構文および例を参照して、制限するコマンドごとに1つ以上のセキュリティ・ルールを作成します(1行に1つのルール)。ルールは、個別性の最も高いもの(ワイルドカードのないもの)から最も低いものへと指定します。セキュリティ・ルールは、CMDSECファイルの一番上から下に向かって処理されます。条件が満たされる最初のルールは、アクセスを許可するかどうかを決定するルールです。

    次の各構成要素を空白またはタブ文字で区切ります。

    command_name command_object OS_group OS_user {YES | NO}
    

    説明:

    • command_nameは、GGSCIコマンド名またはワイルドカードです(STARTSTOP、*など)。

    • command_objectは、任意のGGSCIコマンド・オブジェクトまたはワイルドカードです(EXTRACTREPLICATMANAGERなど)。

    • OS_groupは、WindowsまたはUNIXのユーザー・グループ名です。UNIXシステムでは、グループ名のかわりに数値のグループIDを指定できます。ワイルドカードを使用すると、すべてのグループを指定できます。

    • OS_userは、WindowsまたはUNIXのユーザー名です。UNIXシステムでは、ユーザー名のかわりに数値のユーザーIDを指定できます。ワイルドカードを使用すると、すべてのユーザーを指定できます。

    • YES | NOでは、コマンドに対するアクセス権を付与するか、または禁止するかを指定します。

  3. このファイルをOracle GoldenGateのホーム・ディレクトリにCMDSECという名前(UNIXシステムでは大文字を使用)で保存します。

次の例は、UNIXシステムでのCMDSECファイルの適切な実装を示しています。

表13-1 サンプルのCMDSECファイルとその説明

ファイルの内容 説明
#GG command security

コメント行

STATUS REPLICAT * Smith NO

STATUS REPLICATユーザーSmithに対して拒否されます。

STATUS * dpt1 * YES

先行するルールを除き、すべてのSTATUSコマンドがdpt1のすべてのユーザーに対して許可されます。

START REPLICAT root * YES

START REPLICATが、rootグループのすべてのメンバーに対して許可されます。

START REPLICAT * * NO

先行するルールを除き、START REPLICATがすべてのユーザーに対して拒否されます。

* EXTRACT 200 * NO

すべてのEXTRACTコマンドが、IDが200のすべてのグループに対して拒否されます。

* * root root YES

rootユーザーに対して任意のコマンドが許可されます。

* * * * NO

すべてのユーザーに対してすべてのコマンドが拒否されます。この行によって、先行するルールで明示的にアクセスを許可または拒否していない他のすべてのユーザーのセキュリティに対応します。そうしないと、先行する明示的な許可または拒否を除き、すべてのユーザーに対してすべてのコマンドが許可されます。

次の不適切な例は、CMDSECファイルの作成時に避ける必要のある設定を示しています。

表13-2 不適切なCMDSECのエントリ

ファイルの内容 説明
STOP * dpt2 * NO

すべてのSTOPコマンドが、グループdpt2のすべてのユーザーに対して拒否されます。

STOP * * Chen YES

すべてのSTOPコマンドがChenに対して許可されます。

表13-2のエントリ順序では、論理エラーが発生します。1番目のルール(1行目)によって、すべてのSTOPコマンドがグループdpt2のすべてのメンバーに対して拒否されます。2番目のルール(2行目)によって、すべてのSTOPコマンドがユーザーChenに対して許可されます。このとき、Chenは、dpt2グループのメンバーであるため、このコマンドを発行する権限を付与される必要があっても、2番目のルールによってすべてのSTOPコマンドに対するアクセスを拒否されます。

このセキュリティ・ルールを適切に構成する方法は、ユーザー固有のルールを、それよりも一般的な1つ以上のルールの前に設定することです。したがって、エラーを修正するには、2つのSTOPルールの順序を逆にします。

13.2 CMDSECファイルの保護

GGSCIプログラムとCMDSECファイルのセキュリティは、オペレーティング・システムのセキュリティ制御機能によって制御されます。CMDSECファイルは、セキュリティの根源であるため、保護する必要があります。読取りアクセスは必要に応じて付与してかまいませんが、書込みアクセスと削除アクセスは、Oracle GoldenGate Administratorsにのみ許可することをお薦めします。