20 マルチデータ・センターの設定: シーケンス

この章のステップにより、Oracle Access Manager 12.2.1.3.0を使用して、4つのノードで構成されたマルチデータ・センターを設定できます。構成は、データ・センターごとに2つのノードで構成された2つのデータ・センターにわたります。ノードは、アクティブ/アクティブ・モードで構成されます。

この章に含まれる項は、次のとおりです。

20.1 前提作業

MDCの構成を続行する前に、システム・レベル要件が満たされていることを確認します。

マルチデータ・センターとその機能を理解するには、このシーケンスに記載されているステップを開始する前に、次の各章を読んでください。

マルチデータ・センターの設定シーケンスを開始する前に、次を確認します。

  • 必要なパッチをすべて適用して、オペレーティング・システムが最新の状態であることを確認します。

  • 各マシンの空き領域が30 GB、空きメモリーが8GBを超えていることを確認します。

  • 使用するバイナリをマウントします。適用可能なOracleソフトウェアは次のとおりです。

    • Oracle Fusion Middleware Identity and Access Management 12c (12.2.1.3.0)

    • Oracle WebLogic Server 12c (12.2.1.3.0)

    • Oracle Database 12c (12.2.x.x)

    • Oracle Fusion Middleware Repository Creation Utility 12c (12.2.1.3.0)

  • 構成する4つのノードすべてに/etc/hostsエントリを追加します。

  • Oracle Databaseが接続され、アクセス可能であることを確認します。

  • マスターおよびクローン・データ・センターのOAM管理サーバーは、SSL対応である必要があります。

  • マスターおよびクローン・データ・センターのOAM管理対象サーバーがSSL対応であるか、OAM管理対象サーバーのフロントエンドとなっているロード・バランサがSSL終端となっている(あるいはその両方である)必要があります。サーバーを再起動する前に、ロード・バランサがマスター・データ・センターのOAM管理コンソールで構成されていることを確認します。

  • マスターおよびクローン・データ・センターの管理対象サーバーは、すべて同じセキュリティ・モードで構成する必要があります。

    • 付属の証明書を使用してOAM ServersとWebゲートの間の通信を保護するには、SIMPLEモードを使用します。

    • 信頼できるサード・パーティの認証局(CA)にアクセスする場合はCERTモードを使用します。

  • マスターおよびクローン・データ・センターにIDストアが構成され、同じ名前を持っていること。

20.2 マルチデータ・センターの設定

