本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
设备预调配
AWS 提供了几种不同的方法来配置设备并在其上安装唯一的客户端证书。本部分介绍各种方式,以及如何选择适合您的 IoT 解决方案的最佳方法。这些选项在标题为在 AWS IoT Core中使用 X.509 证书进行设备制造和预调配的白皮书中进行了详细介绍。
选择最适合您情况的选项
-
您可以在 IoT 设备上安装证书,然后再予交付
如果您可以在 IoT 设备上安全地安装唯一的客户端证书以供最终用户使用,则需要使用即时预调配 (JITP) 或者即时注册 (JITR)。
使用 JITP 和 JITR,用于签署设备证书的证书颁发机构 (CA) 在设备首次连接 AWS IoT 时注册 AWS IoT 并被识别。设备将在首次连接时使用其配置模板的详细信息进行配置。 AWS IoT
有关单件事物、JITP、JITR 和具有唯一证书的设备批量预调配的详细信息,请参阅 预调配具有设备证书的设备。
-
终端用户或安装人员可以使用应用程序在其 IoT 设备上安装证书
如果您无法在 IoT 设备上安全地安装唯一的客户端证书以供终端用户使用,但终端用户或安装程序可以使用应用程序注册设备并安装唯一设备证书,则需要执行通过信任用户预调配的过程。
使用信任用户(如终端用户或具有已知账户的安装程序)可以简化设备制造过程。设备没有唯一的客户端证书,而是临时证书,仅允许设备连接 5 分钟。 AWS IoT 在这 5 分钟的窗口中,信任用户将获得具有更长寿命的唯一客户端证书,并将其安装在设备上。申请证书的寿命有限,因此能够最大限度地减少证书受损的风险。
有关更多信息,请参阅 由可信用户预调配。
-
终端用户无法使用应用程序在其 IoT 设备上安装证书
如果上述两个选项都不适用于您的 IoT 解决方案,则可选择通过申请预调配流程。通过此流程,您的 IoT 设备将拥有由实例集中其它设备共享的申请证书。设备首次使用声明证书连接时,使用其配置模板 AWS IoT 注册该设备,并向设备颁发其唯一的客户端证书以供后续访问 AWS IoT。
此选项允许在设备连接时自动配置设备 AWS IoT,但如果索赔证书泄露,则可能会带来更大的风险。如果申请证书受损,您可以停用该证书。停用申请证书可防止具有该申请证书的所有设备在将来不会被注册。但是,停用申请证书不会阻止已预调配的设备。
有关更多信息,请参阅 通过申请进行预调配。
在 AWS IoT中预调配设备
使用配置设备时 AWS IoT,必须创建资源,这样您的设备 AWS IoT 才能安全地通信。您可以创建其它资源来帮助管理设备实例集。在预调配过程中可以创建以下资源:
-
IoT 事物。
物联网事物是 AWS IoT 设备注册表中的条目。每个事物都有一个唯一的名称和一组属性,并与物理设备相关联。事物可以使用事物类型来定义,或者分组为事物组。有关更多信息,请参阅 使用管理设备 AWS IoT。
虽然创建事物并非必需,但这使您能够按事物类型、事物组和事物属性来搜索设备,以更有效地管理设备实例集。有关更多信息,请参阅 机群索引。
注意
要索引事物的连接状态数据,请配置您的事物并对其进行配置,使事物名称与 Connect 请求中使用的客户端 ID 相匹配。
-
X.509 证书。
设备使用 X.509 证书与执行相互身份验证。 AWS IoT您可以注册现有证书,也可以为您 AWS IoT 生成和注册新证书。通过将证书附加到表示设备的事物,您可以将证书与设备关联。您还必须将证书和关联的私有密钥复制到设备上。设备在连接时会出示证书 AWS IoT。有关更多信息,请参阅 身份验证。
-
IoT 策略。
IoT 策略确定设备可在 AWS IoT中执行的操作。IoT 策略附加到设备证书。当设备向其提供证书时 AWS IoT,它将被授予策略中指定的权限。有关更多信息,请参阅 授权。每个设备都需要一个证书来与 AWS IoT通信。
AWS IoT 支持使用配置模板自动配置队列。配置模板描述了配置设备 AWS IoT 所需的资源。模板包含变量,使您能够使用一个模板来预调配多个设备。在您预调配设备时,您可以使用字典或映射 为设备特定的变量指定值。要预调配其它设备,请在字典中指定新值。
无论设备是否具有唯一的证书(及其关联的私有密钥),您都可以使用自动预调配。
实例集预调配 API
实例集预调配中使用的 API 分为几类:
-
这些控制面板函数可创建和管理实例集预调配模板,并配置可信用户策略。
-
可信用户可以使用此控制面板函数生成临时信息载入申请。此临时申请在 Wi-Fi 配置或类似方法期间传递给设备。
-
预调配过程中设备使用的 MQTT API,其中包含嵌入设备中的预调配申请证书,或由可信用户传递到其中。