2 セキュアなデプロイメントまたはセキュアでないデプロイメントの設定

セキュアなデプロイメントとセキュアでないデプロイメントの設定を選択できます。セキュアなデプロイメントでは、RESTful APIコールを発行し、証跡データをSSL/TLSを介してDistribution ServerとReceiver Server間で転送します。既存のウォレットと証明書を使用することも、新しいものを作成することもできます。

最初にSSL/TLSセキュリティ証明書を作成するときは、SSL/TLSセキュリティの環境変数が「環境変数の設定」のように設定されていることを確認します。

セキュアでないデプロイメントの場合は、RESTful APIコールがプレーンテキストHTTP上で発生し、Distribution ServerとReceiver Server間の送信がUDT、ogg://およびws://プロトコルを使用して実行されます。

ここでは、セキュアでないデプロイメントを構成する手順と、セキュアなデプロイメントを構成する前提条件とタスクについて説明します。

トピック:

セキュアなデプロイメントまたはセキュアでないデプロイメントの追加方法

デプロイメントの追加は、データの抽出とレプリケーションのプラットフォームを設定するプロセスの最初のタスクです。デプロイメントはService Managerで管理します。

Oracle GoldenGate MAのインストールを完了すると、Configuration Assistant (OGGCA)ウィザードを使用して最初のデプロイメントとそれ以降のデプロイメントを作成できます。

注意:

ホストごとにService Managerを1つ用意して、Oracle GoldenGateのリリースに伴うアップグレードとメンテナンスのタスクの重複を回避することをお薦めします。