データ・レプリケーションでマルチデータ・センターを正常に設定するために、構成は、データ・センターごとに2つのノードで構成された2つのデータ・センターにわたります。The nodes are configured in Active-Active Mode.MDC Admin REST APIは、マスターおよびクローン・データ・センターの診断と構成のために使用されます。

  1. データ・センター1のノード1にJava Development Kit (JDK) 1.8.0をインストールし、適切な環境変数を設定します。

  2. データ・センター1のノード1にWebLogic Server 12c (12.2.1.3.0)をインストールします。

    このプロセスにより、ミドルウェア・ホーム(<MW_HOME>)が作成されます。

  3. データ・センター1のノード1にOracle Identity and Access Management 12c (12.2.1.3.0)ソフトウェアをインストールします。

    Oracle IdentityおよびAccess Managementには、Oracle Access Managerを含むOracle Access Managementスイートが含まれます。

  4. データ・センター1のノード1でRepository Creation Utility (RCU) 12c (12.2.1.3.0)を実行します。

    これにより、Oracle IdentityおよびAccess Management製品用の適切なデータベース・スキーマが作成され、ロードされます。これは、$MW_HOME/oracle_common/binから実行できます。

  5. Oracle Fusion Middleware構成ウィザード・スクリプトの$MW_HOME/oracle_common/common/bin/config.shスクリプト(LinuxまたはUNIX)または$MW_HOME\oracle_common\common\bin\config.cmd (Windows)を使用して、データ・センター1のノード1でOracle Access Managementを構成します。少なくとも、次を構成します。
    • 新しいWebLogicドメイン

    • Oracle Access Management管理サーバー

    • Oracle Access Management管理対象サーバー

    • Oracle Access Manager

  6. データ・センター1のノード1で、次のWebLogicスクリプトを変更します。

    LinuxまたはUNIXの場合:

    1. viを使用してstartWeblogic.shおよびstartManagedWeblogic.shを開き、WLS_USERの適切な値を入力します。

      サーバーの起動中にプロンプトが表示されたらパスワードを入力します(パスワードはハード・コードしないでください)。

    2. startWeblogic.shおよびstartManagedWeblogic.shを保存します。

    Windowsの場合:

    1. notepadを使用してstartWeblogic.cmdおよびstartManagedWeblogic.cmdを開き、WLS_USERの適切な値を入力します。

      サーバーの起動中にプロンプトが表示されたらパスワードを入力します(パスワードはハード・コードしないでください)。

    2. startWeblogic.cmdおよびstartManagedWeblogic.cmdを保存します

  7. 管理サーバーおよび管理対象サーバーを開始します。

  8. ステップ1から7を繰り返して、マスターおよびクローン・データ・センターに必要なすべてのノード(データ・センター1のノード2、データ・センター2のノード1、データ・センター2のノード2)をMDC設定に追加するまで他のデータ・センターを準備します。

  9. 同じデータ・センターの中でpackおよびunpackスクリプトを実行して管理対象サーバーのJARを作成し、ノード間でJARをコピーします。

    1. <MW_HOME>/oracle_common/common/binディレクトリにあるpack.shを実行して、データ・センター1のノード1にJARファイルを作成します。

      ./pack.sh -domain=$MW_HOME/user_projects/domains/OAMDomain 
      -template=OAMManagedServer.jar -template_name=“OAM Domain" -managed=true
      
    2. データ・センター1のノード2のMW_HOME/oracle_common/common/binディレクトリにOAMManagedServer.jarをコピーします。

    3. unpack.shを実行して、データ・センター1のノード2に管理対象サーバーJARを解凍します。JARは、データ・センター1のノード2にOAMDomainドメイン構造を作成するためのテンプレートとして使用されます。
      mkdir -p $MW_HOME/user_projects/domains/OAMDomain
      cd <MW_HOME>/oracle_common/common/bin
      ./unpack.sh -domain=$MW_HOME/user_projects/domains/OAMDomain   -template=OAMManagedServer.jar
    4. 同じ手順(ステップaからc)を繰り返して、データ・センター2のノード1にOAMManagedServer.jarを作成し、それをデータ・センター2のノード2にあるMW_HOME/oracle_common/common/binディレクトリにコピーします。

  10. シーケンスのこの時点で、データ・センター1クラスタ、データ・センター2クラスタおよびその4つのノードが構成され、マルチデータ・センター構成用に準備されます。この時点で検証チェックを実行します。

    • マスターおよびクローン・データ・センターのOAM管理サーバーは、SSL対応である必要があります。

    • マスターおよびクローン・データ・センターのOAM管理対象サーバーがSSL対応であるか、OAM管理対象サーバーのフロントエンドとなっているロード・バランサがSSL終端となっている(あるいはその両方である)必要があります。サーバーを再起動する前に、ロード・バランサがマスター・データ・センターのOAM管理コンソールで構成されていることを確認します。

    • マスターおよびクローン・データ・センターの管理対象サーバーは、すべて同じセキュリティ・モードで構成する必要があります。

      • 付属の証明書を使用してOAM ServersとWebゲートの間の通信を保護するには、SIMPLEモードを使用します。

      • 信頼できるサード・パーティの認証局(CA)にアクセスする場合はCERTモードを使用します。

    • マスターおよびクローン・データ・センターにIDストアが構成され、同じ名前を持っていること。

    オプションで、マスターおよびクローン・データ・センター上で診断REST APIを実行して、MDC構成設定を表示できます。

    curl -k -u weblogic:password 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/mdc/configuration'
    curl -k -u weblogic:password 'https://oamadmin1-dc2.poc.com:7002/oam/services/rest/mdc/configuration'
    

    コマンドの出力で次のことを確認します。

    • dcConfigMapエントリで、MultiDataCenterEnabledがfalseであること、およびMultiDataCenterPartnersリストが空であることが必要です。

    • agentMapエントリは空である必要があります。

    ノート: MultiDataCenterEnabledがtrue (MDCはすでに有効)で、なんらかの理由でデータ・センターを再度設定する必要がある場合は、「既存のMDC構成の上書きまたは一貫性のない状態からのリカバリ」を参照してください

    Oracle Access Managerのマルチデータ・センターREST APIMDC Diagnostic REST APIに関する項を参照してください。

  11. マスター・データ・センターを構成するには、適切な値を使用して次のコマンドを実行します。

    curl -k -u weblogic:password -H 'Content-Type: application/json' -X POST 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/mdc/master' -d '{"mdcTopologyType":"value", "masterMDCAgentID":"value","cloneMDCAgentID":"value", "accessClientPassword":"value","artifactPassword":"value","cloneServerURL":"value","agentKeyPassword":"value","certModeKeystorePassword":"value","masterServerURL":"value", "cloneAdminUserNamePassword":"value","trustStorePath":"value", "keyStorePath":"value", "artifactsZipLocation":"value"}'
    • mdcTopologyType: MDC構成で利用できる2つのトポロジ・タイプ(ACTIVE_ACTIVEまたはDISASTER_RECOVERY)の1つを選択します。

    • masterMDCAgentID: マスター・データ・センターのMDC NAPエージェント名を入力します。

    • cloneMDCAgentID: クローン・データ・センターのMDC NAPエージェント名を入力します。

    • accessClientPassword: マスターおよびクローン・データ・センターでMDC NAPエージェントが使用するために必要なパスワードを提供します。

    • artifactPassword: クローニング・アーティファクトを保護するために使用されるパスワードを提供します。

    • cloneServerURL: クローン管理サーバーのURLまたはクローン管理サーバーのフロント・エンドとなっているリバース・プロキシのURLを入力します。

    • (CERTモードのみ) agentKeyPassword: CERTモードでパートナの登録に使用したエージェント・キー・パスワードを入力します。

    • (CERTモードのみ) certModeKeystorePassword: clientTrustStore.jksおよびclientKeyStore.jksを保護するために使用したキーストア・パスワードを入力します。

    • (オプション) masterServerURL: マスター管理サーバーのURLまたはマスター管理サーバーのフロント・エンドとなっているリバース・プロキシのURLを入力します。

    • (オプション) cloneAdminUserNamePassword: マスターおよびクローン・データ・センターの管理者のユーザー名およびパスワードが異なる場合、クローン・データ・センターの管理者のユーザー資格証明を入力します。

    • (オプション)trustStorePath: SIMPLEまたはCERTモードに応じて次のように入力します。

      • SIMPLEモードの場合: oamclient-truststore.jksファイルへのパスを指定します(このファイルが$MW_HOME/user_projects/domains/OAMDomain/output/webgate-ssl-SHA-256/以外のフォルダにある場合)

      • CERTモードの場合: clientTrustStore.jksファイルへのパスを指定します(このファイルが$MW_HOME/user_projects/domains/OAMDomain/config/fmwconfig/oam-mdc-cert-artifacts/以外のフォルダにある場合)

    • (オプション)keyStorePath: SIMPLEまたはCERTモードに応じて次のように入力します。

      • SIMPLEモードの場合: oamclient-keystore.jksファイルへのパスを指定します(このファイルが$MW_HOME/user_projects/domains/OAMDomain/output/webgate-ssl-SHA-256/以外のフォルダにある場合)

      • CERTモードの場合: clientKeyStore.jksファイルへのパスを指定します(このファイルが$MW_HOME/user_projects/domains/OAMDomain/config/fmwconfig/oam-mdc-cert-artifacts/以外のフォルダにある場合)

    • (オプション) artifactsZipLocation: クローニング・アーティファクトを格納する場所を指定します(クローニング・アーティファクトを/tmp以外の場所に格納する必要がある場合にのみ指定します)

    アクティブ/アクティブMDCトポロジを使用してSIMPLEおよびCERTモードでマスター・データ・センターを構成するためのサンプルCurlコマンドを次に示します。
    • CERTモードの使用:
      curl  -k -u weblogic:password -H 'Content-Type: application/json' -X POST 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/mdc/master' -d '{"mdcTopologyType":"ACTIVE_ACTIVE", "masterMDCAgentID":"MDCmasterNAPagent","cloneMDCAgentID":"MDCcloneNAPagent", "accessClientPassword":"password","artifactPassword":"password","cloneServerURL":"https://oamadmin1-dc2.poc.com:7002","cloneAdminUserNamePassword":"weblogic:password","agentKeyPassword":"password", "certModeKeystorePassword":"password"}'
    • SIMPLEモードを使用する場合:
      curl  -k -u weblogic:password -H 'Content-Type: application/json' -X POST 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/mdc/master' -d '{"mdcTopologyType":"ACTIVE_ACTIVE", "masterMDCAgentID":"MDCmasterNAPagent","cloneMDCAgentID":"MDCcloneNAPagent", "accessClientPassword":"password","artifactPassword":"password","cloneServerURL":"https://oamadmin1-dc2.poc.com:7002","cloneAdminUserNamePassword":"weblogic:password"}'

    Oracle Access Managerのマルチデータ・センターREST APIMDC Master REST APIに関する項を参照してください。

  12. クローン・データ・センターを構成するには、適切な値を使用して次のコマンドを実行します。

    curl -k -u weblogic:password -H 'Content-Type: application/json' -X POST 'https://oamadmin1-dc2.poc.com:7002/oam/services/rest/mdc/clone' -d '{"masterServerURL":"value","artifactPassword":"value","masterAdminUserNamePassword":"value", "artifactsZipLocation":"value", "masterArtifactsZipLocation":"value"}'
    • masterServerURL: マスター管理サーバーのURLまたはマスター管理サーバーのフロント・エンドとなっているリバース・プロキシのURLを入力します。

    • artifactPassword: アーティファクトのクローン作成を保護する、マスター・データ・センターの設定時に使用されたのと同じパスワードを指定します

    • (オプション) masterAdminUserNamePassword: マスターおよびクローン・データ・センターの管理者のユーザー名およびパスワードが異なる場合、クローン・データ・センターの管理者のユーザー資格証明を入力します。

    • (オプション)artifactsZipLocation: バックアップ・アーティファクトをクローン・データ・センターに格納する場所を指定します(クローン・データ・センターに存在するアーティファクトは、マスター・アーティファクトに置換される前にバックアップされます)。バックアップ・アーティファクトを/tmp以外の場所に格納する必要がある場合にのみ指定します。

    • (オプション) masterArtifactsZipLocation: クローニング・アーティファクトをマスター・データ・センターに配置する場所を指定します。マスター・データ・センターの構成中に、入力でartifactsZipLocationを使用した場合にのみ指定します。

    クローン・データ・センターを構成するためのサンプルCurlコマンドを次に示します。
    curl -k -u weblogic:password -H 'Content-Type: application/json' -X POST 'https://oamadmin1-dc2.poc.com:7002/oam/services/rest/mdc/clone' -d '{"masterServerURL":"https://oamadmin1-dc1.poc.com:7002/","artifactPassword":"password","masterAdminUserNamePassword":"password"}'

    Oracle Access Managerのマルチデータ・センターREST APIMDC Clone REST APIに関する項を参照してください。

  13. クローン・データ・センターを再構成するには、次のコマンドを実行します。

    curl -k -u weblogic:password -H 'Content-Type: application/json' -X POST ' https://oamadmin1-dc2.poc.com:7002/oam/services/rest/mdc/clone/configuration'

    ノート:

    このコマンドに入力パラメータは不要です。フラグのDataCenterTypeCloneに更新されます。クローンを上書き禁止にするには、WLSTコマンドのsetMultiDataCenterWrite(WriteEnabledFlag="false")を実行します。これで、クローン構成に対する更新はすべて無視されます。

    Oracle Access Managerのマルチデータ・センターREST APIMDC Reconfigure Clone REST APIに関する項を参照してください。

  14. クローン管理および管理対象サーバーを再起動します。

  15. MDC構成を検証するには、マスターおよびクローン・データ・センター上で次の診断REST APIを実行します。

    curl -k -u weblogic:password 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/mdc/configuration'
    curl -k -u weblogic:password 'https://oamadmin1-dc2.poc.com:7002/oam/services/rest/mdc/configuration'
    
  16. パートナおよびポリシー情報をデータ・センター1のノード1からエクスポートし、データ・センター2のノード1にインポートします。

    1. エクスポートするには、$MW_HOME/oracle_common/common/binディレクトリに移動し、WLSTを実行してデータ・センター1のノード1からエクスポートします。

      ./wlst.sh
      connect()
      exportAccessStore(toFile=”<name and location of the master metadata ZIP file>”, namePath=”/”)
      exit()
    2. エクスポートしたファイル(つまり、<マスター・メタデータZIPファイルの名前と場所>)をデータ・センター1、ノード1から、データ・センター2、ノード1にコピーします。インポートするには、$MW_HOME/oracle_common/common/binディレクトリに移動し、WLSTを実行してデータ・センター2のノード1にインポートします。

      ./wlst.sh
      connect()
      importAccessStore(fromFile=”<name and location of master metadata ZIP file>”, namePath=”/”)
      exit()

