コンテンツにスキップ

API Gateway

文書基準: 2026年8月

バックエンドサービスを外部にAPIとして公開する際、認証、レート制限、リクエスト変換、モニタリングなどをサービスごとに実装すると重複が発生します。API Gatewayは、こうした共通の関心事を一箇所で処理する入口(Front Door)の役割を果たします。

オンプレミスでリバースプロキシ(Nginx、HAProxy)に認証/ルーティングロジックを組み込んでいたのと似ていますが、クラウドのAPI Gatewayはマネージドでスケーリング、モニタリング、開発者ポータルまで統合的に提供します。

  • 認証/認可 — APIキー、OAuth、JWT、IAMベースのアクセス制御
  • レート制限 (Throttling) — 秒間リクエスト数の制限によるバックエンド保護
  • リクエスト/レスポンス変換 — ヘッダー追加、ボディマッピング、プロトコル変換
  • キャッシング — 繰り返しリクエストへのレスポンスキャッシング
  • モニタリング — リクエスト数、レイテンシ、エラー率の自動収集
  • 開発者ポータル — APIドキュメントの自動生成、キー発行

API Gateway自体は認証ロジックを処理せず、外部の認証サービスと連携します。

ベンダー 認証サービス 備考
AWS Cognito ユーザープール + ソーシャルログイン。API Gatewayとネイティブ連携
AWS Lambda Authorizer カスタム認証ロジックをLambdaで実装
Azure Entra ID(旧Azure AD) OAuth 2.0 / OpenID Connect
Azure APIM Policy (validate-jwt) JWTトークン検証をポリシーとして設定
Google Cloud Firebase Auth / Identity Platform ソーシャルログイン、多要素認証
Google Cloud Service Account + IAM サービス間認証
OCI OCI IAM / Identity Domains OAuth 2.0、JWT検証
機能 AWS Azure Google Cloud OCI
利用プラン/クォータ Usage Plans + API Keys Subscription + Quota Policy Apigee Rate Limiting Rate Limiting Policy
リクエスト検証 Request Validator(モデルスキーマ) APIM Policy (validate-content) Apigee OAS Validation Request Validation Policy
カスタムドメイン Custom Domain + ACM証明書 Custom Domain + Managed Certificate Custom Domain + SSL Custom Domain + SSL証明書
WebSocket WebSocket API —(SignalR別途) —(Firebase Realtime別途)
GraphQL AppSync —(サードパーティ) —(サードパーティ)
ベンダー 製品 備考
AWS API Gateway (REST/HTTP/WebSocket) Lambdaとネイティブ統合。サーバーレスAPI構成に最適
AWS AppSync GraphQL専用。リアルタイムサブスクリプション対応
Azure API Management (APIM) 開発者ポータル内蔵。マルチクラウド/ハイブリッドAPI統合。AI Gatewayティア(Public Preview、2026.06)でAIモデル・MCPサーバー専用ゲートウェイ提供
Google Cloud Apigee エンタープライズAPI管理プラットフォーム。分析/収益化機能
Google Cloud API Gateway 軽量。Cloud Functions/Cloud Run連携に適合
OCI OCI API Gateway OCI Functions連携。認証、レート制限、リクエスト変換に対応

AWS API Gateway — Lambdaとの統合が最も深く、サーバーレスバックエンドをAPIとして公開するのに最適化されています。用途別に3種類(REST API / HTTP API / WebSocket API)が分かれており、HTTP APIはREST API比で約1/3のコストです。ほとんどの新規プロジェクトはHTTP APIから始め、キャッシング・WAF・Usage Planが必要な場合にのみREST APIを選択します。

Azure API Management — 開発者ポータル、APIバージョン管理、ポリシーエンジンが内蔵されたフル機能プラットフォームです。単一サービスでREST、WebSocket、GraphQLすべてを処理します。オンプレミスAPIとクラウドAPIを1つのゲートウェイに統合できます。2026年6月にAI Gatewayティア(Public Preview)が追加され、AIモデルとMCPサーバーに特化した公開・セキュリティ・ガバナンス機能を提供します。v2ティア(Basic v2、Standard v2、Premium v2)がすべてGAとなり、柔軟な価格/性能選択が可能です。

