演習 - 変換ポリシーを使用して URL をマスクする

完了

ホストする API の応答に元の URL が含まれている場合、クライアントでは API に直接接続することによって API Management ポリシーを迂回できる可能性があります。 API 応答で元の URL をマスクすることにより、それを防ぐことができます。

Census API の例にはこの方法で URL が含まれています。 すべての要求が API Management 経由で行われるようにする必要があります。

このユニットでは、Census API の本文で返されるデータの一部をマスクする方法を説明します。 変換ポリシーを使用し、応答の本文で公開される URL データを書き直します。

URL をマスクする

次の演習では、API Management 内で URL のマスク変換ポリシーを適用する方法を実行します。

Screenshot of the Design tab with the Policies icon highlighted in the Outbound processing section.

  1. 前の演習で使ったものと同じアカウントを使って、Azure portal にサインインします。

  2. Azure portal メニューで、または [ホーム] ページから、[すべてのリソース] を選択した後に、API Management インスタンスを選択します。

  3. 左側のメニュー ペインの [API] で、[API] を選択し、中央のペインで、[Census Data] を選択します。

  4. 上部のメニュー バーで、[デザイン] タブを選択し、[すべての操作] を選択します。

  5. [送信処理] セクションで、</> アイコンを選択します。 XML ポリシー エディターが表示されます。

  6. <outbound> 要素内で、前に追加した <set-header-name> 要素の下に、次の要素を追加します。

    <redirect-content-urls />
    
  7. [保存] を選択します。

新しいポリシーをテストする

Azure portal のテスト ツールを使って、ポリシーが意図したとおりに動作することを確認できます。

  1. [Census Data] を再度選択し、上部のメニュー バーで、[テスト] タブを選択します。

  2. [GetLatestCensus] を選択し、[送信] を選択します。

    Screenshot of the test screen for the GetLatestCensus operation of the Census Data API. The Send button is highlighted.

URL のマスク変換ポリシーによって、API Management エンドポイントに対する応答本文内のリンクがどのように変更されたかわかるはずです。 URL に API Management インスタンスの名前が表示されるはずです。

Screenshot of an HTTP response with the href value highlighted, showing that the URL has been masked.