Configuration Assistantウィザードを使用して複数のデプロイメントをService Managerに追加でき、こうすることで同じService Managerを新しいリリースまたはパッチでアップグレードできるようになります。ソース・デプロイメントとターゲット・デプロイメントは、データ・レプリケーションの分散パスを設定するエンドポイントとして機能します。ターゲット・デプロイメントの追加方法はソース・デプロイメントと同じですが、データベース・ユーザーまたはデータベースが異なります。

  1. UNIXまたはLinuxでは、OGG_HOMEディレクトリで$OGG_HOME/bin/oggca.shプログラムを実行します。

    Oracle GoldenGate Configuration Assistant (oggca)が起動します。デプロイメントを追加するたびに、このプログラムを実行します。

  2. 「Select Service Manager Options」ステップ:

    1. 既存のService Managerを使用するか、新しいものを使用するかを選択します。ホストごとにサポートされるService Managerは1つのみです。

    2. デプロイメントで使用するディレクトリを入力するか参照します。Oracle GoldenGateのインストール・ディレクトリは使用しないことをお薦めします。

    3. サーバーのホスト名またはIPアドレスを入力します。

    4. 一意のポート番号を入力してService Managerに接続するか、URLで使用されるデフォルトを使用してService Managerに接続します。予約されていない制限なしのポートであることを確認します。サービスごとに異なるポート番号を使用する必要があります。

    5. (オプション)手動での起動と停止を回避するためにサービスとして実行できるようにService Managerを登録できます。

      1つのService Managerをサービス(デーモン)として実行するように選択できます。既存のService Managerがサービスとして登録されている場合に、サービスとして登録する新しいService Managerを選択すると、新しい方をサービスとして登録できないことを知らせるアラートが表示されます。他のすべてのService Managersは、デプロイメントのbinディレクトリにインストールされたスクリプトを使用して開始および停止できます。既存のService Managerをサービスとして登録することはできません。

    6. (オプション)オプション「Integrate with XAG」を選択して、デプロイメントをOracle Database用のOracle Grid Infrastructureに登録することを選択できます。このオプションは、Service Managerをサービスとして実行しているときには使用できません。

  3. 「Configuration Options」ステップで、デプロイメントを追加または削除できます。

    適切なオプションを選択します。

  4. 「Deployment Details」ステップ:

    1. 次の規則に従うデプロイメント名を入力します。

      • 先頭に文字を使用する必要があります。

      • 32文字以内の標準ASCII英数字文字列を使用できます。

      • 拡張ASCII文字は使用できません。

      • 使用できる特殊文字には、アンダースコア(_)、ハイフン(/)、ダッシュ(-)、ピリオド(.)が含まれます。

      • 「ServiceManager」は使用できません。

    2. 「Enable Sharding」を選択して、デプロイメントでデータベース・シャーディング機能を使用します。スキーマはggadminであることが必要です。
    3. Oracle GoldenGateのインストール(ホーム)ディレクトリを入力するか選択します。すでに$OGG_HOME環境変数を設定していた場合には、そのディレクトリが自動的に移入されます。それ以外の場合、oggca.shスクリプトの親ディレクトリが使用されます。

    4. 「Next」をクリックします。

  5. Select Deployment Directoriesページ:

    1. デプロイメントのレジストリと構成ファイルを格納するデプロイメント・ディレクトリを入力するか選択します。デプロイメント・ディレクトリ名を入力すると、そのディレクトリが作成されます(存在していない場合)。デプロイメント・ディレクトリは$OGG_HOME内に配置しないで、アップグレードしやすいように別のディレクトリにすることをお薦めします。指定したデプロイメント・ディレクトリに基づいてその他のフィールドは自動的に移入されます。

    2. デプロイメント・ディレクトリの名前や場所をデフォルトと変更してカスタマイズできます。

    3. 様々なデプロイメント要素のために異なるディレクトリを入力または選択します。

    4. 「Next」をクリックします。

  6. Environment Variablesページ:

    環境変数のリクエストされた値を入力します。フィールドをダブルクリックして編集します。環境変数フィールドで値をコピー・アンド・ペーストできます。値を入力するたびに[Tab]キーで移動するかフィールドの外部をクリックしてください。そうしないと値が保存されません。次のいずれかの環境変数を設定していた場合には、ディレクトリが自動的に移入されます。

    ORACLE_HOME

    データベースをインストールしたディレクトリ。

    LD_LIBRARY_PATH

    $OGG_HOME、OUI、データベース・インストールおよびデータベース・ネットワーク(TNS_ADMIN)のライブラリ・ディレクトリ。

    TNS_ADMIN

    Oracle Net Services構成が含まれるディレクトリ。デフォルトは、$ORACLE_HOME/rdbms/adminです。

    ORACLE_SID

    Oracleシステム識別子(SID)は、このインスタンスと今後作成してシステム上で同時に実行する別のOracle Databaseインスタンスを区別するために使用する一意の識別子です。

    STREAMS_POOL_SIZE

    これは、シャーディングを有効にした場合か、統合ExtractまたはReplicatを使用している場合にのみ表示されます。デフォルトを使用するか、1200MB以上でプール・サイズの値を設定します。

    さらに環境変数を追加してデプロイメントをカスタマイズしたり、変数を削除したりすることができます。たとえば、別の国際文字セットをデフォルトにするために、変数ENV_LC_ALL=zh_CN.UTF-8を入力できます

    「Next」をクリックします。

  7. Administrator Accountページ:

    1. Oracle GoldenGate MA Service Managerなどのサーバーへのサインインに使用するユーザー名とパスワードを入力します。このユーザーは、このデプロイメントのセキュリティ・ユーザーになります。様々なタイプのユーザーの詳細は、「ユーザーを追加する方法」を参照してください。既存のService Managerを使用する場合は、最初のデプロイメントの追加時に使用したものと同じログイン資格証明を入力する必要があります。

    2. 「Next」をクリックします。

  8. Security Optionsページ:

    1. デプロイメントを保護するかどうかを選択できます。SSL/TLSセキュリティを有効にすることをお薦めします。デプロイメントでセキュリティを使用しない場合は、チェック・ボックスを選択解除します。ただし、Oracle GoldenGateシャーディング・サポートを構成している場合には、セキュリティを有効にする必要があります。

    2. (オプション)クライアント・ウォレットの場所を指定して、証跡データをセキュアなデプロイメントに送信することができます。このオプションが役立つのは、ソース・デプロイメントのDistribution Serverがセキュアではなく、ターゲット・デプロイメントのReceiver Serverがセキュアな場合です。このケースでは、送信側はパブリック・アクセスに対応するように構成できますが、Receiver Serverでは認証と認可が必要です。これがPKIを使用して確立され他後で、受信したデータが適用されます。詳細は、「自己署名ルート証明書の作成」

      および「Distribution Serverユーザー証明書の作成」を参照してください。
    3. サーバーについて、オプションを1つ選択してから、必須ファイルの場所を指定します。既存のウォレットを使用するときは、そのウォレットに適切な証明書がすでにインポートされている必要があります。証明書の使用を選択する場合は、対応するパス・フレーズを入力します。自己署名証明書を使用するときは、新しいOracle Walletが新しいデプロイメントに作成され、それらの証明書がインポートされます。証明書について、秘密鍵ファイルの場所とパス・フレーズを入力します。

    4. クライアントについて、サーバーの場合と同様にオプションを1つ選択してから、必須ファイルの場所を指定します。

    5. 「Next」をクリックします。

  9. (セキュリティが有効な場合) Advanced Security Settingsページ:

    Oracle GoldenGateサービスとのセキュアな通信に使用される一連の暗号化アルゴリズムが表示されます。デフォルトの暗号スイートは次のとおりです。

    • TLS_RSA_WITH_AES_256_CBC_SHA

    • TLS_RSA_WITH_AES_128_CBC_SHA

    • SSL_RSA_WITH_RC4_128_SHA

    • SSL_RSA_WITH_RC4_128_MD5

    • SSL_RSA_WITH_3DES_EDE_CBC_SHA

    注意:

    グレー表示でイタリックになっている暗号スイートは、現在ご使用のJRE環境ではサポートされていません

    1. 矢印を使用して暗号スイートを追加または削除します。

    2. 上向き矢印下向き矢印を使用して、暗号スイートの適用順序を変更します

    3. 「Next」をクリックします。

      注意:

      RMTHOSTのTCP/IP暗号化オプションの詳細は、『Oracle Fusion Middleware Oracle GoldenGateリファレンス』RMTHOSTに関する項を参照してください
  10. (シャーディングが有効な場合) Sharding Optionsページ:

    1. 使用するOracle GoldenGate Sharding Certificateを探してインポートします。証明書の識別名を入力します。これは、Oracle GoldenGate MAサービスにREST APIコールを発行する際に、自らを特定するためにデータベース・シャーディング・コードによって使用されます。

    2. 証明書の一意の名前を入力します。

    3. 「Next」をクリックします。

  11. Port Settingsページ:

    1. Administration Serverのポート番号を入力してから、そのフィールドを離れると、他のポート番号は昇順で移入されます。必要に応じて、各サーバーの一意のポートを入力することもできます。

    2. Performance Metrics Serverを使用するには「Enable Monitoring」を選択します。

    3. Performance Metrics Serverポートのフィールドの内側をクリックして、使用するポートの値を移入するか入力します。

      注意:

      パフォーマンスの監視のために、TCPおよびUDPに使用可能なポートを選択してください。デプロイメントの完了後に、TCPポートをService Managerコンソールから変更できます。PMSRVRの詳細は、ENABLEMONITORINGを参照してください。
    4. Performance Metrics Serverで使用するデータストアの種類を選択します(デフォルトのBerkeley Database (BDB)データストアまたはOpen LDAP Lighting Memory-Mapped Database (LMDB))。クリティカル・サービスとしてPerformance Monitorを指定することもできます。

      BDBの詳細は、Oracle Berkeley DB 12cリリース1を参照してください。LMDBの詳細は、http://www.lmdb.tech/doc/を参照してください.

    5. データストアの場所を選択します。BDBおよびLMDBは、インメモリーかつディスク常駐のデータベースです。Performance Metricsサーバーは、そのデータストアを使用してすべてのパフォーマンス・メトリック情報を格納します。

    6. 「Next」をクリックします。

    注意:

    oggcaユーティリティでは、入力したポートが現在使用中かどうかは検証されません。このため、それらのポートが空いており他のプロセスに再割り当てされないことを手動で確認する必要があります。

  12. 「Replication Settings」ステップ:
    1. レプリケーション設定の実行に使用するOracle GoldenGateのデフォルト・スキーマを入力します。たとえば、ggadminです。

    2. 「Next」をクリックします。

  13. Summaryページ:

    1. 続行する前に、デプロイメント構成の設定の詳細を確認します。

    2. (オプション)構成情報をレスポンス・ファイルに保存できます。このファイルを入力として使用して、コマンドラインからインストーラを実行し、他のシステムで成功した構成の結果を複製します。このファイルを編集することも、提供されているテンプレートから新しいものを作成することもできます。

      注意:

      レスポンス・ファイルに保存するとき、セキュリティの理由から管理者パスワードは保存されません。他のシステムで使用するためにレスポンス・ファイルを再利用する場合は、レスポンス・ファイルを編集してパスワードを入力する必要があります。

    3. 「Finish」をクリックして、デプロイメントを完了します。

    4. 「Next」をクリックします。

  14. Configure Deploymentページ:

    デプロイメントの作成と構成の進捗状況が表示されます。

    1. Service Managerがサービスとして登録されている場合は、サービスを登録するスクリプトの実行方法がポップアップに表示されます。Configuration Assistantによって、これらのスクリプトが実行されたことが確認されます。実行しなかった場合は、続行するかどうかを尋ねられます。「Yes」をクリックすると、構成が正常に完了します。「No」をクリックすると一時的な失敗ステータスが設定され、「Retry」をクリックするとスクリプトが実行されます。

      スクリプトが実行された後で「Ok」をクリックして続行します。

    2. 「Next」をクリックします。

  15. 「Finish」ページ:

    「Close」をクリックしてConfiguration Assistantを閉じます。

