

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

# 从现有 EventBridge 的事件总线生成 Amazon CloudFormation 模板
<a name="eb-generate-event-bus-template"></a>

Amazon CloudFormation 通过将基础设施视为代码，使您能够以集中且可重复的方式跨账户和区域配置和管理您的 Amazon 资源。 CloudFormation 通过允许您创建*模板来实现此目的，模板*定义了您要配置和管理的资源。

EventBridge 允许您从账户中的现有事件总线生成模板，以帮助您快速开始开发 CloudFormation 模板。此外，还 EventBridge 提供了在模板中包含与该事件总线关联的规则的选项。然后，您可以使用这些模板作为[创建 CloudFormation 管理资源堆栈](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html)的基础。

有关更多信息， CloudFormation 请参阅[*《 Amazon CloudFormation 用户指南》*。](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/Welcome.html)

**注意**  
EventBridge 不在生成的模板中包含[托管规则](eb-rules.md#eb-rules-managed)。

您也可以[根据所选事件总线中包含的一条或多条规则生成模板](https://docs.amazonaws.cn/eventbridge/latest/userguide/rule-create-template.html)。

**从事件总线生成 CloudFormation 模板**

1. 打开亚马逊 EventBridge 控制台，网址为[https://console.aws.amazon.com/events/](https://console.amazonaws.cn/events/)。

1. 在导航窗格中，选择**事件总线**。

1. 选择要从中生成 CloudFormation 模板的事件总线。

1. 从 “**操作**” 菜单中选择 “**CloudFormation 模板**”，然后选择 EventBridge 要生成模板的格式：**JSON** 或 **YAML**。

   EventBridge 显示以选定格式生成的模板。默认情况下，与该事件总线关联的所有规则都包含在模板中。

   1. 要生成不包含规则的模板，请取消选择 “**在此 EventBus模板上包含规则**”。

1. EventBridge 允许您选择下载模板文件或将模板复制到剪贴板。
   + 选择**下载**，下载模板文件。
   + 要将此模板复制到剪贴板，请选择**复制**。

1. 要退出模板，请选择**取消**。

根据用例的需要自定义 Amazon CloudFormation 模板后，即可使用它在中[ CloudFormation创建堆栈](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html)。

## 使用亚马逊生成的 CloudFormation 模板时的注意事项 EventBridge
<a name="eb-generate-event-bus-template-considerations"></a>

使用从事件总线生成的 CloudFormation 模板时，请考虑以下因素：
+ EventBridge 在生成模板中不包含任何密码。

  您可以编辑此模板，以包含[模板参数](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/parameters-section-structure.html)，使用户能够在使用模板创建或更新 CloudFormation 堆栈时指定密码或其他敏感信息。

  此外，用户可以使用 Secrets Manager 在所需区域创建密钥，然后编辑生成的模板以使用[动态参数](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/dynamic-references.html#dynamic-references-secretsmanager)。
+ 生成的模板中的目标，与原始事件总线中指定的目标完全相同。如果在使用模板在其他区域创建堆栈之前，未对模板进行适当的编辑，可能会导致跨区域问题。

  此外，生成的模板不会自动创建下游目标。