過剰コストやDDoS攻撃の対策に有効、「Amazon API Gateway」でAPI実行数を管理、制限するには:AWSチートシート
AWS活用における便利な小技を簡潔に紹介する連載「AWSチートシート」。今回は「Amazon API Gateway」のみでできるアクセス元ごとのAPI実行数管理のポイントをする。
「Amazon Web Services」(AWS)活用における便利な小技を簡潔に紹介する連載「AWSチートシート」。今回は「Amazon API Gateway」(以下、API Gateway)のみでできるアクセス元ごとのAPI実行数管理のポイントを紹介します。
APIの実行数を適切に管理することで、バックエンドのシステムへの影響を最小限にすることや、意図しないリクエスト増によるコスト過剰が起こらないようにすることができます。
API実行数を管理する理由
API Gatewayでアクセス元ごとにAPI実行数を適切に管理することで、想定以上のアクセスがあった場合にAPI Gatewayで「429 To Many Request」を返却して以降の処理を中断させることができます。その理由としては、大きく3つ挙げられます。
- 使う分だけのリソースを確保するため
- 悪意のあるアクセス増(DDoS攻撃など)の影響を最小限にするため
- アクセス元の利用傾向を把握し、分析にも利用できるため
1つ目については、AWSのリソースはアーキテクチャをしっかり設計しておけば、使われるだけスケールできます。ただし、スケールするとコストもかさんでいくので、悪意がなくても想定以上のアクセスは防いでおき、アクセス元で制御した方がよい場合があります。
2つ目については、アクセス元ごとにAPI実行数を管理するので、攻撃を受けているアクセス元からのリクエストのみ、以降の処理を中断させることができます。その他のアクセス元は正常に処理するので、被害を最小限に抑えることができます。
3つ目については、直接APIの実行数管理がメリットになるわけではないのですが、アクセス元ごとに管理する使用量プランを設定するので、APIキーごとのリクエスト状況が確認できるようになり、分析しやすくなります。
Amazon API GatewayのAPI実行数管理の概要
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- KongがAPI管理やサービスメッシュをマルチクラウドで統合するサービス「Kong Konnect」を発表
Kongは、モノリシック/マイクロサービス、Kubernetes/仮想マシンと、多様なアプリケーション形態とオンプレミスやパブリッククラウドなど多様な稼働場所に対応し、API管理やサービスメッシュを一括制御できる「Kong Konnect」をプライベートβとしてリリースしたと発表した。 - 手作業でAPIキーを発行、請求書は手で書き起こし――「駅すぱあとWebサービス」が取り組んだWeb API改善施策
「Google Cloud Next '18」でヴァル研究所 ナビゲーション開発部テックリードの田辺純一氏は、「駅すぱあとWebサービス」の開発や運用を振り返り、企業がWeb APIを提供する際のポイントを紹介した。 - Google、「Apigee APIプラットフォーム」にAPI監視やサービス拡張などの機能を追加
Googleは、ライフサイクルAPI管理に役立つ「Apigee APIプラットフォーム」について、新機能である「Apigee APIモニタリング」「Apigeeエクステンション」「Apigeeホステッドターゲット」の正式提供を開始した。