ユーザーを追加する方法

各デプロイメントには、独自のユーザー・リストがあります。ユーザーの追加時には、そのデプロイメントにユーザーを追加します。

Service ManagerまたはAdministration Serverからユーザーを作成できます。

Service Managerでサービスを管理できるユーザーは、Service Managerにデプロイメントを追加したときにセキュリティ・ユーザーとして最初に追加されたユーザーのみです。その他のユーザーはMAデプロイメントに固有のものであり、セキュリティ・ユーザーはすべてのMAデプロイメントに個別にユーザーを作成する必要があります。

次の手順を実行して、そのデプロイメントのユーザーを作成できます。

  1. Service ManagerまたはAdministration Serverのどちらかにログインします。

  2. 左側のナビゲーション・ペインで、「Administrator」を選択します。

  3. 「Users (+)」をクリックします。

  4. 一意のユーザー名を入力します。

  5. 次のいずれかのロールを選択します。

    ロールID 権限レベル

    ユーザー

    情報のみのサービス要求を許可します。これは、MAのいずれに対しても操作を変更したり、操作に影響を与えたりすることはありません。問合せ/読取り専用情報の例には、パフォーマンス・メトリック情報およびリソースのステータスと監視情報が含まれます。

    オペレータ

    ユーザーは、リソースの作成、開始および停止などの操作アクションのみを実行できます。オペレータは、MAサーバーの操作パラメータまたはプロファイルを変更することはできません。

    管理者

    全面的なアクセス権がユーザーに与えられ、セキュリティに関連しない一般的なサーバーの操作パラメータおよびプロファイルを変更することもできます。

    セキュリティ

    セキュリティ関連オブジェクトの管理権限を付与し、セキュリティ関連のサービス・リクエストを呼び出します。このロールにはすべての権限があります。

  6. ユーザーを説明する情報を入力します。

  7. 「Type」リスト・ボックスから、ユーザーのタイプとして「Basic」または「Certificate」を選択します。

  8. パスワードを2回入力して確認します。パスワードにはユーザー名を含めることができます。

  9. 「Submit」をクリックします。

    ユーザーが登録されます

