DataPower Gateway

検証 - DataPower Gateway (v5 compatible)

「検証」 ポリシーを使用して、アセンブリー・フロー内のペイロードを JSON または XML スキーマに照らして検証します。

ゲートウェイのサポート

注: このトピックでは、 DataPower® Gateway (v5 compatible)での 「検証」 ポリシーの実装について説明します。 を使用している場合は、 DataPower API GatewayValidate - DataPower API Gateway 」を参照してください。

さまざまなタイプのゲートウェイについては、 API Connect のゲートウェイ・タイプを参照してください。

表 1. このポリシーをサポートするゲートウェイと、対応するポリシーバージョンを示す表
ゲートウェイ ポリシーのバージョン
DataPower Gateway (v5 compatible) 1.0.0

このトピックでは、Assemblyのユーザーインターフェースでポリシーを設定する方法について説明します。 OpenAPI ソースでポリシーを設定する方法の詳細については、 「validate - DataPower Gateway ( v5 互換)」 を参照してください。

制約事項:
  • XML を表すスキーマは、1 つの XML 名前空間のみを参照できます。
  • スキーマは、ポリモアフィック XML エレメントを参照できません。
  • 検証は、message.body 変数に対してのみ機能し、他の出力変数やコンテキスト変数では機能しません。 invoke ポリシーに構成済みの応答オブジェクト変数が含まれている場合、message.body は設定されず、validate は機能することができません。
  • API のスキーマ定義で multipleOf キーワードを使用する場合、丸め動作が理由で、指定する値は以下の条件を満たす必要があります。そうでないと、API の呼び出し時に検証が失敗します。
    • その値は 0.000000999999999999999848869 以上でなければなりません。
    • その値が 1 より大きい場合、小数点より前の数値は 999999999999999934463 以下でなければなりません。

製品情報

このポリシーを以下の API フローに付加できます。
  • REST
このポリシーは、以下のようにアセンブリー・フロー内の必要な場所に配置します。
  • 元の入力を検証するには、フローの先頭に 「検証」 ポリシーを配置します。
  • 他の呼び出しアクションまたはタスクから返された中間応答を検証するには、それらのアクションまたはタスクの後に 「検証」 ポリシーを配置します。
  • クライアント・アプリケーションに返される応答を検証するには、応答を照合するタスクの後に 「検証」 ポリシーを配置します。

異なる OpenAPI スキーマ定義を各 「妥当性検査」 ポリシーに適用するには、API レベルで指定されたスキーマ定義のセットから選択するか、操作レベルでスキーマ定義を選択します。

プロパティ-

以下の表に、このポリシーのプロパティーをリストします。表には、プロパティーが必須かどうか、入力用の有効な値とデフォルト値、および値のデータ型が示されています。

表 2. ポリシーのプロパティを検証する
プロパティー・ラベル 必須 説明 データ・タイプ
役職 はい ポリシーのタイトル。

デフォルト値は validateです。

ストリング
説明 いいえ ポリシーの説明。 ストリング
定義 はい ペイロードを検証するために使用するスキーマ定義を指定します。
有効値:
  • request: この操作に対する要求パラメーターの「タイプ」フィールドに指定されているスキーマ定義に照らして要求の入力を検証するには、この値を選択します。 要求パラメーターの作成方法については、 操作の構成を参照してください。
  • response: この操作に対する応答パラメーターの「スキーマ」フィールドに指定されているスキーマ定義に照らして、クライアント・アプリケーションに返される応答を検証するには、この値を選択します。 応答パラメーターの作成方法については、 オペレーションの構成を参照してください。
  • #/definitions/definition_name: アセンブリー・フロー内の他の呼び出しアクションまたはタスクから返されるペイロードを検証するために、以前に定義したスキーマ定義を使用する場合は、この値を選択します。 API 定義のスキーマの定義については、 API 定義の編集を参照してください。
ストリング