翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
の生成済み CloudFormation リソース AWS SAM
このセクションでは、 が AWS テンプレート AWS SAM を処理するときに作成される CloudFormation リソースについて詳しく説明します。が AWS SAM 生成する CloudFormation リソースのセットは、指定したシナリオによって異なります。シナリオとは、テンプレートファイルで指定される AWS SAM リソースとプロパティの組み合わせのことです。テンプレートファイル内の他の部分で生成された CloudFormation リソースは、テンプレートファイルで明示的に宣言するリファレンスの参照方法と同じように参照できます。
例えば、 AWS SAM
テンプレートファイルで AWS::Serverless::Function リソースを指定すると、 AWS SAM は常に AWS::Lambda::Function ベースのリソースを生成します。オプションの AutoPublishAliasプロパティも指定すると、 は AWS SAM さらに AWS::Lambda::Aliasおよび AWS::Lambda::Versionリソースを生成します。
このセクションでは、シナリオとそれらが生成する CloudFormation リソースを一覧表示し、 AWS SAM テンプレートファイルで生成された CloudFormation リソースを参照する方法を示します。
生成された CloudFormation リソースの参照
AWS SAM テンプレートファイル内で生成された CloudFormation リソースを参照するには、 LogicalIdまたは参照可能なプロパティの 2 つのオプションがあります。
LogicalId による生成された CloudFormation リソースの参照
が AWS SAM 生成する各 CloudFormation リソースにはLogicalId、テンプレートファイル内で一意の英数字 (A~Z、a~z、0~9) 識別子である があります。 は、テンプレートファイル内の AWS SAM リソースLogicalIdsの AWS SAM を使用して、生成する CloudFormation リソースLogicalIdsの を構築します。生成された CloudFormation リソースLogicalIdの を使用して、明示的に宣言した リソースの場合と同様に CloudFormation 、テンプレートファイル内のそのリソースのプロパティにアクセスできます。 CloudFormation および AWS SAM テンプレートの詳細については、LogicalIds「 AWS CloudFormation ユーザーガイド」の「 リソース」を参照してください。
注記
生成されたリソースの LogicalIds には、名前空間の衝突を避けるための一意のハッシュ値が含まれるものがあります。これらのリソースの LogicalIds は、スタックの作成時に導出されます。スタックは AWS マネジメントコンソール、 AWS CLI、またはいずれかの AWS SDKs を使用してスタックが作成された後にのみ取得できます。ハッシュ値が変更される可能性があるため、LogicalId によるこれらのリソースの参照は推奨されません。
参照可能なプロパティによる生成された CloudFormation リソースの参照
一部の生成されたリソースについて、 はリソースの AWS SAM 参照可能なプロパティ AWS SAM を提供します。このプロパティを使用して、生成された CloudFormation リソースとそのプロパティを AWS SAM テンプレートファイル内で参照できます。
注記
生成されたすべての CloudFormation リソースに参照可能なプロパティがあるわけではありません。これらのリソースには、LogicalId を使用する必要があります。
生成された CloudFormation リソースシナリオ
次の表は、 AWS SAM リソースを生成するシナリオを構成する CloudFormation リソースとプロパティをまとめたものです。シナリオ列のトピックには、そのシナリオで が AWS SAM 生成する追加の CloudFormation リソースに関する詳細が記載されています。
| AWS SAM リソース | 基本 CloudFormation リソース | シナリオ |
|---|---|---|
AWS::Serverless::Api
|
AWS::ApiGateway::RestApi |
|
AWS::Serverless::Application
|
AWS::CloudFormation::Stack |
|
AWS::Serverless::CapacityProvider
|
AWS::Lambda::CapacityProvider |
|
AWS::Serverless::Function |
AWS::Lambda::Function |
|
AWS::Serverless::HttpApi |
AWS::ApiGatewayV2::Api |
|
AWS::Serverless::LayerVersion
|
AWS::Lambda::LayerVersion |
|
AWS::Serverless::SimpleTable
|
AWS::DynamoDB::Table |
|
AWS::Serverless::StateMachine
|
AWS::StepFunctions::StateMachine |
トピック
CloudFormationAWS::Serverless::Applicationが指定されているときに生成される リソース
CloudFormationAWS::Serverless::CapacityProviderが指定されているときに生成される リソース
CloudFormation を指定したときに生成される リソース AWS::Serverless::Connector
CloudFormationAWS::Serverless::Functionが指定されているときに生成される リソース
CloudFormationAWS::Serverless::GraphQLApiが指定されているときに生成される リソース
CloudFormation AWS::Serverless::HttpApi が指定されているときに生成される リソース
CloudFormationAWS::Serverless::LayerVersionが指定されているときに生成される リソース
CloudFormationAWS::Serverless::SimpleTableが指定されているときに生成される リソース
CloudFormationAWS::Serverless::StateMachineが指定されているときに生成される リソース