

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 生成的 Amazon CloudFormation 资源用于 Amazon SAM
<a name="sam-specification-generated-resources"></a>

本节详细介绍了在 Amazon SAM 处理 Amazon 模板时创建的 Amazon CloudFormation 资源。根据您指定的方案， Amazon SAM 生成的 Amazon CloudFormation 资源集会有所不同。*场景*是在模板文件中指定的 Amazon SAM 资源和属性的组合。您可以在模板文件中的其他位置引用生成的 Amazon CloudFormation 资源，类似于引用在模板文件中明确声明的资源。

例如，如果您在 Amazon SAM 模板文件中指定了 `AWS::Serverless::Function` 资源，则 Amazon SAM 总是会生成 `AWS::Lambda::Function` 基本资源。如果您还指定了可选`AutoPublishAlias`属性，则 Amazon SAM 还会生成`AWS::Lambda::Alias`和`AWS::Lambda::Version`资源。

本节列出了场景及其生成的 Amazon CloudFormation 资源，并说明如何在 Amazon SAM 模板文件中引用生成的 Amazon CloudFormation 资源。

## 引用生成的资源 Amazon CloudFormation
<a name="sam-specification-generated-resources-referencing"></a>

您可以通过`LogicalId`或按可引用属性在 Amazon SAM 模板文件中引用生成的 Amazon CloudFormation 资源。

### 通过以下方式引用生成的 Amazon CloudFormation 资源 LogicalId
<a name="sam-specification-generated-resources-referencing-logicalid"></a>

 Amazon SAM 生成每个 Amazon CloudFormation 资源的资源都有一个字母数字（A-Z `[LogicalId](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/resources-section-structure.html#resources-section-structure-logicalid)`、a-z、0-9）标识符，在模板文件中是唯一的。 Amazon SAM 使用模板文件`LogicalIds`中的 Amazon SAM 资源来构造它生成的 Amazon CloudFormation 资源。`LogicalIds`您可以使用生成的 Amazon CloudFormation 资源在`LogicalId`模板文件中访问该资源的属性，就像访问已明确声明的 Amazon CloudFormation 资源一样。有关 Amazon CloudFormation 和 Amazon SAM 模板`LogicalIds`的更多信息，请参阅《*Amazon CloudFormation 用户指南*》中的[资源](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/resources-section-structure.html)。

**注意**  
某些生成的资源的 `LogicalIds` 包含唯一哈希值，以避免命名空间冲突。这些资源的 `LogicalIds` 是在创建堆栈时派生的。只有在创建堆栈之后，您才能使用 Amazon Web Services 管理控制台 Amazon CLI、或其中一个来检索它们 Amazon SDKs。我们不建议通过 `LogicalId` 引用这些资源，因为哈希值可能会发生变化。

### 通过可引用属性引用生成的 Amazon CloudFormation 资源
<a name="sam-specification-generated-resources-referencing-referenceable-property"></a>

对于某些生成的资源， Amazon SAM 提供该资源的可引用属性。 Amazon SAM 您可以使用此属性在 Amazon SAM 模板文件中引用生成的 Amazon CloudFormation 资源及其属性。

**注意**  
并非所有生成的 Amazon CloudFormation 资源都具有可引用的属性。对于这些资源，必须使用 `LogicalId`。

## 生成的 Amazon CloudFormation 资源场景
<a name="sam-specification-generated-resources-scenarios"></a>

下表汇总了构成生成 Amazon SAM 资源的场景的 Amazon CloudFormation 资源和属性。**场景**列中的主题提供了有关为该场景 Amazon SAM 生成的其他 Amazon CloudFormation 资源的详细信息。


| Amazon SAM 资源 | 基础 Amazon CloudFormation 资源 | 场景 | 
| --- | --- | --- | 
| AWS::Serverless::Api  | [https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) |  [\[See the AWS documentation website for more details\]](http://docs.amazonaws.cn/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html)  | 
| AWS::Serverless::Application  | [https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html) |  [\[See the AWS documentation website for more details\]](http://docs.amazonaws.cn/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html)  | 
| AWS::Serverless::CapacityProvider  | [https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html) |  [\[See the AWS documentation website for more details\]](http://docs.amazonaws.cn/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html)  | 
| AWS::Serverless::Function | [https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html) |  [\[See the AWS documentation website for more details\]](http://docs.amazonaws.cn/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html)  | 
| AWS::Serverless::HttpApi | [AWS::ApiGatewayV2::Api](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html) |  [\[See the AWS documentation website for more details\]](http://docs.amazonaws.cn/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html)  | 
| AWS::Serverless::LayerVersion  | [https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html) |  [\[See the AWS documentation website for more details\]](http://docs.amazonaws.cn/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html)  | 
| AWS::Serverless::SimpleTable  | [AWS::DynamoDB::Table](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html) |  [\[See the AWS documentation website for more details\]](http://docs.amazonaws.cn/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html)  | 
| AWS::Serverless::StateMachine  | [https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html) |  [\[See the AWS documentation website for more details\]](http://docs.amazonaws.cn/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html)  | 

**Topics**
+ [引用生成的资源 Amazon CloudFormation](#sam-specification-generated-resources-referencing)
+ [生成的 Amazon CloudFormation 资源场景](#sam-specification-generated-resources-scenarios)
+ [Amazon CloudFormation 指定时AWS::Serverless::Api生成的资源](sam-specification-generated-resources-api.md)
+ [Amazon CloudFormation 指定时AWS::Serverless::Application生成的资源](sam-specification-generated-resources-application.md)
+ [Amazon CloudFormation 指定时AWS::Serverless::CapacityProvider生成的资源](sam-specification-generated-resources-capacityprovider.md)
+ [Amazon CloudFormation 指定时生成的资源 AWS::Serverless::Connector](sam-specification-generated-resources-connector.md)
+ [Amazon CloudFormation 指定时AWS::Serverless::Function生成的资源](sam-specification-generated-resources-function.md)
+ [Amazon CloudFormation 指定时AWS::Serverless::GraphQLApi生成的资源](sam-specification-generated-resources-graphqlapi.md)
+ [Amazon CloudFormation 指定时 AWS::Serverless::HttpApi 生成的资源](sam-specification-generated-resources-httpapi.md)
+ [Amazon CloudFormation 指定时AWS::Serverless::LayerVersion生成的资源](sam-specification-generated-resources-layerversion.md)
+ [Amazon CloudFormation 指定时AWS::Serverless::SimpleTable生成的资源](sam-specification-generated-resources-simpletable.md)
+ [Amazon CloudFormation 指定时AWS::Serverless::StateMachine生成的资源](sam-specification-generated-resources-statemachine.md)