20.3 自動ポリシー同期の有効化

サーバー間の自動データ同期に対応した自動ポリシー同期(APS)機能の有効化には、RESTサービスをテストするためのコマンドおよび同期へのカスタム変換ルールの追加に関する詳細が含まれます。

APSおよび変換ルールの詳細は、「マルチデータ・センターのデータの同期」を参照してください。

パートナおよびポリシー情報をマスター・データ・センターからクローン・データ・センターにエクスポートした後、次のステップを実行してAPSを有効にします。

  1. 次のコマンドを使用して、RESTサービスを検証します。
    curl -u weblogic:password 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/_replication/hello'
    curl -u weblogic:password 'https://oamadmin1-dc2.poc.com:7002/oam/services/rest/_replication/hello'
  2. マスターおよびクローン・データ・センターで次のコマンドを実行して、clusterNameを取得します。
    curl -k -u weblogic:password 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/mdc/dc/configuration'
    curl -k -u weblogic:password 'https://oamadmin1-dc2.poc.com:7002/oam/services/rest/mdc/dc/configuration'
  3. 適切な値を使用して次のコマンドを実行し、レプリケーション承諾を設定します。
    curl -k -u weblogic:password -H 'Content-Type: application/json' -X POST 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/_replication/setup' -d '{"name":"value","source":"value","target":"value","documentType":"ENTITY","config": {"entry":{"key":"authorization","value":"authzValue"}}}'
    • name: レプリケーション承諾の名前を入力します。

    • source: マスター・データ・センターのクラスタ名を入力します(ステップ2の最初のコマンドの結果として取得されたclusterName)。

    • target: クローン・データ・センターのクラスタ名を入力します(ステップ2の2番目のコマンドの結果として取得されたclusterName)。

    • documentType: このパラメータのデフォルト値は、ENTITYです。

    • Config: キー/値ペアを含むマップ。

      1. (オプション) authzValue: マスターとクローンのデータ・センターの管理者ユーザー名およびパスワードが異なる場合、クローン・データ・センターに接続するために使用する認可ヘッダー(authzValue)の値を入力します。認可ヘッダーは、CloneAdminUser:CloneAdminPasswordのBASE64エンコード値になります。

    たとえば、

    curl -k -u weblogic:password  -H 'Content-Type: application/json' -X POST 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/_replication/setup' -d '{"name":"DC12DC2","source":"e60ef-oamadmin1-dc1.u","target":"70d7b-oamadmin1-dc2.u","documentType":"ENTITY","config": {"entry":{"key":"authorization","value":"Basic b2FtQWRtaW5Vc2VyOldlbGNvbWUy"}}}'

    ヒント:

    マスター・データ・センターに対して加えられた構成変更は、デフォルトのPOLLINTERVALが900秒のため、クローン・データ・センターに伝播されるまでに少なくとも900秒かかります。ただし、レプリケーション承諾を設定した後に、データベースでSQLDeveloperを使用してクローン・データ・センターでこのポーリング間隔を変更できます。「クローン・データ・センターでのポーリング間隔の変更」を参照してください。

    ノート:

    レプリケーションを有効にする場合、12cでフラグ-Doracle.oam.EnableMDCReplicationtrueに設定することは、必須ではありません。
  4. オプションで、変換ルールの/tmp/transformationrules.xmlファイルを作成します。必要に応じて次の内容を使用してルールを変更します。
    <?xml version="1.0" encoding="UTF-8"?>
    <mdc-transform-rule>
    <changes-to-include entity-path="/policy"/>
    <changes-to-include entity-path="/oauth"/>
    <changes-to-include entity-path="/IDM"/>
    <changes-to-include
    entity-path="/config/NGAMConfiguration/DeployedComponent/Agent/WebGate/Instance" />
    <changes-to-include
    entity-path="/config/NGAMConfiguration/DeployedComponent/Server/NGAMServer/Profile/AuthenticationModules"/>
    <changes-to-include
    entity-path="/config/NGAMConfiguration/DeployedComponent/Server/NGAMServer/Profile/oamproxy"/>
    <changes-to-include
    entity-path="/config/NGAMConfiguration/DeployedComponent/Server/NGAMServer/Profile/Sme/SessionConfigurations"/>
    <changes-to-include
    entity-path="/config/NGAMConfiguration/DeployedComponent/Server/NGAMServer/Profile/OAMServerProfile">
    <ignore attribute-match="/OAMSERVER/serverprotocol"/>
    <ignore attribute-match="/OAMSERVER/serverhost"/>
    <ignore attribute-match="/OAMSERVER/serverport"/>
    <ignore attribute-match="/OAMSERVER/serversslterminated"/>
    <ignore attribute-match="/HostAlias/oamserverHttps/serverprotocol"/>
    <ignore attribute-match="/HostAlias/oamserverHttps/serverhost"/>
    <ignore attribute-match="/HostAlias/oamserverHttps/serverport"/>
    </changes-to-include>
    <changes-to-include
    entity-path="/config/NGAMConfiguration/DeployedComponent/Server/NGAMServer/Profile/OAMServerProfile/OAMSERVER">
    <ignore attribute-match="/serverprotocol"/>
    <ignore attribute-match="/serverhost"/>
    <ignore attribute-match="/serverport"/>
    <ignore attribute-match="/serversslterminated"/>
    </changes-to-include>
    <changes-to-include
    entity-path="/config/NGAMConfiguration/DataCenterConfiguration/Cluster">
    <ignore attribute-match="/DataCenterType"/>
    <ignore attribute-match="/ClusterId"/>
    <ignore attribute-match="/WriteEnabledFlag"/>
    </changes-to-include>
    <changes-to-include entity-path="/config/NGAMConfiguration/DeployedComponent/Descriptors/OAMSEntityDescriptor" />
    <changes-to-include entity-path="/config/NGAMConfiguration/DeployedComponent/Federation/IdentityProvider" />
    <changes-to-include entity-path="/config/NGAMConfiguration/DeployedComponent/Federation/ServiceProvider" />
    <changes-to-include entity-path="/config/NGAMConfiguration/DeployedComponent/Server/NGAMServer/Profile/STS/fedattributeprofiles" />
    <changes-to-include entity-path="/config/NGAMConfiguration/DeployedComponent/Server/NGAMServer/Profile/STS/fedpartnerprofiles" />
    <changes-to-include entity-path="/config/NGAMConfiguration/DeployedComponent/Server/NGAMServer/Profile/STS/fedserverconfig" />
    </mdc-transform-rule>

    データ・センター2のノード1のみで-Doracle.oam.MDCRuleFile=/tmp/transformationRules.txt$MW_HOME/user_projects/domains/OAMDomain/bin/setDomainEnv.sh (LinuxまたはUNIX)または$MW_HOME\user_projects\domains\OAMDomain\bin\setDomainEnv.cmd (Windows)に追加し、ファイルを保存します。

  5. 管理サーバーおよび管理対象サーバーを再起動します。

