の生成 AWS CloudFormation リソース AWS SAM - AWS Serverless Application Model

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

の生成 AWS CloudFormation リソース AWS SAM

このセクションでは、 が AWS テンプレート AWS SAM を処理するときに作成される AWS CloudFormation リソースの詳細について説明します。が AWS SAM 生成する AWS CloudFormation リソースのセットは、指定したシナリオによって異なります。シナリオとは、テンプレートファイルで指定される AWS SAM リソースとプロパティの組み合わせのことです。テンプレートファイル内の他の部分で生成された AWS CloudFormation リソースは、テンプレートファイルで明示的に宣言するリファレンスの参照方法と同じように参照できます。

例えば、 AWS SAM テンプレートファイルで AWS::Serverless::Function リソースを指定すると、 AWS SAM は常に AWS::Lambda::Function ベースのリソースを生成します。オプションの AutoPublishAliasプロパティも指定した場合、 は AWS SAM さらに AWS::Lambda::Aliasおよび AWS::Lambda::Versionリソースを生成します。

このセクションでは、シナリオとそれらが生成する AWS CloudFormation リソースを一覧表示し、 AWS SAM テンプレートファイルで生成された AWS CloudFormation リソースを参照する方法を示します。

生成された AWS CloudFormation リソースの参照

テンプレート AWS SAM ファイル内で生成された AWS CloudFormation リソースを参照するには、 LogicalIdまたは参照可能なプロパティの 2 つのオプションがあります。

で生成された AWS CloudFormation リソースを参照する LogicalId

AWS SAM が生成する各 AWS CloudFormation リソースにはLogicalId、テンプレートファイル内で一意の英数字 (A~Z、a~z、0~9) 識別子である があります。 は、テンプレートファイル内の AWS SAM リソースLogicalIdsの AWS SAM を使用して、生成される AWS CloudFormation リソースLogicalIdsの を構築します。生成された AWS CloudFormation リソースLogicalIdの を使用して、明示的に宣言した リソースの場合と同様に AWS CloudFormation 、テンプレートファイル内のそのリソースのプロパティにアクセスできます。 AWS CloudFormation および AWS SAM テンプレートLogicalIdsの の詳細については、 ユーザーガイドの「 リソースAWS CloudFormation 」を参照してください。

注記

生成されたリソースの LogicalIds には、名前空間の衝突を避けるための一意のハッシュ値が含まれるものがあります。これらのリソースの LogicalIds は、スタックの作成時に導出されます。スタックが作成された後にのみ AWS Management Console、 AWS CLI、または のいずれかを使用して取得できます AWS SDKs。ハッシュ値が変更される可能性があるため、LogicalId によるこれらのリソースの参照は推奨されません。

参照可能なプロパティによる生成された AWS CloudFormation リソースの参照

生成された一部のリソースについて、 はリソースの AWS SAM 参照可能なプロパティ AWS SAM を提供します。このプロパティを使用して、生成された AWS CloudFormation リソースとその AWS SAM テンプレートファイル内のプロパティを参照できます。

注記

生成されたすべての AWS CloudFormation リソースに参照可能なプロパティがあるわけではありません。これらのリソースには、LogicalId を使用する必要があります。

生成された AWS CloudFormation リソースシナリオ

次の表は、 AWS SAM リソースを生成するシナリオを構成する AWS CloudFormation リソースとプロパティをまとめたものです。シナリオ列のトピックには、そのシナリオに対して が生成する AWS SAM 追加の AWS CloudFormation リソースに関する詳細が記載されています。

AWS SAM リソース ベース AWS CloudFormation リソース シナリオ
AWS::Serverless::Api AWS::ApiGateway::RestApi
AWS::Serverless::Application AWS::CloudFormation::Stack
  • ベース AWS CloudFormation リソースを生成する以外に、このサーバーレスリソースには追加のシナリオはありません。

AWS::Serverless::Function AWS::Lambda::Function
AWS::Serverless::HttpApi AWS::ApiGatewayV2::Api
AWS::Serverless::LayerVersion AWS::Lambda::LayerVersion
  • ベース AWS CloudFormation リソースを生成する以外に、このサーバーレスリソースには追加のシナリオはありません。

AWS::Serverless::SimpleTable AWS::DynamoDB::Table
  • ベース AWS CloudFormation リソースを生成する以外に、このサーバーレスリソースには追加のシナリオはありません。

AWS::Serverless::StateMachine AWS::StepFunctions::StateMachine