设备预置 - AWS IoT Core

设备预置

AWS提供了几种不同的方法来预置设备并在其上安装唯一的客户端证书。本部分介绍各种方式,以及如何选择适合您的 IoT 解决方案的最佳方法。这些选项均在题为在 AWS IoT Core 中使用 X.509 证书进行设备制造和预置的白皮书中载列。

选择最适合您情况的选项

  • 您可以在 IoT 设备上安装证书,然后再予交付

    如果您可以在 IoT 设备上安全地安装唯一的客户端证书以供最终用户使用,则需要使用即时预置 (JITP) 或者即时注册 (JITR)

    通过 JITP 和 JITR,当设备首次连接时,用于签署设备证书的证书颁发机构 (CA) 会使用 AWS IoT 注册并且被 AWS IoT 识别。设备在首次连接时将使用其预置模板中的详细信息在 AWS IoT 中预置。

    有关单件事物、JITP、JITR 和具有唯一证书的设备批量预置的详细信息,请参阅 预置具有设备证书的设备

  • 终端用户或安装人员可以使用应用程序在其 IoT 设备上安装证书

    如果您无法在 IoT 设备上安全地安装唯一的客户端证书以供终端用户使用,但终端用户或安装程序可以使用应用程序注册设备并安装唯一设备证书,则需要执行通过信任用户预置的过程。

    使用信任用户(如终端用户或具有已知账户的安装程序)可以简化设备制造过程。设备拥有的并非唯一的客户端证书,而是一个临时证书,仅能使设备与 AWS IoT 连接 5 分钟。在这 5 分钟的窗口中,信任用户将获得具有更长寿命的唯一客户端证书,并将其安装在设备上。申请证书的寿命有限,因此能够最大限度地减少证书受损的风险。

    有关更多信息,请参阅 由可信用户预置

  • 终端用户无法使用应用程序在其 IoT 设备上安装证书

    如果上述两个选项都不适用于您的 IoT 解决方案,则可选择通过申请预置流程。通过此流程,您的 IoT 设备将拥有由机群中其他设备共享的申请证书。设备首次使用申请证书连接时,AWS IoT 使用其预置模板注册设备,并向设备颁发唯一的客户端证书,以便随后访问 AWS IoT。

    此选项可在设备连接到 AWS IoT 时启用设备自动预置,但在申请证明受损的情况下可能会面临较大风险。如果申请证书受损,您可以停用该证书。停用申请证书可防止具有该申请证书的所有设备在将来不会被注册。但是,停用申请证书不会阻止已预置的设备。

    有关更多信息,请参阅 通过申请进行预配置

在 AWS IoT 中预置设备

使用 AWS IoT 预置设备时,您必须创建资源,以便您的设备和 AWS IoT 能够安全地通信。您可以创建其他资源来帮助管理设备队列。在预置过程中可以创建以下资源:

  • IoT 事物。

    IoT 事物是 AWS IoT 设备注册表中的条目。每个事物都有一个唯一的名称和一组属性,并与物理设备相关联。事物可以使用事物类型来定义,或者分组为事物组。有关更多信息,请参阅 使用 AWS IoT 管理设备

    虽然创建事物并非必需,但这使您能够按事物类型、事物组和事物属性来搜索设备,以更有效地管理设备队列。有关更多信息,请参阅 队列索引服务

  • X.509 证书。

    设备使用 X.509 证书执行与 AWS IoT 的相互身份验证。您可以注册现有证书,也可以让 AWS IoT 为您生成并注册新证书。通过将证书附加到表示设备的事物,您可以将证书与设备关联。您还必须将证书和关联的私有密钥复制到设备上。设备在连接到 AWS IoT 时提供证书。有关更多信息,请参阅 Authentication

  • IoT 策略。

    IoT 策略确定设备在 AWS IoT 中可执行的操作。IoT 策略附加到设备证书。当设备向 AWS IoT 提供其证书时,将向其授予在策略中指定的权限。有关更多信息,请参阅 Authorization。每个设备都需要一个证书来与 AWS IoT 通信。

AWS IoT 支持使用预置模板自动预置队列。预置模板描述 AWS IoT 预置您的设备所需的资源。模板包含变量,使您能够使用一个模板来预置多个设备。在您预置设备时,您可以使用字典或映射 为设备特定的变量指定值。要预置其他设备,请在字典中指定新值。

无论设备是否具有唯一的证书(及其关联的私有密钥),您都可以使用自动预置。

队列预置 API

队列预置中使用的 API 分为几类: