教程:在中配置您的设备 Amazon IoT - Amazon IoT Core
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

教程:在中配置您的设备 Amazon IoT

本节创建了您的教程将使用的 Amazon IoT Core 资源。

步骤 1:为 Device Shadow 创建 Amazon IoT 策略

X.509 证书用于对您的设备进行身份验证。 Amazon IoT Core Amazon IoT 策略附加到证书,允许设备执行 Amazon IoT 操作,例如订阅或发布到 Device Shadow 服务使用的 MQTT 保留主题。您的设备在连接并向其发送消息时会出示其证书 Amazon IoT Core。

在此流程中,您将创建一个策略以允许您的设备执行运行示例程序所必要的 Amazon IoT 操作。建议您创建一个策略以仅授予执行任务所需的许可。您首先创建 Amazon IoT 策略,然后将其附加到稍后创建的设备证书。

创建 Amazon IoT 策略
  1. 在左侧菜单中,选择 Secure(安全),然后选 Policies(策略)。如果您的账户已有策略,请选择 Create(创建),否则,在 You don’t have a policy yet(您还没有策略)页面上,选择 Create a policy(创建策略)。

  2. Create a policy(创建策略)页面上:

    1. Name(名称)字段,输入策略的名称(例如 My_Device_Shadow_policy)。请勿在策略名称中使用个人身份信息。

    2. 在策略文档中,您描述了授予设备发布和订阅 MQTT 保留主题权限的连接、订阅、接收和发布操作。

      复制以下策略并将其粘贴到策略文档中。thingname替换为您要创建的事物的名称(例如My_light_bulb)、region您正在使用服务的 Amazon IoT 地区以及account您的 Amazon Web Services 账户 电话号码。有关 Amazon IoT 策略的更多信息,请参阅Amazon IoT Core 政策

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Publish" ], "Resource": [ "arn:aws:iot:region:account:topic/$aws/things/thingname/shadow/get", "arn:aws:iot:region:account:topic/$aws/things/thingname/shadow/update" ] }, { "Effect": "Allow", "Action": [ "iot:Receive" ], "Resource": [ "arn:aws:iot:region:account:topic/$aws/things/thingname/shadow/get/accepted", "arn:aws:iot:region:account:topic/$aws/things/thingname/shadow/get/rejected", "arn:aws:iot:region:account:topic/$aws/things/thingname/shadow/update/accepted", "arn:aws:iot:region:account:topic/$aws/things/thingname/shadow/update/rejected", "arn:aws:iot:region:account:topic/$aws/things/thingname/shadow/update/delta" ] }, { "Effect": "Allow", "Action": [ "iot:Subscribe" ], "Resource": [ "arn:aws:iot:region:account:topicfilter/$aws/things/thingname/shadow/get/accepted", "arn:aws:iot:region:account:topicfilter/$aws/things/thingname/shadow/get/rejected", "arn:aws:iot:region:account:topicfilter/$aws/things/thingname/shadow/update/accepted", "arn:aws:iot:region:account:topicfilter/$aws/things/thingname/shadow/update/rejected", "arn:aws:iot:region:account:topicfilter/$aws/things/thingname/shadow/update/delta" ] }, { "Effect": "Allow", "Action": "iot:Connect", "Resource": "arn:aws:iot:region:account:client/test-*" } ] }

步骤 2:创建事物资源并将策略附加到事物

连接的设备 Amazon IoT 可以用 Amazon IoT 注册表中的事物资源表示。事物资源表示特定设备或逻辑实体,如本教程中的灯泡。

要学习如何在中创建事物 Amazon IoT,请按照中所述的步骤进行操作创建一个事物对象。以下是您在遵循该教程中的步骤时需要注意的几个关键事项:

  1. 选择 Create a single thing(创建单个事物),并在 Name(名称)字段中,输入 与您在之前创建策略时指定的 thingname相同的事物名称(例如,My_light_bulb)。

    事物名称一旦创建,便不可更改。如果您给它一个不同于 thingname的名字,请以 thingname为名称创建新的事物,并删除旧的事物。

    注意

    请勿在事物名称中使用个人身份信息。事物名称可以出现在未加密的通信和报告中。

  2. 我们建议您将 Certificate created!(已创建证书!)页面的每个证书文件下载到您可以轻松找到的位置。您需要安装这些文件才能运行示例应用程序。

    建议您将文件下载到 Raspberry Pi 中您的 home目录下的 certs子目录中,并使用一个更简单的名称命名各个文件,如下表所示。

    证书文件名

    文件

    文件路径

    根 CA 证书

    ~/certs/Amazon-root-CA-1.pem

    设备证书

    ~/certs/device.pem.crt

    私有密钥

    ~/certs/private.pem.key

  3. 激活证书以启用与之连接后 Amazon IoT,选择附加策略,并确保将之前创建的策略(例如My_Device_Shadow_policy)附加到该事物。

    创建事物后,您可以看到您的事物资源显示在 Amazon IoT 控制台的事物列表中。

步骤 3:查看结果和后续步骤

在本教程中,您学习了如何:
  • 设置和配置 Raspberry Pi 设备。

  • 创建授权您的设备与 Amazon IoT 服务交互的 Amazon IoT 策略文档。

  • 创建事物资源和关联的 X.509 设备证书,并将策略文档附加到其中。

后续步骤

现在,你可以安装适用于 Python 的 Amazon IoT 设备 SDK,运行shadow.py示例应用程序,并使用设备影子来控制状态。有关如何使用该教程的更多信息,请参阅 教程:安装设备软件开发包并运行 Device Shadow 示例应用程序