API Gateway の機能は以下のとおりです。
API のライフサイクル管理
- API の公開、検証、削除といったライフサイクル管理機能がサポートされています。
- API 日常的な管理、API バージョン管理、API のクイック ロールバック、がサポートされています。
包括的なセキュリティ保護
- 複数な認証方式や署名用に HMAC(SHA-1、SHA-256)アルゴリズムがサポートされています。
- HTTPS プロトコルおよび SSL 暗号化がサポートされています。
- アンチ攻撃、アンチインジェクション、アンチリプレイ、アンチ改ざんといったアクティブなメカニズムがサポートされています。
柔軟な権限管理
- ユーザーは API リクエストの ID としてアプリを使用でき、ゲートウェイはアプリベースのアクセス権限管理をサポートします。
- 許可されたアプリだけが API にリクエストを送信できます。
- API プロバイダは、アプリに API 呼び出し権限を付与することができます。
正確なスロットリング
- スロットリングを使用して、API アクセス頻度、アプリのリクエスト頻度、ユーザーリクエストの頻度を制御できます。
- スロットリングは分、時間、または日にち単位で測定できます。
- API Gateway は、スロットリングの例外もサポートしているため、個別のアプリとユーザーに対しての設定もできます。
リクエストの検証
- API Gateway は、パラメータータイプおよびパラメーター値(範囲、列挙、正規表現、および JSON スキーマ)の検証をサポートします。 API gateway は、無効なパラメータータイプやパラメータ値を即刻拒否します。 そのため、無効なリクエストに対するバックエンド リソースの無駄を最小限に抑え、バックエンド サービスの処理費用を大幅に削減します。
データ変換
- マッピングルールを設定することで、フロントエンドおよびバックエンド間のデータを変換することができます。 フロントエンドリクエストおよび返された結果は、API Gateway 経由で変換できます。
モニタリングとアラート
- API Gateway は、呼び出し量、トラフィック量、応答時間、エラー率といった、リアルタイムにグラフ化された API モニタリングを提供します。
- 履歴データの照会、全体分析を容易に行なえます。
- アラート通知をサブスクライブし、アラート方法(電子メールによる通知)を設定することで、API の運用状況をリアルタイムに通知することもできます。
自動化ツール
- API Gateway は API ドキュメントを自動生成します。
- API Gateway では、複数な言語でデモ SDK を提供することで、利用のハードルを下げ、運用管理コストの削減にも役立ちます。
- API Gateway は、視覚化デバッグツールを提供することで、迅速にテストおよびリリースできます。