ユーザーは変更できません。ユーザーを削除してから追加し直す必要があります。

自己署名ルート証明書の作成

セキュア・モードでは、管理コールやデータ・トランスポートを含むOracle GoldenGate MAとの通信は、SSL/TLS証明書を使用して保護されます。証明書は購入することもテスト目的で自ら作成することもできます。

既存のルート証明書を適用するか、OGG_HOME/binディレクトリのorapkiを使用できます。『Oracle Databaseセキュリティ・ガイド』orapkiユーティリティに関する項を参照してください。

orapkiを使用してルート証明書を作成する方法を次の例で示します。

  1. ウォレットと証明書を格納するディレクトリを作成します。たとえば、~/wallet_directoryです。
  2. 自動ログイン・ウォレットを作成します。この例では、ウォレット名としてroot_caを使用します。
    orapki wallet create -wallet ~/wallet_directory/root_ca -auto_login -pwd welcome123
  3. 新しい自己署名(ルート・ユーザー)証明書を作成してウォレットに追加します。
    orapki wallet add -wallet ~/wallet_directory/root_ca -dn "CN=RootCA" -keysize 2048 -self_signed -validity 7300 -pwd welcome123
  4. 証明書を.pemファイルにエクスポートします。
    orapki wallet export -wallet ~/wallet_directory/root_ca -dn "CN=RootCA" -cert ~/wallet_directory/rootCA_Cert.pem -pwd welcome123
ウォレットの作成が完了しました。

サーバー証明書の作成

本番環境に移行する前に、Oracle GoldenGate MA実装にセキュリティ証明書の明確なガイドラインがあることを確認する必要があります。ただし、テスト目的の場合はサーバー証明書を作成できます。

