你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

IoT 中心设备预配服务术语

IoT 中心设备预配服务(DPS)是 IoT 中心的帮助程序服务,可对 IoT 中心进行零接触设备预配。 使用设备预配服务,你可以以安全且可缩放的方式预配数百万台设备。

设备预配是一个两部分的过程。

  1. 第一部分通过 注册 设备来建立设备与 IoT 解决方案之间的初始连接。
  2. 第二部分根据解决方案的特定要求将适当的 配置 应用于设备。

完成这两个步骤后,设备已完全 预配。 设备预配服务自动执行这两个步骤,为设备提供无缝预配体验。

本文概述了适用于 管理服务的预配概念。 本文与 云设置步骤 中涉及的人员最相关,即准备好设备进行部署。

服务作终结点

服务作终结点是用于管理服务设置和维护注册列表的终结点。 此终结点仅由服务管理员使用;设备不使用它。

设备预配终结点

设备预配终结点是设备用于预配的终结点。 尽管所有 DPS 实例使用相同的全局终结点主机名(global.azure-devices-provisioning.net),但每个设备还必须提供唯一 ID 范围 ,用于标识预配过程中的特定 DPS 实例。 这意味着,预配到不同 DPS 实例的设备将使用不同的 ID 范围值,需要在不同 DPS 实例之间移动设备时需要设备配置或固件更新(例如,在涉及多个预配服务的方案中(例如部署超过 100 万台设备)。

链接的 IoT 中心

设备预配服务只能将设备预配到已链接到它的 IoT 中心。 将 IoT 中心链接到设备预配服务的实例可向 IoT 中心的设备注册表提供服务读取/写入权限。 通过链接,设备预配服务可以注册设备 ID 并在设备孪生中设置初始配置。 链接的 IoT 中心可能位于任何 Azure 区域中。 可以将其他订阅中的中心链接到预配服务。

有关详细信息,请参阅 如何链接和管理 IoT 中心

分配策略

分配策略是一个服务级别设置,用于确定设备预配服务如何将设备分配到 IoT 中心。 有四个受支持的分配策略:

  • 均匀加权分布:链接的 IoT 中心同样可能为其预配设备。 默认设置。 如果将设备预配到一个 IoT 中心,可以保留此设置。

  • 最低延迟:设备预配到 IoT 中心,延迟最低。 如果多个链接的 IoT 中心提供相同的最低延迟,预配服务会在这些中心对设备进行哈希处理

  • 通过注册列表进行静态配置:注册列表中的所需 IoT 中心的规范优先于服务级别分配策略。

  • 自定义(使用 Azure 函数):自定义分配策略可让你更好地控制如何将设备分配到 IoT 中心。 自定义分配策略使用 Azure 函数将设备分配到 IoT 中心。 设备预配服务调用 Azure 函数代码,提供有关设备和注册代码的所有相关信息。 执行函数代码并返回用于预配设备的 IoT 中心信息。 有关详细信息,请参阅 了解自定义分配策略

有关详细信息,请参阅 如何使用分配策略

注册

注册是通过自动预配注册的设备或设备组的记录。 注册记录包含有关设备或设备组的信息,包括:

  • 设备使用的证明机制
  • 可选的初始所需配置
  • 所需的 IoT 中心
  • 所需的设备 ID

设备预配服务支持两种类型的注册:注册组和单个注册。

注册组

注册组是共享特定证明机制的设备组。 注册组支持 X.509 证书或对称密钥证明。

注册组的名称和设备提供的注册 ID 必须是不区分大小写的字母数字字符字符串加上特殊字符: - . _ : 最后一个字符必须是字母数字或短划线(-)。 注册组名称最多可以包含 128 个字符。 在对称密钥注册组中,设备提供的注册 ID 最多可以包含 128 个字符。 但是,在 X.509 注册组中,由于 X.509 证书中使用者公用名的最大长度为 64 个字符,因此注册 ID 限制为 64 个字符。

X.509 注册组中的设备提供由同一根或中间证书颁发机构(CA)签名的 X.509 证书。 每个设备的结束实体(叶)证书的使用者公用名(CN)将成为该设备的注册 ID。 对称密钥注册组中的设备提供派生自组对称密钥的 SAS 令牌。

对于注册组中的设备,注册 ID 也用作注册到 IoT 中心的设备 ID。

小窍门

建议对共享所需初始配置的大量设备或全部转到同一租户的设备使用注册组。

单个注册

单个注册是可能注册的单个设备的条目。 单个注册可以使用 X.509 叶证书或 SAS 令牌(从物理或虚拟 TPM)作为证明机制。

单个注册中的注册 ID 是不区分大小写的字母数字字符加上特殊字符的字符串: - . _ : 最后一个字符必须是字母数字或短划线(-)。 DPS 支持最多 128 个字符的注册 ID。

对于 X.509 个人注册,证书的使用者公用名(CN)必须与注册 ID 匹配,因此公用名必须遵循注册 ID 字符串格式。 使用者公用名的最大长度为 64 个字符,因此注册 ID 限制为 X.509 注册的 64 个字符。

单个注册可能具有在注册条目中指定的所需 IoT 中心设备 ID。 如果未指定注册 ID,则注册 ID 将成为注册到 IoT 中心的设备 ID。

小窍门

我们建议对需要唯一初始配置的设备使用单个注册,或者对于只能通过 TPM 证明使用 SAS 令牌进行身份验证的设备。

证明机制

证明机制是用于确认设备标识的方法。 证明机制在注册条目上配置,并告知预配服务在注册期间验证设备的身份时要使用的方法。

注释

IoT 中心对该服务中的类似概念使用“身份验证方案”。

设备预配服务支持以下形式的证明:

  • 基于标准 X.509 证书身份验证流的 X.509 证书。 有关详细信息,请参阅 X.509 证明
  • 基于 nonce 质询的受信任平台模块 (TPM),使用密钥的 TPM 标准来提供已签名的共享访问签名 (SAS) 令牌。 这不需要设备上的物理 TPM,但服务需要根据 TPM 规范使用认可密钥进行证明。有关详细信息,请参阅 TPM 证明
  • 基于共享访问签名(SAS)SAS 令牌对称密钥,其中包括哈希签名和嵌入式过期。 有关详细信息,请参阅 对称密钥证明

硬件安全模块

硬件安全模块(或 HSM)用于安全、基于硬件的设备机密存储,并且是最安全的机密存储形式。 X.509 证书和 SAS 令牌都可以存储在 HSM 中。

小窍门

强烈建议将 HSM 与设备配合使用,以安全地将机密存储在设备上。

设备机密也可以存储在软件(内存)中,但它的存储形式比 HSM 更安全。

ID 范围

ID 范围在创建设备预配服务时分配给设备预配服务,用于唯一标识特定的预配服务。 ID 范围由服务生成,不可变,可保证唯一性。 ID 范围唯一性对于长时间运行的部署作和合并和收购方案非常重要。

注册记录

注册记录是设备通过设备预配服务成功注册/预配到 IoT 中心的记录。 自动创建注册记录;可以删除它们,但无法更新。

注册 ID

注册 ID 用于唯一标识设备预配服务的设备注册。 注册 ID 在预配服务 ID 范围中必须是唯一的。 每个设备必须具有注册 ID。 注册 ID 是字母数字字符和特殊字符的不区分大小写的字符串: - . _ : 最后一个字符必须是字母数字或短划线(-)。 DPS 支持最多 128 个字符的注册 ID。

  • 通过 TPM 证明,注册 ID 由 TPM 本身提供。
  • 使用基于 X.509 的证明,注册 ID 设置为设备证书的使用者公用名(CN)。 因此,公用名必须遵循注册 ID 字符串格式。 但是,注册 ID 限制为 64 个字符,因为这是 X.509 证书中使用者公用名的最大长度。

设备 ID

设备 ID 是 IoT 中心中显示的 ID。 可以在注册条目中设置所需的设备 ID,但不需要设置。 仅在单个注册中支持设置所需的设备 ID。 如果在注册列表中未指定所需的设备 ID,则注册 ID 在注册设备时用作设备 ID。 详细了解 IoT 中心中的设备 ID

Operations

作是设备预配服务的计费单位。 一个作是成功完成对服务的一个指令。 作可能包括设备注册和重新注册,以及服务端更改,例如添加和更新注册列表条目。