プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle Access Management管理者ガイド
11g リリース2 (11.1.2.3) for All Platforms
E61950-08
目次へ移動
目次

前
次

19.6 レプリケーション承諾のREST APIの使用

レプリケーション承諾を管理するには、Access Managerによって提供されているREST APIを使用します。

この節では、以下のトピックについて説明します。

19.6.1 レプリケーション承諾の詳細の問合せ

RESTリクエストをマスターのエンドポイントで実行して、マスターとクローンのデータ・センター間のレプリケーション承諾の詳細(ポーリング間隔を含む)を問い合せます。

  1. レプリケーション承諾識別子が不明の場合、次のコマンドを実行して、すべてのレプリケーション承諾識別子を表示します。わかっている場合には、このステップはスキップしてください。

    curl -k -u weblogic:password 'https://supplier.example.com:7002/oam/services/rest/_replication/agreements'
     
    Sample output 1:
    {"featureEnabled":"true","identifiers":"201411211137273612","ok":"true"}
    Sample output 2:
    {"featureEnabled":"true","identifiers":["201411211137273612","201411211137273900"],"ok":"true"}
    
  2. 次の手順で、クローン・データ・センターのレプリケーション承諾の詳細(ポーリング間隔を含む)を問い合せます。

    curl -k -u weblogic:password 'https://supplier.example.com:7002/oam/services/rest/_replication/201409231329353668?type=consumer'
    
    Sample output:
    {"enabled":"true","identifier":"201409231329353668","ok":"true",
      "pollInterval":"60","startingSequenceNumber":"110","state":"READY"}
    
  3. 次の手順で、マスター・データ・センターのレプリケーション承諾の詳細(ポーリング間隔を含む)を問い合せます。

    curl -u weblogic:password 'https://supplier.example.com:7002/oam/services/rest/_replication/201409231329353668'
    Sample output:
    {"enabled":"true","identifier":"201409231329353668","lastSequenceNumber":"110","ok":"true","pollInterval":"3600","startingSequenceNumber":"110","state":"ACTIVE"}
    

    ノート:

    マスター・データ・センターのレプリケーション承諾のポーリング間隔は実際のレプリケーションに影響を与えません。

19.6.2 既存のレプリケーション承諾の変更

レプリケーション承諾のプロパティ(有効化ステータス、ポーリング間隔など)を更新するには、マスターのエンドポイントでRESTリクエストを実行します。replicaTypeパラメータの値で指定されたとおりに、マスターまたはクローンのレプリケーション承諾が更新されます。

クローンは変更をポーリングし、その変更を適用し、pollIntervalとして指定された時間が経過するまで待機します。

PUT http://supplier.example.com/oam/services/rest/
  _replication/201312040602298762 HTTP/1.1
  Content-Type: application/json
  {"enabled":"false","pollInterval":"60","replicaType":"CONSUMER"}

この例では、クローンのレプリケーション承諾が無効になり、ポーリング間隔が60秒に変更されます。replicaTypeの値が定義されていない(またはSUPPLIERとして定義されている)場合は、マスターのレプリケーション承諾が更新されます。

cURLを使用してポーリング間隔を編集するには、次のコマンドを使用します。この場合、クローンを更新するためのreplicaType値は、SUPPLIERまたはCONSUMERです。

curl -u <repluser> -H 'Content-Type: application/json' -X PUT 
 'https://supplier.example.com/oam/services/rest/_replication/201409231329353668' 
 -d '{"pollInterval":"60","replicaType":"CONSUMER"}'

表19-3に、cURLおよびRESを使用して変更可能なプロパティを示します。

表19-3 レプリケーション承諾プロパティの変更

プロパティ 変更コマンド

BatchSize

クローンによるgetChanges問合せの結果として、マスターによって返される変更レコード(ジャーナル)の数。フェッチの一部として複数のバッチですべての変更がプルされるため、理想としては、デフォルトのバッチ・サイズの32で十分です。ただし、大きいバッチ・サイズが設定で必要な場合は、次のコマンドを実行します。

curl -u <repluser> -H 'Content-Type: application/json' -X PUT 
 'https://master.example.com/oam/services/rest/_replication/<replid>' 
 -d '{"batchSize":"100","replicaType":"SUPPLIER"}'

ユーザー・コンテキスト

まれな例ですが、レプリケーション・ポーリングのユーザー・コンテキストの変更が必要になる場合があります。

curl -u <repluser> -H 'Content-Type: application/json' -X PUT 
 'https://supplier.example.com:7002/oam/services/rest/_replication/201409231329353668' 
 -d '{"replicaType":"CONSUMER",
"config":{"entry":{"key":"authorization","value":" 
 BASIC cG9sbHVzZXI6c2VjcmV0"}}}'

'cG9sbHVzZXI6c2VjcmV0'は、polluser資格証明のベース64のエンコード値です。ここでは、コマンドの実行に使用されるrepluserではなく、任意のユーザー資格証明を使用できます。

19.6.3 レプリケーション承諾の削除

レプリケーション承諾を削除するには、REST APIをマスター・データ・センターのエンドポイントで実行します。レプリケーション承諾が現在アクティブで使用されている場合は、マスターおよびクローンが無効化されないかぎり、そのレプリケーション承諾の削除はできません。

レプリケーション承諾を無効にしてから、クローンおよびマスターのデータ・センターから削除します。

  1. 次に示すように、クローンでレプリケーション承諾を無効にします。

    curl -u <repluser> -H 'Content-Type: application/json' -X PUT
      'https://supplier.example.com:7002/oam/services/rest/_replication/201409231
      329353668' -d '{"enabled":"false","replicaType":"CONSUMER"}''
    
  2. 次に示すように、マスターでレプリケーション承諾を無効にします。

    curl -u <repluser> -H 'Content-Type: application/json' -X PUT
      'https://supplier.example.com:7002/oam/services/rest/_replication/201409231
      329353668' -d '{"enabled":"false","replicaType":"SUPPLIER"}''
    
  3. 次に示すように、レプリケーション承諾を削除します。

    curl -u weblogic:welcome1 -H 'Content-Type: application/json' -X DELETE
      'https://supplier.example.com:7002/oam/services/rest/_replication/201409231
      329353668'