翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS::Serverless::Function が指定された場合、生成される CloudFormation リソース
AWS::Serverless::Function が指定されている場合、AWS Serverless Application Model (AWS SAM) は常に AWS::Lambda::Function のベース CloudFormation リソースを生成します。
AWS::Lambda::Function-
LogicalId:<function‑LogicalId>参照可能なプロパティ: なし (この CloudFormation リソースを参照するには、
LogicalIdを使用する必要があります)
AWS::Serverless::Function が指定されている場合、AWS SAM はこの CloudFormation リソースに加えて、以下のシナリオに対する CloudFormation リソースも生成します。
コア関数のプロパティ
次のシナリオでは、コア関数のプロパティに基づいて CloudFormation リソースを生成します。
Role プロパティが指定されていない
AWS::Serverless::Function の Role プロパティが指定されていない場合、AWS SAM は AWS::IAM::Role CloudFormation リソースを生成します。
AWS::IAM::Role-
LogicalId:<function‑LogicalId>Role参照可能なプロパティ: なし (この CloudFormation リソースを参照するには、
LogicalIdを使用する必要があります)
AutoPublishAlias プロパティが指定されている
AWS::Serverless::Function の AutoPublishAlias プロパティが指定されている場合、AWS SAM は AWS::Lambda::Alias と AWS::Lambda::Version の CloudFormation リソースを生成します。
AWS::Lambda::Alias-
LogicalId:<function‑LogicalId>Alias<alias‑name>は、<alias‑name>AutoPublishAliasが設定されている文字列です。例えば、AutoPublishAliasをliveに設定すると、LogicalIdはMyFunctionAliasliveになります。参照可能なプロパティ:
<function‑LogicalId>.Alias AWS::Lambda::Version-
LogicalId:<function‑LogicalId>Version<sha>は、スタックが作成されるときに生成される一意のハッシュ値です。例えば、<sha>MyFunctionVersion926eeb5ff1などです。参照可能なプロパティ:
<function‑LogicalId>.Version
AutoPublishAlias プロパティの詳細については、AWS::Serverless::Function のプロパティセクションを参照してください。
DeploymentPreference プロパティが指定されている
AWS::Serverless::Function の DeploymentPreference プロパティが指定されている場合、AWS SAM は AWS::CodeDeploy::Application および AWS::CodeDeploy::DeploymentGroup の CloudFormation リソースを生成します。さらに、DeploymentPreference オブジェクトの Role プロパティが指定されていない場合、AWS SAM は AWS::IAM::Role CloudFormation リソースも生成します。
AWS::CodeDeploy::Application-
LogicalId:ServerlessDeploymentApplication参照可能なプロパティ: なし (この CloudFormation リソースを参照するには、
LogicalIdを使用する必要があります)
AWS::CodeDeploy::DeploymentGroup-
LogicalId:<function‑LogicalId>DeploymentGroup参照可能なプロパティ: なし (この CloudFormation リソースを参照するには、
LogicalIdを使用する必要があります) AWS::IAM::Role-
LogicalId:CodeDeployServiceRole参照可能なプロパティ: なし (この CloudFormation リソースを参照するには、
LogicalIdを使用する必要があります)
FunctionUrlConfig プロパティが指定されている
FunctionUrlConfig プロパティが指定されている場合、AWS SAM は AuthType に基づいて異なる CloudFormation リソースを生成します。
AuthType: NONE が指定されている場合、AWS SAM は以下の CloudFormation リソースを生成します。
AWS::Lambda::Permission(アクセスを呼び出す)-
LogicalId:<function‑LogicalId>URLInvokeAllowPublicAccess参照可能なプロパティ: なし (この CloudFormation リソースを参照するには、
LogicalIdを使用する必要があります) AWS::Lambda::Permission(パブリックアクセス)-
LogicalId:<function‑LogicalId>UrlPublicPermissions参照可能なプロパティ: なし (この CloudFormation リソースを参照するには、
LogicalIdを使用する必要があります) AWS::Lambda::Url-
LogicalId:<function‑LogicalId>Url参照可能なプロパティ: なし (この CloudFormation リソースを参照するには、
LogicalIdを使用する必要があります)
AuthType: AWS_IAM を指定すると、AWS SAM は以下のみを生成します。
AWS::Lambda::Url-
LogicalId:<function‑LogicalId>Url参照可能なプロパティ: なし (この CloudFormation リソースを参照するには、
LogicalIdを使用する必要があります)
FunctionUrlConfig プロパティの詳細については、「FunctionUrlConfig」を参照してください。
イベントソース
次のシナリオでは、イベントソースに基づいて CloudFormation リソースを生成します。
Api イベントソースが指定されている
AWS::Serverless::Function の Event プロパティが Api に設定されているが、RestApiId プロパティは指定されていないという場合、AWS SAM は AWS::ApiGateway::RestApi CloudFormation リソースを生成します。
AWS::ApiGateway::RestApi-
LogicalId:ServerlessRestApi参照可能なプロパティ: なし (この CloudFormation リソースを参照するには、
LogicalIdを使用する必要があります)
HttpApi イベントソースが指定されている
AWS::Serverless::Function の Event プロパティが HttpApi に設定されているが、ApiId プロパティは指定されていないという場合、AWS SAM は AWS::ApiGatewayV2::Api CloudFormation リソースを生成します。
AWS::ApiGatewayV2::Api-
LogicalId:ServerlessHttpApi参照可能なプロパティ: なし (この CloudFormation リソースを参照するには、
LogicalIdを使用する必要があります)
ストリーミングイベントソースが指定されている
AWS::Serverless::Function の Event プロパティがストリーミングタイプのいずれかに設定されている場合、AWS SAM は AWS::Lambda::EventSourceMapping CloudFormation リソースを生成します。これは、DynamoDB、Kinesis、MQ、MSK、および SQS の各タイプに適用されます。
AWS::Lambda::EventSourceMapping-
LogicalId:<function‑LogicalId><event‑LogicalId>参照可能なプロパティ: なし (この CloudFormation リソースを参照するには、
LogicalIdを使用する必要があります)
イベントブリッジ (またはイベントバス) イベントソースが指定されている
AWS::Serverless::Function の Event プロパティがイベントブリッジ (またはイベントバス) タイプのいずれかに設定されている場合、AWS SAM は AWS::Events::Rule CloudFormation リソースを生成します。これは、EventBridgeRule、Schedule、および CloudWatchEvents の各タイプに適用されます。
AWS::Events::Rule-
LogicalId:<function‑LogicalId><event‑LogicalId>参照可能なプロパティ: なし (この CloudFormation リソースを参照するには、
LogicalIdを使用する必要があります)
IotRule イベントソースが指定されている
AWS::Serverless::Function の Event プロパティが IoTRule に設定されている場合、AWS SAM は AWS::IoT::TopicRule CloudFormation リソースを生成します。
AWS::IoT::TopicRule-
LogicalId:<function‑LogicalId><event‑LogicalId>参照可能なプロパティ: なし (この CloudFormation リソースを参照するには、
LogicalIdを使用する必要があります)
イベント設定
次のシナリオでは、イベント設定に基づいて CloudFormation リソースを生成します。
Amazon SNS イベントに対して OnSuccess (または OnFailure) プロパティが指定されている
AWS::Serverless::Function の EventInvokeConfig プロパティの DestinationConfig プロパティの OnSuccess (または OnFailure) プロパティが指定されており、送信先タイプが SNS になっているが、送信先 ARN は指定されていないという場合、AWS SAM は AWS::Lambda::EventInvokeConfig および AWS::SNS::Topic の CloudFormation リソースを生成します。
AWS::Lambda::EventInvokeConfig-
LogicalId:<function‑LogicalId>EventInvokeConfig参照可能なプロパティ: なし (この CloudFormation リソースを参照するには、
LogicalIdを使用する必要があります) AWS::SNS::Topic-
LogicalId:(または<function‑LogicalId>OnSuccessTopic)<function‑LogicalId>OnFailureTopic参照可能なプロパティ:
<function‑LogicalId>.DestinationTopicOnSuccessとOnFailureの両方が Amazon SNS イベントに指定されている場合、生成されたリソースを区別するにはLogicalIdを使用する必要があります。
Amazon SQS イベントに対して OnSuccess (または OnFailure) プロパティが指定されている
AWS::Serverless::Function の EventInvokeConfig プロパティの DestinationConfig プロパティの OnSuccess (または OnFailure) プロパティが指定されており、送信先タイプが SQS になっているが、送信先 ARN は指定されていないという場合、AWS SAM は AWS::Lambda::EventInvokeConfig および AWS::SQS::Queue の CloudFormation リソースを生成します。
AWS::Lambda::EventInvokeConfig-
LogicalId:<function‑LogicalId>EventInvokeConfig参照可能なプロパティ: なし (この CloudFormation リソースを参照するには、
LogicalIdを使用する必要があります) AWS::SQS::Queue-
LogicalId(または<function‑LogicalId>OnSuccessQueue):<function‑LogicalId>OnFailureQueue参照可能なプロパティ:
<function‑LogicalId>.DestinationQueueOnSuccessとOnFailureの両方が Amazon SQS イベントに指定されている場合、生成されたリソースを区別するにはLogicalIdを使用する必要があります。