CloudHub 2.0 での管理 Flex Gateway の使用開始

CloudHub 2.0 で Anypoint 管理 Flex Gateway の使用を開始します。管理 Flex Gateway を作成してデプロイし、API をパブリッシュして、基本認証ポリシーで API を保護します。

始める前に

Flex Gateway の使用を始める前に、次の手順を完了してください。

  • Flex Gateway の要件と制限を見直して、必要な管理 Flex Gateway 権限があることを確認します。

  • CloudHub 2.0 に非公開スペースを作成するか、既存の非公開スペースにアクセスできることを確認します。非公開スペースを作成するには、非公開スペースの作成を参照してください。

管理 Flex Gateway をデプロイする

  1. Anypoint Platform から ​[Runtime Manager]​ を選択します。

  2. サイドバーで ​[Flex Gateways (Flex Gateway)]​ をクリックします。

  3. [Managed Flex Gateway (管理 Flex Gateway)]​ をクリックします。

  4. [Add Managed Flex Gateway (管理 Flex Gateway を追加)]​ をクリックします。

  5. [Gateway name (ゲートウェイ名)]​ を入力します。

  6. [Deployment target (デプロイメント対象)]​ として非公開スペースを選択します。

  7. [Advanced options (詳細オプション)]​ をクリックします。

  8. 後でテストできるように管理 Flex Gateway 公開エンドポイントをコピーして保存します。これは ​[Public endpoint (公開エンドポイント)]​ UI ブロックに表示される HTTP または HTTPs URL です。たとえば、​https://my-gateway-abc123.edf456.us-east1.anypoint.mulesoft.com/​ などです。

  9. [Save & deploy (保存してデプロイ)]​ をクリックします。

    UI が新しい管理 Flex Gateway のダッシュボードに戻ります。

  10. ゲートウェイの ​[Status (状況)]​ が ​[Running (実行中)]​ になるまで待機します。

シンプルな API のパブリッシュ

  1. 管理ゲートウェイのダッシュボードから、​[Add API instance (API インスタンスを追加)]​ をクリックします。

  2. [Add API (API を追加)]​ ページから、ランタイムとして ​[Flex Gateway]​ を選択します。

  3. [Select a gateway (ゲートウェイを選択)]​ セクションでデプロイ済みの管理 Flex Gateway を選択します。

  4. [Next (次へ)]​ をクリックします。

  5. [Create New API (新しい API を作成)]​ をクリックします。

  6. API 参照名を指定し、アセットタイプとして ​[HTTP API]​ を選択します。

  7. [Next (次へ)]​ をクリックします。

  8. ダウンストリームオプションは設定しないでください。

  9. [Next (次へ)]​ をクリックします。

  10. [Upstream (アップストリーム)]​ ページで次の手順を実行します。

    1. 次の URL を ​[Upstream URL (アップストリームURL)]​ 項目に入力します。

      https://jsonplaceholder.typicode.com/
  11. [Next (次へ)]​ をクリックします。

  12. [Save & Deploy (保存してデプロイ)]​ をクリックします。

    UI によって、新規作成した API インスタンスの ​[API Summary (API サマリー)]​ ページに移動します。

    公開エンドポイントに対して行われるすべての HTTP 要求が ​jsonplaceholder​ サーバーにプロキシされるようになります。

  13. API インスタンスをテストするには、公開エンドポイントのプレースホルダーを置き換え、新しいターミナルウィンドウで次のコマンドを実行します。

    curl -s -o /dev/null -w "%{http_code}\n" --request GET '<publicEndpoint>'

    このコマンドは API への ​GET​ 要求を実行し、結果として成功を示す ​200​ 状況コードを出力します。

基本認証ポリシーを使用して API を保護する

  1. [API Summary (API サマリー)]​ ページで、サイドナビゲーションパネルから ​[Policies (ポリシー)]​ を選択します。

  2. [Policies (ポリシー)]​ ページで、​[Add inbound policy (インバウンドポリシーを追加)]​ をクリックします。

  3. [Basic Authentication - Simple (基本認証 - シンプル)]​ ポリシーを選択します。

  4. [Next (次へ)]​ をクリックします。

  5. [User Name (ユーザー名)]​ に「​user​」と入力します。

  6. [User Password (ユーザーパスワード)]​ に「​password​」と入力します。

  7. [Apply (適用)]​ をクリックします。

  8. 認証を​使用せずに​ API インスタンスをテストするには、公開エンドポイントのプレースホルダーを置き換え、ターミナルウィンドウで次のコマンドを実行します。

    curl -s -o /dev/null -w "%{http_code}\n" --request GET '<publicEndpoint>'

    要求には認証コンテキストが含まれていないため、コマンドは結果として ​401 (Unauthorized)​ 状況コードを出力します。

  9. 認証を​使用して​ API インスタンスをテストするには、公開エンドポイントのプレースホルダーを置き換え、ターミナルウィンドウで次のコマンドを実行します。

    curl -s -o /dev/null -w "%{http_code}\n" --request GET '<publicEndpoint>' -u user:password
    user​ パラメーターと ​password​ パラメーターは、​API Manager​ 経由でポリシーを適用したときに指定した内容と一致する必要があります。

    このコマンドは、結果として成功を示す ​200​ 状況コードを出力します。