これにより、マルチデータ・センターの構成とAPSの構成が完了します。データ・センター1でエージェントおよびポリシーを作成し、データ・センター2に自動移行するのを確認することで、APS機能をテストできます。

20.4 マルチデータ・センター設定のトラブルシューティング

これらのトラブルシューティングのヒントは、MDC構成時に発生するいくつかの一般的な問題を診断し、修正する助けになる場合があります。

この項では、次の問題について分析します。

20.4.1 認可ヘッダーが正しいときに表示される未認可エラー

提示した認可ヘッダーが正しい場合に、RESTコマンドの実行時に‘エラー401–未認可’が表示される

WebLogicのユーザーまたはパスワードがOAM Adminのユーザーまたはパスワードと一致しない場合や、OAM Adminのユーザーまたはパスワードがマスターとクローンのデータ・センターで異なる場合にこのエラーが表示される場合があります。これは、WebLogic認証を無効にして、EnforceValidBasicAuthCredentialsパラメータのステータスを検証することによって修正できます。

  1. WebLogic認証を無効にするには、次の例に示すように、マスターおよびクローン・データ・センターの両方で次のRESTコマンドを実行します。

    connect('weblogicUser','weblogicPassword','t3://localhost:7001')
    edit()
    startEdit()
    cd('SecurityConfiguration/Your_Domain')
    set('EnforceValidBasicAuthCredentials','false')
    save()
    activate()
  2. マスターおよびクローン・サーバーを再起動します。

  3. EnforceValidBasicAuthCredentialsパラメータのステータスを検証します。

    connect('weblogicUser','weblogicPassword','t3://localhost:7001') 
    cd('SecurityConfiguration/Your_Domain')
    ls()
  4. リストから、EnforceValidBasicAuthCredentialsパラメータがfalseに設定されていることを確認します。

