

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# CloudFormation AWS::Serverless::WebSocketApi が指定されているときに生成される リソース
<a name="sam-specification-generated-resources-websocketapi"></a>

`AWS::Serverless::WebSocketApi` を指定すると、 AWS Serverless Application Model (AWS SAM) は `AWS::ApiGatewayV2::Api` ベース CloudFormation リソースを生成します。さらに、常に `AWS::ApiGatewayV2::Stage`リソースを生成し、 `Routes`プロパティで定義されたルートごとに、、`AWS::ApiGatewayV2::Integration`、および `AWS::ApiGatewayV2::Route``AWS::Lambda::Permission`リソース AWS SAM を生成します。

**`AWS::ApiGatewayV2::Api`**  
*`LogicalId`: *`{{<websocketapi‑LogicalId>}}`  
*参照可能なプロパティ: *該当なし (この CloudFormation リソースを参照`LogicalId`するには を使用する必要があります)

**`AWS::ApiGatewayV2::Stage`**  
*`LogicalId`: *`{{<websocketapi‑LogicalId>}}{{<stage‑name>}}Stage`  
`{{<stage‑name>}}` は、`StageName` プロパティが設定されている文字列です。が指定され`StageName`ていない場合、デフォルト値は です`default`。例えば、`StageName` を `prod` に設定とすると、`LogicalId` が `{{MyWebSocketApi}}prodStage` になります。  
*参照可能なプロパティ: *`{{<websocketapi‑LogicalId>}}.Stage`

**`AWS::ApiGatewayV2::Route`**  
*`LogicalId`: *`{{<websocketapi‑LogicalId>}}{{<normalized‑route‑key>}}Route`  
`{{<normalized‑route‑key>}}` は、特殊文字が削除されたルートキーです。たとえば、ルートキー の場合`$connect`、 `LogicalId`は です`{{MyWebSocketApi}}connectRoute`。  
*参照可能なプロパティ: *該当なし (この CloudFormation リソースを参照`LogicalId`するには を使用する必要があります)

**`AWS::ApiGatewayV2::Integration`**  
*`LogicalId`: *`{{<websocketapi‑LogicalId>}}{{<normalized‑route‑key>}}Integration`  
*参照可能なプロパティ: *該当なし (この CloudFormation リソースを参照`LogicalId`するには を使用する必要があります)

**`AWS::Lambda::Permission`**  
*`LogicalId`: *`{{<websocketapi‑LogicalId>}}{{<normalized‑route‑key>}}Permission`  
*参照可能なプロパティ: *該当なし (この CloudFormation リソースを参照`LogicalId`するには を使用する必要があります)

これらの CloudFormation リソースに加えて、 を指定すると、 `AWS::Serverless::WebSocketApi`は次のシナリオの CloudFormation リソース AWS SAM も生成します。

**Topics**
+ [Auth プロパティは AuthType を CUSTOM に設定して指定します](#sam-specification-generated-resources-websocketapi-auth)
+ [DomainName プロパティが指定されている](#sam-specification-generated-resources-websocketapi-domain-name)
+ [BasePath プロパティが指定されています](#sam-specification-generated-resources-websocketapi-basepath)
+ [Route53 プロパティが指定されています](#sam-specification-generated-resources-websocketapi-route53)

## Auth プロパティは AuthType を CUSTOM に設定して指定します
<a name="sam-specification-generated-resources-websocketapi-auth"></a>

の `Auth`プロパティ`AWS::Serverless::WebSocketApi`を `AuthType`に設定して指定すると`CUSTOM`、 は `AWS::ApiGatewayV2::Authorizer` CloudFormation リソース AWS SAM を生成します。が指定されていない場合、 `InvokeRole`は API Gateway がオーソライザー関数を呼び出すことを許可する `AWS::Lambda::Permission`リソース AWS SAM も生成します。

**`AWS::ApiGatewayV2::Authorizer`**  
*`LogicalId`: *`{{<websocketapi‑LogicalId>}}Authorizer`  
*参照可能なプロパティ: *該当なし (この CloudFormation リソースを参照`LogicalId`するには を使用する必要があります)

**`AWS::Lambda::Permission` ( `InvokeRole`が指定されていない場合)**  
*`LogicalId`: *`{{<websocketapi‑LogicalId>}}AuthorizerPermission`  
*参照可能なプロパティ: *該当なし (この CloudFormation リソースを参照`LogicalId`するには を使用する必要があります)

## DomainName プロパティが指定されている
<a name="sam-specification-generated-resources-websocketapi-domain-name"></a>

の `DomainName`プロパティの `Domain`プロパティを指定すると、 `AWS::Serverless::WebSocketApi`は `AWS::ApiGatewayV2::DomainName` CloudFormation リソース AWS SAM を生成します。

**`AWS::ApiGatewayV2::DomainName`**  
*`LogicalId`: *`ApiGatewayDomainNameV2{{<sha>}}`  
`{{<sha>}}` は、スタックが作成されるときに生成される一意のハッシュ値です。例: `ApiGatewayDomainNameV2{{926eeb5ff1}}`。  
*参照可能なプロパティ: *該当なし (この CloudFormation リソースを参照`LogicalId`するには を使用する必要があります)

## BasePath プロパティが指定されています
<a name="sam-specification-generated-resources-websocketapi-basepath"></a>

の `BasePath`プロパティの `Domain` プロパティを指定すると、 `AWS::Serverless::WebSocketApi`は指定されたベースパスごとに 1 つずつ`AWS::ApiGatewayV2::ApiMapping` CloudFormation リソース AWS SAM を生成します。

**`AWS::ApiGatewayV2::ApiMapping`**  
*`LogicalId`: *`{{<websocketapi‑LogicalId>}}{{<basepath>}}ApiMapping`  
`{{<basepath>}}` は基本パス値です。たとえば、ベースパス`v1`として を指定した場合、 `LogicalId`は です`{{MyWebSocketApi}}v1ApiMapping`。  
*参照可能なプロパティ: *該当なし (この CloudFormation リソースを参照`LogicalId`するには を使用する必要があります)

## Route53 プロパティが指定されています
<a name="sam-specification-generated-resources-websocketapi-route53"></a>

の `Route53`プロパティの `Domain`プロパティを指定すると、 `AWS::Serverless::WebSocketApi`は `AWS::Route53::RecordSetGroup` CloudFormation リソース AWS SAM を生成します。

**`AWS::Route53::RecordSetGroup`**  
*`LogicalId`: *`RecordSetGroup{{<sha>}}`  
`{{<sha>}}` は、スタックが作成されるときに生成される一意のハッシュ値です。例: `RecordSetGroup{{926eeb5ff1}}`。  
*参照可能なプロパティ: *該当なし (この CloudFormation リソースを参照`LogicalId`するには を使用する必要があります)