Azure API Management(APIM)は、既存のバックエンド サービスの前段に「ゲートウェイ」を置き、認証・流量制御・変換などを一元的に適用できるサービスです。バックエンドのコードを一切変更せずに、サブスクリプションキーによるアクセス制御やレート制限を追加できる点が特徴で、AZ-204 では「API Management の実装」として頻出のテーマです。
このラボでは、数分で作成できるサーバーレスの Consumption(従量課金)レベルの APIM インスタンスを作成し、インターネット上の公開テスト用バックエンド(httpbin.org)を API として定義します。その後、サブスクリプションキーなしのリクエストが 401 で拒否されること、キー付きなら 200 が返ることを確認し、最後に rate-limit ポリシーを適用して、制限を超えたリクエストが 429 Too Many Requests になる様子を実際に観察します。
ポリシーは XML で記述され、inbound / backend / outbound / on-error の各セクションに配置します。今回は inbound セクションに rate-limit を入れますが、Consumption レベルでは rate-limit-by-key が使えないなど、レベル(ティア)ごとの機能差も試験でよく問われるポイントです。手順の中で合わせて確認していきます。
rate-limit ポリシーを API スコープに適用し、429 応答を確認できるrate-limit-by-key 不可など)を説明できる詳細な手順は、ラボ開始後に画面内のガイドとして表示されます。