20.4.2 CurlコマンドがCurl:(35) SSL Connectエラーを戻す

SSL接続エラーは2つの方法で修復できます。

  1. Curlのバージョンを検証して、使用できる最新バージョンに更新します。

  2. 次のようにして、TLSバージョンを1.2に強制的に指定します。

     curl --tlsv1.2 -k -u weblogic:password 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/mdc/configuration'
  3. 任意のRESTクライアントを使用します(Webブラウザの拡張機能として使用可能)。

20.4.3 APS同期が401-未認可エラーで失敗する

管理者ユーザーおよびパスワードがマスターとクローンのデータ・センターで異なる場合、APS同期は失敗します。この問題を修正するには、クローン・データ・センターに存在するレプリケーション承諾の認可ヘッダーを更新します。

次のコマンドを使用して既存のレプリケーション承諾を問い合せ、レプリケーション識別子replIdを取得します
curl -k -u weblogic:welcome1 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/_replication/agreements'

ノート: 複数の識別子が存在する場合、対応するクローン・データ・センターを問い合せてレプリケーション承諾を更新する必要のある識別子を選択します。

適切な値を使用して次のコマンドを実行し、クローン・データ・センターのレプリケーション承諾の認可ヘッダーを更新します。

curl -u weblogic:password -H 'Content-Type: application/json' -X PUT 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/_replication/"replId"'-d '{"replicaType":"CONSUMER","config":{"entry":{"key":"authorization","value":"authzvalue"}}}'
  • replId: 前述のコマンドで取得された識別子。

  • authzvalue: マスター・データ・センターに接続するために使用する認可ヘッダーの値を入力します。認可ヘッダーは、MasterAdminUser:MasterAdminPasswordのBASE64エンコード値になります。