Google Cloud Apigee — APIを製品として管理するエンタープライズプラットフォームです。単一サービスですべてのプロトコルを処理し、API利用状況分析、収益化(monetization)、パートナー管理機能が強みです。Gemini Code Assist統合による自然言語ベースのAPIスペック生成がGAとなり、API Hubを通じたエージェント登録・評価とGitベース同期をサポートします。

OCI API Gateway — OCI Functionsとネイティブ連携し、単一サービスで認証(JWT検証)、レート制限、リクエスト変換をポリシーベースで設定できます。

APIデプロイ段階とバージョン管理

Section titled “APIデプロイ段階とバージョン管理”

APIは本番にデプロイされると変更が難しいため、開発→ステージング→本番の段階的デプロイとバージョン管理が重要です。

機能 AWS API Gateway Azure APIM Google Cloud Apigee OCI API Gateway
Stage/Environment Stages (dev, staging, prod) Environments Environments (test, prod) Deployments
Canaryデプロイ Canary Deployment(重み付けベース) Revision + Release Revision + TargetServer Route Rule(重み付け)
バージョン管理 API Version(v1、v2別エンドポイント) API Revision + Version API Revision + Version Spec Version
ロールバック 以前のDeploymentへ切り替え Revision切り替え Revision切り替え 以前のDeploymentへ切り替え
戦略 説明 ベンダー別実装
Canary 新バージョンに少量のトラフィック(5〜10%)を送りモニタリング後に拡大 AWS: API Gateway Canary Deployment(Stage重み付け)、Azure APIM: Revision + Traffic Split、Google Cloud Apigee: TargetServer重み付け
Blue/Green 2つの環境を同時運用後にトラフィックを切り替え。即座にロールバック可能 AWS: Stage切り替え、Azure APIM: Revision切り替え、Google Cloud: Revision切り替え
バージョン分離 /v1/v2別エンドポイントで共存 全ベンダー対応。既存利用者への影響なく新バージョンを追加

オンプレミスでSwaggerによりAPIスペックを定義していたチームは、クラウドでも同じワークフローを維持できます。

  • Import: OpenAPIスペックからAPI Gatewayを自動生成(AWS、Azure APIM、Apigeeすべて対応)
  • Export: API GatewayからOpenAPIスペックを抽出してドキュメント化
  • IaC連携: CloudFormation/TerraformでOpenAPIスペックをインラインで定義し、API構成をコードとして管理
  • 開発者ポータル: Azure APIM、ApigeeはOpenAPIスペックベースでインタラクティブなAPIドキュメントを自動生成
ツール 役割 API Gatewayとの関係
Postman API手動テスト、コレクション管理、環境変数 Stage別URLを環境として管理、認証トークンの自動更新
Swagger UI OpenAPIスペックベースのインタラクティブドキュメント API Gatewayからexportしたスペックで自動生成
ベンダーコンソールテスト AWSコンソールTestタブ、APIM Testタブ デプロイ前の迅速な検証
curl / httpie CLIベースの迅速なテスト CI/CDパイプラインでのスモークテスト

クラウドAPIは認証フロー(OAuth、API Key、IAM Sig v4)が複雑で、環境(dev/staging/prod)別の切り替えが頻繁なため、Postmanのようなツールで環境変数と認証を体系的に管理することが効率的です。

  • REST APIとHTTP APIを区別せずREST APIで開始 — AWSではHTTP APIがコスト1/3で、ほとんどの要件を満たします。キャッシング・WAF・Usage Planが必要な場合にのみREST APIを選択してください。
  • APIバージョン管理なしに既存の応答形式を変更 — 既存の利用者(クライアント)が即座に壊れます。新バージョン(/v2)を追加し既存バージョンを維持してください。
  • API GatewayのCanaryをバックエンドコードデプロイのCanaryと誤解 — API Gateway Canaryはゲートウェイ設定変更に対するものです。バックエンドコードデプロイはLambda Alias重み付けやLB Target Groupで別途構成する必要があります。
  • 認証/認可(API Key、JWT、IAM)がすべてのエンドポイントに適用されているか?
  • レート制限(Throttling)が設定されバックエンドの過負荷を防いでいるか?
  • OpenAPIスペックがIaCと同期され、API構成がコードとして管理されているか?