

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

# 为 Firehose 传输流订阅 Amazon SNS 主题
<a name="firehose-example-subscribe-delivery-stream-to-topic"></a>

本主题介绍如何为[消息归档和分析示例使用案例](firehose-example-use-case.md)创建以下资源：
+  Amazon Identity and Access Management (IAM) 角色，允许订阅 Amazon SNS 将记录放入传送流。
+ 到 Amazon SNS 主题的 Firehose 传输流订阅。

**要为 Amazon SNS 订阅创建 IAM 角色**

1. 打开 IAM 控制台的[角色页面](https://console.amazonaws.cn/iam/home?#/roles)。

1. 选择**创建角色**。

1. 对于**Select type of trusted entity（选择受信任实体的类型）**，选择 **Amazon service（服务）**。

1. 对于 **Choose a use case**（选择使用案例），选择 **SNS**。然后选择**下一步：权限**。

1. 选择**下一步：标签**。

1. 选择**下一步：审核**。

1. 在**审核**页面上，对于**角色名称**，输入 **ticketUploadStreamSubscriptionRole**。然后选择**创建角色**。

1. 创建角色后，选择其名称 (**ticketUploadStreamSubscriptionRole**)。

1. 在角色的 **Summary**（摘要）页面上，选择 **Add inline policy**（添加内联策略）。

1. 在 **Create policy**（创建策略）页面上，选择 **JSON** 选项卡，然后将以下策略粘贴到文本框中：

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Action": [
                   "firehose:DescribeDeliveryStream",
                   "firehose:ListDeliveryStreams",
                   "firehose:ListTagsForDeliveryStream",
                   "firehose:PutRecord",
                   "firehose:PutRecordBatch"
               ],
               "Resource": [
                   "arn:aws:firehose:us-east-1:123456789012:deliverystream/ticketUploadStream"
               ],
               "Effect": "Allow"
           }
       ]
   }
   ```

------

   在本政策中，将 Amazon Web Services 账户 数字 ({{123456789012}}) 替换为自己的数字，然后相应地更改 Amazon 区域 ({{us-east-1}})。

1. 选择**查看策略**。

1. 在 **Create policy**（创建策略）页面上，对于 **Name**（名称），输入 **FirehoseSnsPolicy**。然后选择**创建策略**。

1. 在角色的 **Summary**（摘要）页面上，记下**角色 ARN**供稍后使用。

有关创建 IAM 角色的更多信息，请参阅 I [A *M 用户指南*中的创建角色以向 Amazon 服务委派权限](https://docs.amazonaws.cn/IAM/latest/UserGuide/id_roles_create_for-service.html)。

**为 Firehose 传输流订阅 SNS 主题**

1. 打开 Amazon SNS 控制台中的[主题](https://console.amazonaws.cn/sns/home#/topics)页面。

1. 在 **Subscriptions**（订阅）选项卡上，选择 **Create subscription**（创建订阅）。

1. 在**详细信息**下，对于**方案**，选择 ****。

1. 在 En **d** point 中，输入您之前创建的**ticketUploadStream**传输流的亚马逊资源名称 (ARN)。例如，输入 **arn:aws:firehose:us-east-1:123456789012:deliverystream/ticketUploadStream**。

1. 对于**订阅角色 ARN**，请输入您之前创建的 **ticketUploadStreamSubscriptionRole**IAM 角色的 ARN。例如，输入 **arn:aws:iam::123456789012:role/ticketUploadStreamSubscriptionRole**。

1. 选择 **Enable raw message delivery**（启用原始消息传输）复选框。

1. 选择**创建订阅**。

您已创建 IAM 角色和 SNS 主题订阅。要继续，请参阅 [测试和查询 Amazon SNS 配置以实现有效的数据管理](firehose-example-test-and-query.md)。