メニュー
AWS CloudFormation
ユーザーガイド (API Version 2010-05-15)

AWS::ApiGateway::ApiKey

AWS::ApiGateway::ApiKey リソースは、API キーを必要とする Amazon API Gateway (API Gateway) Method リソースを実行しているクライアントに配信できる固有キーを作成します。クライアントがどの API キーを使用するべきかを指定するには、キーを必要とするメソッドを含む RestApi および Stage リソースに API キーをマッピングします。

構文

AWS CloudFormation テンプレートでこのエンティティを宣言するには、次の構文を使用します。

JSON

{ "Type" : "AWS::ApiGateway::ApiKey", "Properties" : { "CustomerId" : String, "Description" : String, "Enabled" : Boolean, "GenerateDistinctId" : Boolean, "Name" : String, "StageKeys" : [ StageKey, ... ] } }

YAML

Type: "AWS::ApiGateway::ApiKey" Properties: CustomerId: String Description: String Enabled: Boolean GenerateDistinctId: Boolean Name: String StageKeys: - StageKey - ...

プロパティ

CustomerId

AWS SaaS Marketplace との統合時に使用する AWS Marketplace 顧客 ID。

必須: いいえ

タイプ: 文字列

更新に伴う要件: 中断はありません。

Description

API キーの説明。

Required: No

Type: String

更新に伴う要件: 中断はありません。

Enabled

API キーがクライアントで使用できるかどうかを示します。

Required: No

Type: Boolean

更新に伴う要件: 中断はありません。

GenerateDistinctId

キー識別子が作成された API キーの値と異なるかどうかを指定します。

必須: いいえ

タイプ: ブール値

更新に伴う要件: 置換。

Name

API キーの名前。名前を指定しない場合、AWS CloudFormation は一意の物理 ID を生成し、その ID を API キー名として使用します。詳細については、「Name タイプ」を参照してください。

重要

名前を指定すると、このリソースの置換が必要な更新はできません。中断が不要であるか、一定の中断が必要な更新であれば、行うことができます。リソースを置き換える必要がある場合は、新しい名前を指定します。

Required: No

Type: String

更新に伴う要件: 置換

StageKeys

この API キーに関連付けられるステージのリスト。

Required: No

Amazon API Gateway ApiKey StageKey プロパティタイプの Type: リスト

更新に伴う要件: 中断はありません。

戻り値

参照番号

このリソースの論理 ID が Ref 組み込み関数に提供されると、Ref からは API キー ID (m2m1k7sybf など) が返されます。

Ref 関数の使用方法の詳細については、「Ref」を参照してください。

次の例では、API キーを作成し、TestAPIDeployment デプロイメントの Test ステージに関連付けます。API キーの前に AWS CloudFormation によってステージとデプロイメントが作成されるように (同じテンプレート内のどこかで宣言します)、例ではデプロイメントとステージに対する依存関係の明示を追加しています。この依存関係がないと、AWS CloudFormation で先に API キーが作成され、デプロイメントとステージが存在しないために関連付けに失敗する可能性があります。

JSON

"ApiKey": { "Type": "AWS::ApiGateway::ApiKey", "DependsOn": ["TestAPIDeployment", "Test"], "Properties": { "Name": "TestApiKey", "Description": "CloudFormation API Key V1", "Enabled": "true", "StageKeys": [{ "RestApiId": { "Ref": "RestApi" }, "StageName": "Test" }] } }

YAML

ApiKey: Type: "AWS::ApiGateway::ApiKey" DependsOn: - "TestAPIDeployment" - "Test" Properties: Name: "TestApiKey" Description: "CloudFormation API Key V1" Enabled: "true" StageKeys: - RestApiId: Ref: "RestApi" StageName: "Test"

次の例では、API キーを作成し、顧客 ID と、個別の ID を作成するかどうかを指定できるようにします。

JSON

{ "Parameters": { "apiKeyName": { "Type": "String" }, "customerId": { "Type": "String" }, "generateDistinctId": { "Type": "String" } }, "Resources": { "ApiKey": { "Type": "AWS::ApiGateway::ApiKey", "Properties": { "CustomerId": { "Ref": "customerId" }, "GenerateDistinctId": { "Ref": "generateDistinctId" }, "Name": { "Ref": "apiKeyName" } } } } }

YAML

Parameters: apiKeyName: Type: String customerId: Type: String generateDistinctId: Type: String Resources: ApiKey: Type: AWS::ApiGateway::ApiKey Properties: CustomerId: !Ref customerId GenerateDistinctId: !Ref generateDistinctId Name: !Ref apiKeyName

以下の資料も参照してください。

  • Amazon API Gateway REST API リファレンス』の apikey:create オペレーション