ネットワーク

Amazon API Gateway 完全ガイド|REST / HTTP / WebSocket API

Amazon API Gateway は API のフルマネージドフロントエンドサービス。REST API・HTTP API・WebSocket API を構築でき、Lambda・EC2・他 HTTP バックエンドと統合する。認証・認可・スロットリング・キャッシュ・モニタリ...

REST / HTTP / WebSocket API のフルマネージド窓口サービス。Lambda 統合でサーバーレス API の中核。


1. 概要(端的に)

Amazon API Gateway は API のフルマネージドフロントエンドサービス。REST API・HTTP API・WebSocket API を構築でき、Lambda・EC2・他 HTTP バックエンドと統合する。認証・認可・スロットリング・キャッシュ・モニタリング を組み込みで提供し、サーバーレス API の標準フロント。


2. 何ができるか

  • API エンドポイント提供:HTTPS で API 公開
  • 3 種類の API:REST / HTTP / WebSocket
  • Lambda 統合:サーバーレス API の鉄板
  • 認証認可:Cognito / IAM / Lambda Authorizer / API Key
  • スロットリング:レート制限
  • キャッシング:レスポンスキャッシュで高速化
  • CORS 対応:プリフライトリクエスト処理
  • 使用量プラン:API Key 別の課金・制限
  • カスタムドメイン:独自ドメイン + ACM 証明書

3 種類の API

API タイプ用途特徴
REST API高機能 REST全機能対応、料金高め
HTTP API軽量 REST(推奨)70% 安価、機能限定
WebSocket API双方向通信チャット・リアルタイム

3. 特徴

観点特徴
追加料金リクエスト数 + データ転送(REST)/ HTTP は約 70% 安
無料枠月 100 万リクエスト
スループットデフォルト 10,000 RPS(リージョン全体)
レイテンシ数十 ms(リージョン内)
HTTPS標準対応(カスタムドメイン + ACM)
ステータスログCloudWatch Logs / X-Ray 統合

REST vs HTTP API

機能RESTHTTP
Lambda 統合
HTTP バックエンド統合
認証(IAM/Cognito/Lambda)
API Key×
使用量プラン×
キャッシュ×
WAF 統合×
料金約 70% 安い
推奨全機能必要時シンプル API に最適

4. 仕組み

API Gateway は クライアントとバックエンド(Lambda 等)の間のリバースプロキシとして動作。リクエストの認証・変換・ルーティング・レスポンス変換を一手に担う。

構成要素

  • API:API 定義の単位
  • リソース:URL パス(/users /orders 等)
  • メソッド:HTTP メソッド(GET / POST / PUT / DELETE)
  • インテグレーション:バックエンド(Lambda / HTTP / Mock 等)
  • オーソライザー:認証ロジック
  • ステージ:デプロイ環境(dev / prod 等)
  • ステージ変数:環境別変数

動作の流れ

  1. クライアントが API Gateway URL に HTTPS リクエスト
  2. 認証:Cognito / IAM / Lambda Authorizer 評価
  3. スロットリング:レート制限チェック
  4. キャッシュ確認(REST のみ)
  5. インテグレーション実行:Lambda 呼び出し等
  6. レスポンス変換:マッピングテンプレート
  7. クライアントへ返却

Lambda Authorizer(カスタム認証)

  • 任意の認証ロジックを Lambda で実装
  • JWT 検証・OAuth・社内認証等に対応
  • レスポンスキャッシュで高速化

API Key + Usage Plan

[API Key A] → 1,000 RPS 上限、月 100 万リクエスト
[API Key B] → 10 RPS 上限、月 1 万リクエスト

→ 顧客プラン別の API 提供

5. ユースケース

ユースケース 1:サーバーレス API

API Gateway + Lambda + DynamoDB の鉄板構成。

ユースケース 2:マイクロサービス入口

複数の Lambda・ECS をパスで振り分け。

ユースケース 3:レガシー API のラッパー

既存 HTTP API を API Gateway 経由でモダン化(認証・スロットリング追加)。

ユースケース 4:API 課金

Usage Plan で SaaS 的な従量課金。

ユースケース 5:WebSocket チャット

WebSocket API + Lambda + DynamoDB でチャット基盤。

ユースケース 6:BFF パターン

モバイル・Web 向けに最適化された BFF(Backend for Frontend)。


6. 関連用語

  • Lambda — 主要バックエンド
  • Cognito — 認証統合
  • IAM — 認証統合
  • CloudWatch — ログ・メトリクス
  • X-Ray — 分散トレース
  • WAF — REST API のセキュリティ統合

7. 関連サイト

AWS 公式

参考


🎓 試験での出題傾向

試験重要度主な出題パターン
CLFAPI 公開の概念
SAAサーバーレス設計、認証統合
DVAAPI Gateway + Lambda 構築(最頻出)、認証実装
SOAAPI 運用・モニタリング