Azure API Managementの参照アーキテクチャパターン

こんにちは。今日は、Azure API Managementの参照アーキテクチャパターン(主にセキュリティの観点)について調べてみたので、分かったことをメモしておきたいと思います。

それではまいります。

なお、すべてのアーキテクチャパターンは以下から確認できます。

Azure アーキテクチャを参照する – Azure Architecture Center | Microsoft Learn

基本的なエンタープライズシナリオ

Azure での基本的なエンタープライズ統合 – Azure Architecture Center | Microsoft Learn

  • みたそのまま。API Managementをすべてのリクエストの入り口に据えているパターン。

外部アクセスに対してはApplication Gatewayを経由させてセキュリティを強化

Azure API Management ランディング ゾーン アクセラレータ – Azure Architecture Center | Microsoft Learn

  • 1つのAPI Managementで、社内環境から利用するAPIとインターネット経由で外部顧客などから利用されるAPIの両方を提供する場合のアーキテクチャ例。
  • API ManagementはPaaSなので規定だとパブリックエンドポイントをもつけど、このパターンんでは仮想ネットワーク内にデプロイする機能を利用して、パブリックアクセスは不可にしている。
  • オンプレミス環境など、社内環境からのアクセスでは、プライベート通信で直接API Managementに接続して、バックエンドのサービスを呼び出す一方、インターネット環境からはApplication Gatewayを経由してアクセスさせている
  • Application Gatewayを経由させる心は、WAF (Web Application Firewall)機能を利用して、一般的なアプリケーション脆弱性に対する攻撃に対するセキュリティを高めるため

上のドキュメントには、以下のようにも書かれています。

API Management 検証ポリシーは、OpenAPI スキーマに対する API 要求と応答を検証するために使用できます。 これらの機能は Web Application Firewall に代わるものではありませんが、一部の脅威に対する追加の保護を提供できます。 

なるほど、API Manamgentを利用してバックエンドサービスを呼び出す場合にも、一般的なアプリケーション脆弱性に対する攻撃(SQL Injectionなど)への対処は検討が必要で、API Mangement内で提供される検証ポリシーではWAFほど広範な対策機能はないので、外部に一般公開するようなAPIに対しては、Application Gatewayを前段に配置するなどの対策が必要なのですね。

このことは、API Manamgentのセキュリティベースラインにもはっきり書かれていました。

API Management 用の Azure セキュリティ ベースライン | Microsoft Learn

重要な Web/HTTP API を保護するには、Virtual Network (VNET) 内のAPI Managementを内部モードで構成し、Azure Application Gatewayを構成します。 Application Gateway は PaaS サービスの 1 つです。 リバース プロキシとしての役目を果たし、L7 の負荷分散、ルーティング、Web アプリケーション ファイアウォール (WAF)、およびその他のサービスを提供します。

このパターンの参照アーキテクチャは他にもいくつかあったので貼っておきます。

Azure Application Gateway と Azure API Management で API を保護する – Azure Reference Architectures | Microsoft Learn

Azure Health Data Services アーキテクチャ ガイド – Azure Architecture Center | Microsoft Learn

以上、参考になりましたら幸いです。

おしまい。

この記事を気に入っていただけたらシェアをお願いします!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

ABOUT US
Yuu113
初めまして。ゆうたろうと申します。 兵庫県出身、東京でシステムエンジニアをしております。現在は主にデータ分析、機械学習を活用してビジネスモデリングに取り組んでいます。 日々学んだことや経験したことを整理していきたいと思い、ブログを始めました。旅行、カメラ、IT技術、江戸文化が大好きですので、これらについても記事にしていきたいと思っています。