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

设置

首次使用 Device Advisor 之前,请完成以下任务。

创建要用作设备角色的 IAM 角色

此部分将向您介绍如何创建 Amazon Web Services 账户 并向 IAM 用户添加权限,以便您可以使用该用户在设备上运行 Device Advisor 测试。

  1. 转至 Amazon IAM 控制台并登录您用于 Device Advisor 测试的账户。

  2. 首先,创建一个策略,将角色权限限制到设备事物策略。在左侧导航窗格中,选择 Policies(策略)。

  3. 选择 Create policy

  4. Create Policy(创建策略)下,执行以下操作。

    1. 选择为 Service(服务)选择 IoT

    2. Action(操作)项下,选中 All IoT actions (iot:*)(所有 IoT 操作 (iot:*))。

    3. Resources(资源)项下,您可以选择所有资源。但是,为了获得最佳安全实践,请限制 client(客户端)、topic(主题)和 topicfilter(主题筛选条件)。如果您选择限制这些资源,请执行以下步骤。

      1. 选择 Specify client resource ARN for the Connect action(为 Connect 操作指定客户端资源 ARN)。

        1. 选择 Add ARN (添加 ARN)

        2. 在虚拟 ARN 编辑器中指定 region(区域)、accountIdclientId 或手动指定要用于运行测试用例的 IoT 主题的 Amazon Resource Names (ARN)。clientId 是您的设备用于与 Device Advisor 交互的 MQTT clientId

        3. 选择 Add(添加)。

      2. 选择 Specify topic resource ARN for the Receive and 1 more action(为 Receive 及其他 1 个操作指定主题资源 ARN)。

        1. 选择 Add ARN (添加 ARN)

        2. 在虚拟 ARN 编辑器中指定 region(区域)、accountIdtopic name(主题名称)或手动指定要用于运行测试用例的 IoT 主题的 ARN。topic name(主题名称)是您的设备要用于发布消息的 MQTT topic(主题)。

        3. 选择 Add(添加)。

      3. 选择 Specify topicfilter resource ARN for the Subscribe action(为 Subscribe 操作指定主题筛选条件资源 ARN)。

        1. 选择 Add ARN (添加 ARN)

        2. 在虚拟 ARN 编辑器中指定 region(区域)、accountIdtopic name(主题名称)或手动指定要用于运行测试用例的 IoT 主题的 ARN。topic name(主题名称)是您的设备用于订阅的 MQTT topic(主题)。

        3. 选择 Add(添加)。

  5. 选择查看策略

  6. Review policy(查看策略)项下,输入一个 Name(名称)。

  7. 选择 Create policy

  8. 在左侧导航窗格中,选择 Roles(角色)。

  9. 选择 Create Role(创建角色)。

  10. Or select a service to view its use cases(或选择一个服务以查看其用例)中,选择 IoT

  11. 选择您的使用案例下面,选择 IoT

  12. 选择 Next: Permissions(下一步:权限)。

  13. (可选)Set permissions boundary(设置权限边界)项下,选择Use a permissions boundary to control the maximum role permissions(使用权限边界控制最大角色权限),然后选择您刚刚创建的策略。

  14. 选择下一步: 标签

  15. 选择 Next: Review (下一步: 审核)

  16. 输入 Role name(角色名称)和 Role description(角色描述)。

  17. 选择创建角色

  18. 导航到您创建的角色。

  19. Permissions(权限)选项卡中选择 Attach policies(附加策略),然后选择您在 Step 4(步骤 4)中创建的策略。

  20. 选择 Attach policy

  21. 选择 Trust relationships(信任关系)选项卡,然后选择 Edit trust relationship(编辑信任关系)。

  22. 输入此策略:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAwsIoTCoreDeviceAdvisor", "Effect": "Allow", "Principal": { "Service": "iotdeviceadvisor.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  23. 选择 Update Trust Policy

为您的设 Device Advisor 用户账户创建自定义管理策略

  1. 通过 https://console.aws.amazon.com/iam/ 导航到 IAM 控制台并登录您的账户。

  2. 在左侧导航窗格中,选择 Policies

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

  4. 添加必要的权限以使用 Device Advisor。您可在安全最佳实践中找到策略文档。

  5. 选择查看策略

  6. 输入名称描述

  7. 选择创建策略

创建用于运行 Device Advisor 测试的 IAM 用户

注意

我们建议您创建一个要在运行设备顾问测试时使用的 IAM 用户。虽然我们不建议这样做,但您也可以使用 IAM 管理员用户。

  1. 通过 https://console.aws.amazon.com/iam/ 导航到 IAM 控制台并登录您的账户。

  2. 在左侧导航窗格中,选择 Users(用户)。

  3. 选择添加用户

  4. 输入 User name(用户名称)。

  5. 选择 Programmatic access(编程访问)。

  6. 选择 Next: Permissions(下一步:权限)。

  7. 选择直接附加现有策略

  8. 在搜索框中输入您创建的自定义管理策略的名称,然后选中左侧的 Policy name(策略名称)复选框。

  9. 选择下一步: 标签

  10. 选择 Next: Review (下一步: 审核)

  11. 选择 Create user

  12. 选择 Close (关闭)

Device Advisor 需要代表您访问 Amazon 资源(事物、证书、端点)的权限。您的 IAM 用户必须具有必要的权限。如果您将必要的权限策略附加到您的 IAM 用户,Device Advisor 也会将日志发布到 Amazon CloudWatch。

创建 Amazon IoT 事物和证书

  1. 转到 Amazon IoT Core 控制台。登录到您用于执行 Device Advisor 测试的账户,然后在左侧导航窗格中选择 Manage(管理)。

  2. 如果您有任何现有事物,请选择 Create(创建)来创建新事物。否则,在 You don't have any things yet(您还没有任何事物)页面上,选择 Register a thing(注册事物)。

  3. 创建 Amazon IoT 事物页面上,选择创建单个事物

  4. Add your device to the thing registry(将设备添加到事物注册表)页面上,为您的事物输入 Name(名称)。选择 Next(下一步)。

  5. 添加事物的证书页面上,选择创建证书。将显示通知,以确认您的事物和事物的证书均已创建。

  6. 将您在上一步创建的证书复制到设备。证书的正确位置取决于对设备软件或固件中证书的引用。

配置您的测试设备

Device Advisor 使用服务器名称指示 (SNI) TLS 扩展来应用 TLS 配置。设备在连接时必须使用此扩展,并传递与 Device Advisor 测试端点相同的服务器名称。

当测试处于 Running 状态时,Device Advisor 允许 TLS 连接,并会在每次测试运行之前和之后拒绝 TLS 连接。因此,我们还建议使用设备连接重试机制,以便在使用 Device Advisor 期间获得完全自动的测试体验。如果您运行具有多个测试用例的测试套件(例如 TLS 连接、MQTT 连接和 MQTT 发布),我们建议您为您的设备构建一个机制,以每五秒便尝试连接到测试端点。然后,您能够以自动的方式按顺序运行多个测试用例。

注意

为了使您的设备软件准备好进行测试,我们建议您获取一个软件开发工具包,该软件开发工具包可以连接 Amazon IoT Core 并使用为您的账户提供的 Device Advisor 测试端点更新软件开发工具包。

获取测试端点的命令为:

aws iot describe-endpoint --endpoint-type iot:DeviceAdvisor --region region