

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

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

本节详细介绍了在 AWS SAM 处理 AWS 模板时创建的 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
<a name="sam-specification-generated-resources-referencing"></a>

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

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

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

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

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

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

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

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

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


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

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