たとえば、

curl -u weblogic:password -H 'Content-Type: application/json' -X PUT 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/_replication/201706200405204694' -d '{"replicaType":"CONSUMER","config":{"entry":{"key":"authorization","value":Basic d2VibG9naWM6d2VsY29tZTE="}}}'

20.4.4 OAM Configからの暗号化キーによるoamkeystoreデータの暗号化に失敗する

クローン設定用のREST APIを実行した後で、キーの内部同期が原因でOAMサーバーのログに例外が表示されます。クローン・データ・センターを再起動すると、必要な内部キーがすべて設定されます。

クローン・データ・センターの設定後、OAMサーバーのログに次の例外が表示されます。

<Error> <oracle.oam.config> 
<OAMSSA-08032> <Configuration event dispatch failed. oracle.security.am.common.utilities.exception.AmRuntimeException: 
Fail to decrypt oamkeystore data with cipher key from OAM config(/DeployedComponent/Server/NGAMServer/Profile/ssoengine/CipherKey) 
at oracle.security.am.engines.sso.adapter.OAMSessionConfiguration$ConfigListener.configurationChanged(OAMSessionConfiguration.java:295) 
at oracle.security.am.admin.config.BasicFileConfigurationStore$ListenerDispatcher.run(BasicFileConfigurationStore.java:961) 
Caused By: javax.crypto.BadPaddingException: Given final block not properly padded

クローン設定のREST APIは、最初にいくつかのキーをマスター・データ・センターから同期します。クローン・データ・センターの再構成用のREST APIを実行した後で、クローンを再起動すると、この例外がOAMサーバーのログに表示されなくなります。この場合、この例外は無視してもかまいません。

20.4.5 クローン・データ・センターでのポーリング間隔の変更

マスター・データ・センターに対して加えられた構成変更は、デフォルトのPOLLINTERVALが900秒のため、クローン・データ・センターに伝播されるまでに少なくとも900秒かかります。ただし、ポーリング間隔は必要に応じて変更できます。

次のコマンドを実行してpollIntervalパラメータを変更します。

次のコマンドを使用して既存のレプリケーション承諾を問い合せ、レプリケーション識別子replIdを取得します
curl -k -u weblogic:welcome1 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/_replication/agreements'

ノート: 複数の識別子が存在する場合、対応するクローン・データ・センターを問い合せてレプリケーション承諾を更新する必要のある識別子を選択します。

curl -k -u weblogic:password -H 'Content-Type: application/json' -X PUT 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/_replication/replId' -d '{"pollInterval":"value","replicaType":"CONSUMER"}'

説明

replIdは、前述のコマンドで取得された識別子です

PollIntervalは、クローン・データ・センターが最新の更新を確認するためにマスター・データ・センターに問合せを送信する時間(秒)です

たとえば、

curl -u weblogic:password -H 'Content-Type: application/json' -X PUT 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/_replication/replId' -d '{"pollInterval":"60","replicaType":"CONSUMER"}'

20.4.6 既存のMDC構成の上書きまたは一貫性のない状態からのリカバリ

forceOverWriteパラメータを設定して既存のMDC構成を上書きします。

  1. APSを無効にします(構成されている場合)。

    「APSの無効化」を参照してください。
  2. マスター・データ・センターの構成時に次のようにforceOverWriteパラメータを指定します。

    curl -k -u weblogic:password -H 'Content-Type: application/json' -X POST 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/mdc/master' -d'{"mdcTopologyType":"ACTIVE_ACTIVE","masterMDCAgentID":"MasterNAPAgent","cloneMDCAgentID":"CloneNAPAgent1","accessClientPassword":"Welcome123","artifactPassword":"password","cloneServerURL":"https://oamadmin1-dc2.poc.com:7002/","cloneAdminUserNamePassword":"weblogic:password","agentKeyPassword":"password", "certModeKeystorePassword":"password","forceOverWrite":"true"}'
  3. クローン・データ・センターの構成時に次のようにforceOverWriteパラメータを指定します。

    curl -k -u weblogic:password -H 'Content-Type: application/json' -X POST 'https://oamadmin1-dc2.poc.com:7002/oam/services/rest/mdc/clone' -d '{"masterServerURL":"https://oamadmin1-dc1.poc.com:7002/", "artifactPassword":"password","masterAdminUserNamePassword":"oamAdminUser:password","forceOverWrite":"true"}'

ノート:

既存のMDC構成を上書きした後、クローン・データ・センターの再構成とレプリケーション承諾の設定を続行します。「マルチデータ・センターの設定」および「自動ポリシー同期の有効化」を参照してください。

20.4.7 稼働中のMDC環境における管理対象サーバーのセキュリティ・モードの変更

サーバーのセキュア通信モードは、CERTまたはSIMPLEに変更できます。
  1. APSを無効にします。「自動ポリシー同期の無効化」を参照してください
  2. WLSTコマンドを使用して、クローン・データ・センターでWriteEnabledフラグをtrueに変更します。
    connect('weblogic','password','t3://localhost:7001')
    
    domainRuntime()
    setMultiDataCenterWrite(WriteEnabledFlag="true")
  3. マスターおよびクローン・データ・センターで、すべての管理対象サーバー・インスタンスを必要なセキュリティ・モードに変更します。
    CERTモードの場合、マスターで追加ステップを実行します。
    1. CERTモードでOAMサーバーを設定します。参照
    2. 生成されたMDCパートナ証明書を%DOMAIN_HOME%/config/fmwconfig/oam-mdc-cert-artifacts/にコピーします。参照

      ノート:

      CERTモード証明書を.oamkeystoreにインポートして、クローン・データ・センターでPEMキーストア別名およびPEMキーストア別名パスワードを構成する必要はありません。
    3. RESTコマンドを実行して、リクエストの追加パラメータforceOverWrite:trueを使用してマスターおよびクローン・データ・センターを構成します。
      マスター・データ・センターを構成する場合の例:
      curl  -k -u weblogic:password -H 'Content-Type: application/json' -X POST 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/mdc/master' -d '{"mdcTopologyType":"ACTIVE_ACTIVE","masterMDCAgentID":"MasterNAPAgent","cloneMDCAgentID":"CloneNAPAgent1","accessClientPassword":"Welcome123","artifactPassword":"password","cloneServerURL":"https://oamadmin1-dc2.poc.com:7002/","cloneAdminUserNamePassword":"weblogic:password","agentKeyPassword":"password", "certModeKeystorePassword":"password","forceOverWrite":"true"}'

      クローン・データ・センターを構成する場合の例:

      curl -k -u weblogic:password -H 'Content-Type: application/json' -X POST 'https://oamadmin1-dc2.poc.com:7002/oam/services/rest/mdc/clone' -d '{"masterServerURL":"https://oamadmin1-dc1.poc.com:7002/", "artifactPassword":"password","masterAdminUserNamePassword":"oamAdminUser:password","forceOverWrite":"true"}'
    4. クローン・データ・センターの再構成コマンドとレプリケーション承諾の設定コマンドを実行します。参照
    5. マスターとクローンの管理および管理対象サーバーを再起動します。
    6. マスターとクローンのデータ・センター間のSSOを確認します。

20.4.8 SIMPLEモード・サーバーでの11g-12c OAM設定におけるMDCセッション・アダプションの問題

OAMサーバーがSIMPLEモードで構成されている場合、11gのマスターと12cのクローン(逆の配置でも同様)のデータ・センターがデプロイされているMDC環境で、MDCセッション・アダプションの問題が発生します。

11gのマスター・データ・センターと12cのクローン・データ・センター間でSSL通信に失敗する場合、互換性のためにjavaのセキュリティ方針を緩和します。

12c OAMサーバーの存在するマシンで次のことを実行します。

  1. ファイル$JAVA_HOME/jre/lib/security/java.securityを検索して編集します。
    key - jdk.tls.disabledAlgorithms - remove TLSv1, TLSv1.1, MD5withRSA
    key - jdk.certpath.disabledAlgorithms - remove MD5
  2. 管理および管理対象サーバーを再起動します。
  3. MDCセッション・アダプションのユースケースを確認します。

20.4.9 渡された入力パラメータが有効である場合にリクエストが失敗する

入力パラメータが有効な場合にCurlコマンドが失敗し、リクエストに失敗したというエラーが表示されます。構文を確認して入力に含まれる空白を削除してください。
次に、パラメータの前後に空白を含まない正しい形式のコマンドを示します。
curl  -k -u weblogic:password -H 'Content-Type: application/json' -X POST 'https://oamadmin1-dc2.poc.com:7002/oam/services/rest/mdc/clone' -d '{"masterServerURL":"https://oamadmin1-dc1.poc.com:7002/","artifactPassword":"password","masterAdminUserNamePassword":"oamAdminUser:password","forceOverWrite":"true"}'

20.4.10 セッション制御パラメータの変更

セッション制御パラメータのカスタム値を変更および指定します。

マスターおよびクローン・データ・センターで次のコマンドを個別に実行します。APSが有効な場合、このコマンドを使用してMDC構成に加えられた変更は、クローン・データ・センターに伝播されません。

curl -k -u weblogic:password -H 'Content-Type: application/json' -X POST 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/mdc/dc/mode' -d '{"config":{"entry":[{"key":"SessionMustBeAnchoredToDataCenterServicingUser","value":<<true (for Invalidate) or false (for No Invalidation)>>},{"key":"SessionDataRetrievalOnDemand","value":<<true (for Cross DC Retrieval) or false (for No Cross DC Retrieval)>>},{"key":"SessionContinuationOnSyncFailure","value":<<true (for Invalidation/Retrieval should succeed) or false (for Ignore failure)>>},{"key":"Reauthenticate","value":<<true (for Force Reauthentication) or false (for No Reauthentication)>>},{"key":"SessionDataRetrievalOnDemandMax_retry_attempts","value":<<the value equal to the binary that represents the number of attempts for data retrieval when it fails. DEFAULT: 2>>},{"key":"SessionDataRetrievalOnDemandMax_conn_wait_time","value":<<the value equal to the binary that represents the total amount of time in seconds to wait for a connection. DEFAULT: 1000>>}, {"key":"MDCGitoCookieDomain","value":<<the domain in which OAM_GITO cookie should be set. OPTIONAL: Set it in MDC Deployments where a common domain hierarchy can be derived>>}]}}'
たとえば、
curl -k -u weblogic:password -H 'Content-Type: application/json' -X POST 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/mdc/dc/mode' -d '{"config":{"entry":[{"key":"SessionMustBeAnchoredToDataCenterServicingUser","value":"true"},{"key":"SessionDataRetrievalOnDemand","value":"true"},{"key":"SessionContinuationOnSyncFailure","value":"true"},{"key":"Reauthenticate","value":"true"},{"key":"SessionDataRetrievalOnDemandMax_retry_attempts","value":"3"},{"key":"SessionDataRetrievalOnDemandMax_conn_wait_time","value":"80"}]}}'

20.4.11 下位互換性フラグの変更

データ・センターの下位互換性を、isBackwardCompatibleパラメータをtrueに設定して有効にするか、falseに設定して無効にします。このパラメータは、マスターおよびクローン・データ・センターが異なるバージョンのOAMで実行されている場合にのみ使用します。

ノート:

すべてのデータ・センターで12.2.1.3.0バイナリを使用している場合、このフラグを有効にしないでください。

マスターおよびクローン・データ・センターで次のコマンドを個別に実行します。APSが有効な場合、このコマンドを使用してMDC構成に加えられた変更は、クローン・データ・センターに伝播されません。

curl -k -u weblogic:password -H 'Content-Type: application/json' -X POST 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/mdc/dc/compatibility' -d '{"isBackwardCompatible":<<"true" to enable or "false" to disable backward compatibility if Master and Clone DCs are running different versions of OAM such as 11g and 12c respectively>>}'
たとえば、
curl -k -u weblogic:password -H 'Content-Type: application/json' -X POST 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/mdc/dc/compatibility' -d '{"isBackwardCompatible":"true|false"}

20.4.12 MDCの無効化

MDCを無効にするには、isMultiDataCenterEnabledfalseに設定します。

APSが有効な場合、このコマンドを使用してMDC構成に加えられた変更は、クローン・データ・センターに伝播されません。マスターおよびクローン・データ・センターでコマンドを個別に実行します。

curl -k -u weblogic:password -H 'Content-Type: application/json' -X POST 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/mdc/dc/mode' -d '{"isMultiDataCenterEnabled":"false"}'

ノート:

サポートされていないため、isMultiDataCenterEnabledtrueに設定しないでください。「セッション制御パラメータの変更」を参照してください。

20.4.13 データ・センターでの既存のアーティファクトのバックアップ

artifactPasswordおよびartifactsZipLocationの適切な値を指定して、データ・センターの既存のアーティファクトをバックアップします。

APSが有効な場合、このコマンドを使用してMDC構成に加えられた変更は、クローン・データ・センターに伝播されません。マスターおよびクローン・データ・センターでコマンドを個別に実行します。
curl -k -u weblogic:password -H 'Content-Type: application/json' -X POST 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/mdc/dc/backup' -d '{"artifactPassword":<<password used for protecting the cloning artifacts>>,"artifactsZipLocation":<<Location where Artifacts has to be stored. (OPTIONAL: specify if the Artifacts need to be stored in any location other than /tmp)>>}'   
たとえば、
curl -k -u weblogic:password -H 'Content-Type: application/json' -X POST 'https://oamadmin1-dc1.poc.com:7002/oam/services/rest/mdc/dc/backup' -d '{"artifactPassword":"password","artifactsZipLocation":"/scratch"}'