API Gateway で API キーソースを選択する - Amazon API Gateway

API Gateway で API キーソースを選択する

使用量プランを API と関連付けて API メソッドで API キーを有効にする場合、API への各受信リクエストには API キーが含まれている必要があります。API Gateway はキーを読み取り、使用量プランのキーと照合します。一致する場合、API Gateway は、プランのリクエスト制限とクォータに従ってリクエストを調整します。それ以外の場合は、InvalidKeyParameter 例外がスローされます。その結果、発信者は 403 Forbidden レスポンスを受け取ります。

API Gateway は 2 つのソースのいずれかから API キーを受け取ることができます。

HEADER

API キーを顧客に配布して、各受信リクエストの X-API-Key ヘッダーとして API キーを渡す必要があります。

AUTHORIZER

この認可レスポンスの一部として API キーを返す Lambda オーソライザーを使用することができます。認可レスポンスの詳細については、「API Gateway Lambda オーソライザーからの出力」を参照してください。

注記

考慮すべきベストプラクティスについては、「API キーと使用量プランのベストプラクティス」を参照してください。

API Gateway コンソールを使用して API の API キーソースを選択するには、次の作業を行います。
  1. [API Gateway コンソール] にサインインします。

  2. 既存の API を選択するか、新しい API を作成します。

  3. メインナビゲーションペインで、[API キー] を選択します。

  4. [API の詳細] セクションで [編集] を選択します。

  5. API キーソースで、ドロップダウンリストから Header または Authorizer を選択します。

  6. [Save changes] (変更の保存) をクリックします。

次の update-rest-api コマンドは、API キーソースを AUTHORIZER に設定するように API を更新します。

aws apigateway update-rest-api --rest-api-id 1234123412 --patch-operations op=replace,path=/apiKeySource,value=AUTHORIZER

クライアントが API キーを送信するように指定するには、前のコマンドで valueHEADER に設定します。

API Gateway REST API を使用して API の API キーのソースを選択するには、次のように restapi:update を呼び出します。

PATCH /restapis/fugvjdxtri/ HTTP/1.1 Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com X-Amz-Date: 20160603T205348Z Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}/20160603/us-east-1/apigateway/aws4_request, SignedHeaders=content-length;content-type;host;x-amz-date, Signature={sig4_hash} { "patchOperations" : [ { "op" : "replace", "path" : "/apiKeySource", "value" : "HEADER" } ] }

オーソライザーに API キーを戻すには、前の value 入力で AUTHORIZERpatchOperations に設定します。