Publish OpenAPI Service ウィザード

管理者は、Publish OpenAPI Service ウィザードを使用して、OpenAPI ドキュメントに基づいてサービスを公開できます。 このウィザードでは、OpenAPI ドキュメント、ルーティング URI、API サーバ URL を指定する手順が示されます。 必要に応じて、サービス ポリシーで要求メッセージに適用する検証オプションを選択できます。 ウィザードでは、最初に役立つサンプル テンプレート ポリシーが作成されます(「」を参照)。
9-5
管理者は、
Publish OpenAPI Service
ウィザードを使用して、OpenAPI ドキュメントに基づいてサービスを公開できます。 このウィザードでは、OpenAPI ドキュメント、ルーティング URI、API サーバ URL を指定する手順が示されます。 必要に応じて、サービス ポリシーで要求メッセージに適用する検証オプションを選択できます。 ウィザードでは、最初に役立つサンプル テンプレート ポリシーが作成されます(「Validate Against OpenAPI Document アサーション」を参照)。
使用しているサービスに対する受信プロトコルが、OpenAPI サービスのプロトコルと異なる場合は、(このウィザードで生成されるテンプレート ポリシーで) Route via HTTP(S) アサーションを変更して、そのプロトコルを使用するようにしてください。 たとえば、受信 SSL を OpenAPI ポリシーに追加したが、OpenAPI バック エンドで HTTP を使用する場合があります。 この場合は、テンプレート ポリシーで Route via HTTP(S) アサーションの URL の先頭を 「
${request.url.protocol}:
」から「
http:
」に変更します。
サービスの公開
  1. [Policy Development]ウィンドウで
    [Tasks]-[Services and APIs]-[Publish OpenAPI Service]
    を選択します。
    Publish OpenAPI Service ウィザードが開きます。
  2. [OpenAPI Document Location]
    で OpenAPI ドキュメントの場所を指定し、
    [Next]
    をクリックします。
    このドキュメントは、HTTP/HTTPS サーバでホストされ、オンラインである必要があります。 URL のオプションを設定する(たとえば、認証情報、SSL、またはプロキシ オプションを指定する)には、
    [HTTP Options]
    をクリックして[Manage HTTP Options]ダイアログ ボックスを開きます。
    注:
    OpenAPI ドキュメントの場所を解析できないというエラー メッセージが発生した場合、認証が必要である可能性があります。 この場合、
    [HTTP Options]
    をクリックして URL のオプションを設定します。
  3. [Service Name]
    フィールドに、サービスの名前を入力します。 タイトルが OpenAPI ドキュメントで設定されている場合は、デフォルト値として設定されます。
  4. [Routing URI]
    フィールドに公開するサービスの解決 URI を入力します。 サービス URI が OpenAPI ドキュメントで設定されている場合は、デフォルト値として設定されます。
  5. ドロップダウン リストから
    [API Server URL]
    を選択します。
  6. 公開されたサービス ポリシーに結果として生成される Validate Against OpenAPI Document アサーションで有効にする
    [OpenAPI Validation Options]
    を選択します。
    1. Validate Path:
      サーバ URL およびサービス URI を除く、リクエストのパス部分を OpenAPI ドキュメントの API に対して検証します。 このパラメータは、デフォルトで有効になっています。 選択されていない場合は、任意のパスが受け入れられます。
      注:
      パスの検証を無効にすると、その他すべての検証オプションも無効になります。
    2. Validate Method
      : リクエストのメソッドが、OpenAPI ドキュメントの API での使用が許可されているかどうかを確認します。 選択されていない場合は、任意のメソッドが受け入れられます。
      注:
      メソッドの検証は、パスの検証が選択されている場合のみ使用できます。
    3. Validate Body:
      リクエスト本文が JSON タイプの場合、OpenAPI ドキュメントの JSON スキーマに対してリクエスト本文の内容を検証します。 リクエスト本文の検証には、JSON スキーマの検証と同じ制限があります(ある場合)。
      • JSON スキーマは、最初のロード後にキャッシュされます。
      • Gateway システム プロパティでキャッシュ サイズと削除時間を設定できます。
      • リクエスト本文の長さは、Gateway システム プロパティに設定されている値を超えている場合、リクエスト本文の検証では無視されます。
      注:
      リクエスト本文の検証は、メソッドの検証が選択されている場合にのみ使用できます。
    4. Require Security Credentials to be Present
      : OpenAPI ドキュメントの API で指定された適切なセキュリティ認証情報が、リクエスト内に存在するかどうかを確認します。 選択されていない場合、任意の認証情報が受け入れられます(または認証情報は何も受け入れられません)。
      注:
      • セキュリティ認証情報の検証は、メソッドの検証が選択されている場合にのみ使用できます。
      • このアサーションでは、セキュリティ認証情報を収集または認証しません。 これらの有無のみを確認します。 許可されている認証情報が見つからない場合は、アサーションが失敗します。
  7. 完了
    ]をクリックします。
    [Policy]ウィンドウが開き、設定された値が表示されます。
よくある質問
質問
回答
OpenAPI ドキュメントをローカルまたはネットワーク ドライブ上で指定できないのはなぜですか。
.json
または .
yaml
ドキュメントは常にオンラインで提供されている必要があります。 上級ユーザは、OpenAPI ドキュメントの内容をコンテキスト変数に貼り付けて独自のサービスを作成することも可能です。
OpenAPI 検証オプションを後で変更できますか。
はい。 公開されたサービスで Validate Against OpenAPI Document アサーションを開き、適切な変更を加えるだけです。
OpenAPI ドキュメントをダウンロードできないのはなぜですか。
ドキュメントが有効な OpenAPI ドキュメントであることを確認します。 また、ドキュメント サイズが クラスタ プロパティによって指定された最大値を超えていないことを確認します。