将目标添加到适用于 LoRaWAN 的 Amazon IoT Core - Amazon IoT Core
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

将目标添加到适用于 LoRaWAN 的 Amazon IoT Core

适用于 LoRaWAN 的 Amazon IoT Core 目标描述了 Amazon IoT 规则,该规则用于处理设备数据以供Amazon服务采用。

因为大多数 LoRaWAN 设备不会将数据以Amazon能够使用的格式发送到适用于 LoRaWAN 的 Amazon IoT Core ,因为 Amazon IoT 规则必须先行处理。Amazon IoT 规则包含解释设备数据的 SQL 语句和主题规则操作,这些操作会将 SQL 语句的结果发送到将要使用它的服务。

使用控制台添加一个目标

如果您正在按照 使用控制台将您的无线设备规范添加到适用于 LoRaWAN 的 Amazon IoT Core 中所述使用控制台添加无线设备,则当您将无线设备规范和配置文件按前述操作添加到适用于 LoRaWAN 的 Amazon IoT Core 之后,您可以继续添加目标。

或者,您还可以从 Amazon IoT 控制台的 Destinations(目标)页面添加一个适用于 LoRaWAN 的 Amazon IoT Core 目标。

要处理设备的数据,请在创建适用于 LoRaWAN 的 Amazon IoT Core 目标时指定以下字段,然后选择 Add destination(添加目标)。

  • 目标详细信息

    输入 Destination name(目标名称)以及您的目标描述(可选)。

  • 规则名称

    配置 Amazon IoT 规则来处理设备的数据。您的目标需要一条规则来处理其接收的消息。输入规则名称,然后选择 Copy(复制)复制您在创建 Amazon IoT 规则时将要输入的规则名称。您可以选择 Create rule(创建规则)以立即创建规则,或导航到 Amazon IoT 控制台的 Rule(规则)中心并使用该名称创建规则。

    有关目标的 Amazon IoT 规则的更多信息,请参阅 创建规则以处理 LoRaWAN 设备消息

  • 角色名称

    IAM 角色,该角色授予设备数据权限以访问在 Rule name(规则名称)中命名的规则。有关角色中定义所要求的详细信息,请参阅角色中的更多信息,请参阅 为您的目的地创建 IAM 角色

    有关 IAM 角色的更多信息,请参阅使用 IAM 角色

使用 API 添加目标

以下列表描述了执行与添加、更新或删除目标相关任务的 API 操作。

服务配置文件的 Amazon IoT Wireless API 操作

有关可用于创建和管理适用于 LoRaWAN 的 Amazon IoT Core 资源的操作和数据类型的完整列表,请参阅 Amazon IoT Wireless API 参考

如何使用 Amazon CLI 添加一个目标

您可以使用 Amazon CLI 添加目标,方法是使用 create-destination 命令。以下示例创建了一个目标。

aws iotwireless create-destination \ --name IoTWirelessDestination \ --expression-type RuleName \ --expression IoTWirelessRule \ --role-arn arn:aws:iam::123456789012:role/IoTWirelessDestinationRole

运行此命令可创建带有指定目标名称、规则名称和角色名称的目标。有关目标的规则和角色名称的信息,请参阅 创建规则以处理 LoRaWAN 设备消息为您的目的地创建 IAM 角色

有关您可以使用的 CLI 的信息,请参阅 Amazon CLI 参考

为您的目的地创建 IAM 角色

适用于 LoRaWAN 的 Amazon IoT Core 目标需要 IAM 角色为适用于 LoRaWAN 的 Amazon IoT Core 提供将数据发送到 Amazon IoT 规则所需的权限。如果尚未定义此类角色,则需要对其进行定义,以便使其显示在角色列表中。

要为您的适用于 LoRaWAN 的 Amazon IoT Core 目标角色创建 IAM 策略

  1. 打开 IAM 控制台中的 Policies(策略)中心

  2. 选择 Create policy(创建策略),然后选择 JSON 选项卡。

  3. 在编辑器中,删除编辑器中的所有内容并粘贴此策略文档。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:DescribeEndpoint", "iot:Publish" ], "Resource": "*" } ] }
  4. 选择 Review policy(查看策略),并在 Name(名称)中输入此策略的名称。在下一流程中,您将需要使用此名称。

    如有需要,您还可以在 Description(说明)中描述此策略。

  5. 选择 Create policy

药为适用于 LoRaWAN 的 Amazon IoT Core 目标创建 IAM 角色

  1. 开启 IAM 控制台的角色中心,然后选择 Create role(创建角色)。

  2. Select type of trusted entity(选择受信任实体的类型)下,选择 Another Amazon Web Services 账户 (另一个亚马逊云科技账户)。

  3. Account ID(账户 ID),请输入您的 Amazon Web Services 账户 ID,然后选择 Next: Permission(下一步:权限)。

  4. 在搜索框中,输入您在上一流程中创建的 IAM 策略名称。

  5. 在搜索结果中,检查您在上一个流程中创建的 IAM 策略。

  6. 依次选择 Next: Tags(下一步:标签)和 Next: Review(下一步:查看)。

  7. Role name(角色名称),输入此角色的名称,然后选择 Create role(创建角色)。

  8. 在确认消息中,选择您创建的角色的名称以编辑新角色。

  9. Summary(摘要)页面上,选择 Trust relationships(信任关系),然后选择 Edit trust relationship(编辑信任关系)。

  10. Policy Document(策略文档)中,更改 Principal 属性以使其类似于此示例。

    "Principal": { "Service": "iotwireless.amazonaws.com" },

    在您更改 Principal 属性后,完整的策略文档应该如此示例所示。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "iotwireless.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": {} } ] }
  11. 要保存更改并退出,请选择 Update Trust Policy(更新信任策略)。

定义了此角色后,您可以在配置适用于 LoRaWAN 的 Amazon IoT Core 目标时在角色列表中找到它。