クラウドネイティブ API Gateway は、API レベルおよびオペレーションレベルのポリシーとプラグインにより、セキュリティ、パフォーマンス、保守性を向上させます。
-
ポリシー設定の変更は、API を再公開しなくてもすぐに有効になります。
-
デフォルトでは、API レベルのプラグイン設定はオペレーションレベルに適用されます。
-
API レベルのポリシーは、オペレーションレベルでは削除できません。ただし、オペレーションレベルのポリシーは API レベルのポリシーをオーバーライドできます。
手順
-
次のいずれかの方法で API ポリシーを追加します。
インスタンス外の API
-
Cloud-native API Gateway コンソールにログインします。左側のナビゲーションペインで [APIs] を選択し、トップメニューバーでリージョンを選択します。
-
対象の API をクリックし、ドロップダウンリストから宛先インスタンスを選択します。

インスタンス内の API
-
Cloud-native API Gateway コンソールにログインします。左側のナビゲーションペインで [Instances] を選択し、トップメニューバーでリージョンを選択します。
-
[Instances] ページで、対象のゲートウェイインスタンスの ID をクリックします。左側のナビゲーションペインで [APIs] を選択し、対象の API をクリックします。
-
-
ポリシーとプラグインは、API レベルまたはオペレーションレベルで設定できます。
-
API レベル: API Policy Configuration タブをクリックして、すべての操作に対して API レベルのポリシーとプラグインを設定します。次に、Enable Policy/Plug-in をクリックします。
-
操作レベル: Operations タブで目的の操作をクリックし、[ポリシー設定] タブをクリックしてから、Enable Policy/Plug-in をクリックします。
-
-
Enable Policy/Plug-in パネルで、[ポリシー] または [プラグイン] セクションからポリシーまたはプラグインを選択して設定します。
ポリシー
スロットリングポリシー
スロットリングは、API とオペレーションごとに、指定された期間にわたって設定されたしきい値内でリクエスト量を制御します。同時実行性が高い場合に超過リクエストを拒否することで、外部リクエストがバックエンドサービスに過大な負荷をかけることを防ぎ、連鎖的な障害を回避します。
スロットリングポリシーには、同時実行制御、トラフィックシェーピング、および サーキットブレーク が含まれます。
-
同時実行制御ポリシー: ゲートウェイが処理する同時リクエストの総数を制限します。しきい値に達すると、新しいリクエストは拒否されます。バックエンドの容量に合わせてしきい値を設定してください。
-
トラフィックシェーピングポリシー: API とオペレーションの秒間クエリ数 (QPS) を監視します。QPS がしきい値を超えると、トラフィックの急増からバックエンドサービスを保護するために、新しいリクエストは拒否されます。
-
サーキットブレークポリシー: API とオペレーションのレスポンス時間またはエラー率を監視します。しきい値に達すると、サーキットブレーカーが作動し、連鎖的な障害を防ぐために設定された期間、後続のリクエストを失敗させます。タイムアウト後、ゲートウェイは限られた数のテストリクエストを許可し、バックエンドが回復したかどうかを確認します。
書き換えポリシー
書き換えポリシーは、バックエンドサービスに転送する前にリクエストパスとホストヘッダーを書き換え、リクエストを正しいエンドポイントに到達させます。
ヘッダー変更ポリシー
ヘッダー変更では、バックエンドに転送する前のリクエストヘッダー、またはクライアントに返す前のレスポンスヘッダーを変更できます。
CORS ポリシー
オリジン間リソース共有 (CORS) は、異なるオリジン (ドメイン、スキーム、またはポート) からのリソースへのアクセスを制御します。API レベルおよびオペレーションレベルで CORS ポリシーを設定し、許可されたオリジンとリクエストメソッドを指定します。
CORS ポリシーはモックサービスには適用されません。テストするには、実際のバックエンドサービスを設定する必要があります。
トラフィックレプリケーションポリシー
トラフィックレプリケーションは、シミュレーションテストや障害診断のために、ライブトラフィックの一定の割合を指定のサービスにミラーリングします。
タイムアウトポリシー
ゲートウェイがバックエンドのレスポンスを待機する最大時間を設定します。この時間内にレスポンスが受信されない場合、ゲートウェイは HTTP 504 (Gateway Timeout) エラーを返します。
リトライポリシー
失敗したリクエストに対して自動リトライを設定します。リトライ条件には、接続失敗、バックエンドサービスの利用不可、特定の HTTP ステータスコードが含まれます。
プラグイン
-
Add Plug-in タブをクリックします。
-
Quick Navigation セクションで、種類または名前で目的のプラグインを探し、そのカードをクリックします。
-
プラグインがまだインストールされていない場合は、ダイアログボックスで [Install and Configure] をクリックします。ルールを設定して有効にします。
-
プラグインがすでにインストールされている場合は、ダイアログボックスでルールを設定して有効にします。
-
-
[OK] をクリックします。API プラグインリストに戻り、新しいプラグインのステータスを確認できます。