Oracle GoldenGate MAをインストールした各サーバーのサーバー証明書を含むウォレットを作成する必要があります。各サーバー証明書はルート証明書で署名されます。これによって共通のトラスト・ポイントが提供されます。サーバーは、同じルート証明書で署名されたすべての証明書をサーバーの証明書認証と見なすためです。
証明書を作成するには、OGG_HOME/binディレクトリ内のorapkiを使用します。orapkiの詳細は、『Oracle Databaseセキュリティ・ガイド』orapkiユーティリティに関する項を参照してください。
次に示す手順は、root_caという名前のルート証明書を使用してサーバー証明書を作成する方法の例です。また、servernameは、Oracle GoldenGateをインストールした実際のサーバー名で置き換えてください。
  1. ウォレットと証明書を格納するディレクトリを作成します。たとえば、~/wallet_directoryです。
  2. 自動ログイン・サーバー・ウォレットを作成します。
    orapki wallet create -wallet /wallet_directory/servername 
    要求されたら、サーバーのパスワードを入力します。
  3. 証明書署名リクエスト(CSR)をサーバーのウォレットに追加します。
    orapki wallet add -wallet /wallet_directory/servername -dn "CN=servername" -keysize 2048 
  4. CSRを.pemファイルにエクスポートします。
    orapki wallet export -wallet /wallet_directory/servername -dn "CN=servername" -request /wallet_directory/servername_req.pem
  5. CSRを使用して、サーバーまたはクライアントの署名証明書を作成し、ルート証明書を使用して署名します。一意のシリアル番号を各証明書に割り当てます。
    orapki cert create -wallet ~/wallet_directory/root_ca -request ~/wallet_directory/servername_req.pem -cert ~/wallet_directory/servername_Cert.pem -serial_num 20 -validity 375
  6. ルート証明書をクライアントまたはサーバーのウォレットに信頼できる証明書として追加します。
    orapki wallet add -wallet ~/wallet_directory/servername -trusted_cert -cert ~/wallet_directory/rootCA_Cert.pem 
  7. サーバーまたはクライアント証明書をユーザー証明書としてクライアントまたはサーバーのウォレットに追加します。
    orapki wallet add -wallet ~/wallet_directory/servername -user_cert -cert ~/wallet_directory/servername_Cert.pem  
ウォレットの作成が完了しました。

Distribution Serverユーザー証明書の作成

SSL/TLSで保護されたターゲットOracle GoldenGate MAデプロイメントにデータをレプリケートするには、Distribution Serverのクライアント証明書を含むウォレットを作成する必要があります。この証明書はルート証明書によっても署名されます。これによって共通のトラスト・ポイントが提供されます。サーバーは、同じルート証明書で署名されたすべての証明書をサーバーの証明書認証と見なすためです。

証明書を作成するには、OGG_HOME/binディレクトリ内のorapkiを使用します。orapkiの詳細は、『Oracle Databaseセキュリティ・ガイド』orapkiユーティリティに関する項を参照してください。
次に示す手順は、Distribution Severユーザー証明書を作成する方法の例です。
  1. ウォレットと証明書を格納するディレクトリを作成します。たとえば、~/wallet_directoryです。
  2. 自動ログイン・クライアント・ウォレットを作成します。この例では、ウォレット名としてdist_clientを使用します。
    orapki wallet create -wallet ~/wallet_directory/dist_client -auto_login -pwd welcome123
  3. CSRをウォレットに追加します。
    orapki wallet add -wallet ~/wallet_directory/dist_client -dn "CN=dist_client" -keysize 2048 -pwd welcome123
  4. CSRを.pemファイルにエクスポートします。
    orapki wallet export -wallet ~/wallet_directory/dist_client -dn "CN=dist_client" -request ~/wallet_directory/dist_client_req.pem -pwd welcome123
  5. CSRを使用して、サーバーまたはクライアントの署名証明書を作成し、ルート証明書を使用して署名します。一意のシリアル番号を各証明書に割り当てます。
    orapki cert create -wallet ~/wallet_directory/root_ca -request ~/wallet_directory/dist_client_req.pem -cert ~/wallet_directory/dist_client_Cert.pem -serial_num 30 -validity 375 -pwd welcome123
  6. ルート証明書を信頼できる証明書としてクライアントまたはサーバーのウォレットに追加します。
    orapki wallet add -wallet ~/wallet_directory/dist_client -trusted_cert -cert ~/wallet_directory/rootCA_Cert.pem -pwd welcome123
  7. サーバーまたはクライアント証明書をユーザー証明書としてクライアントまたはサーバーのウォレットに追加します。
    orapki wallet add -wallet ~/wallet_directory/dist_client -user_cert -cert ~/wallet_directory/dist_client_Cert.pem -pwd welcome123 
ウォレットの作成が完了しました。