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

ProvisioningDeviceClient 类

可用于使用对称密钥或 X509 身份验证通过预配服务运行设备注册的客户端。

初始化预配客户端。

注意:不应直接调用此初始值设定项。 相反,应使用以 create_from_ 开头的 类方法来创建客户端对象。

继承
azure.iot.device.provisioning.abstract_provisioning_device_client.AbstractProvisioningDeviceClient
ProvisioningDeviceClient

构造函数

ProvisioningDeviceClient(pipeline)

参数

名称 说明
pipeline
必需
<xref:azure.iot.device.provisioning.pipeline.MQTTPipeline>

预配管道对象的实例。

方法

create_from_symmetric_key

创建一个客户端,该客户端可用于使用对称密钥身份验证通过预配服务运行设备注册。

create_from_x509_certificate

创建一个客户端,该客户端可用于使用 X509 证书身份验证通过预配服务运行设备注册。

register

将设备注册到预配服务

这是一个同步调用,这意味着在注册过程成功完成或尝试导致失败之前,此函数不会返回。 在返回之前,客户端还将断开与预配服务的连接。 如果在进行以前的注册时进行了注册尝试,可能会引发错误。

成功注册设备后,客户端将不再可操作。

create_from_symmetric_key

创建一个客户端,该客户端可用于使用对称密钥身份验证通过预配服务运行设备注册。

create_from_symmetric_key(provisioning_host, registration_id, id_scope, symmetric_key, **kwargs)

参数

名称 说明
provisioning_host
必需
str

运行设备预配服务的主机。 可以在“概述”选项卡的Azure 门户作为字符串“全局设备终结点”找到。

registration_id
必需
str

用于唯一标识设备预配服务中的设备的注册 ID。 注册 ID 是字母数字小写字符串,可能包含连字符。

id_scope
必需
str

用于唯一标识设备将注册到的特定预配服务的 ID 范围。 ID 范围在由用户创建并由服务生成且不可变时分配给设备预配服务,从而保证唯一性。

symmetric_key
必需
str

将用于创建共享访问签名令牌的密钥,以便通过设备预配服务对设备进行身份验证。 默认情况下,当保存新注册且启用“自动生成密钥”选项时,设备预配服务会创建默认长度为 32 个字节的新对称密钥。 用户可以通过在 16 字节和 64 字节内以有效的 Base64 格式禁用此选项,为注册提供自己的对称密钥。

server_verification_cert
必需
str

配置选项。 受信任的证书链。 使用连接到具有非标准信任根的终结点(例如协议网关)时是必需的。

gateway_hostname
必需
str

配置选项。 网关设备的网关主机名。

websockets
必需

配置选项。 默认值为 False。 如果基于 Websocket 使用 MQTT,则设置为 true。

cipher
必需
strlist(str)

配置选项。 密码套件 (TLS/SSL 的) ,作为“OpenSSL 密码列表格式”的字符串或密码套件字符串列表。

proxy_options
必需

用于通过代理服务器发送流量的选项。

keepalive
必需
int

与中转站通信之间的最长时间段(以秒为单位)。 如果没有交换其他消息,这将控制客户端将 ping 消息发送到中转站的速率。 如果未提供,将使用默认值 60 秒。

返回

类型 说明

可以通过对称密钥注册的 ProvisioningDeviceClient 实例。

例外

类型 说明
TypeError if given an unrecognized parameter.

create_from_x509_certificate

创建一个客户端,该客户端可用于使用 X509 证书身份验证通过预配服务运行设备注册。

create_from_x509_certificate(provisioning_host, registration_id, id_scope, x509, **kwargs)

参数

名称 说明
provisioning_host
必需
str

运行设备预配服务的主机。 可以在“概述”选项卡的Azure 门户作为字符串“全局设备终结点”找到。

registration_id
必需
str

用于唯一标识设备预配服务中的设备的注册 ID。 注册 ID 是字母数字小写字符串,可能包含连字符。

id_scope
必需
str

ID 范围用于唯一标识设备将通过注册的特定预配服务。 ID 范围在由用户创建并由服务生成且不可变时分配给设备预配服务,从而保证唯一性。

x509
必需

x509 证书,若要使用证书,注册对象需要包含证书 (根证书或) 的一个中间 CA 证书。 如果证书来自 CER 文件,则需要进行 base64 编码。

server_verification_cert
必需
str

配置选项。 受信任的证书链。 使用连接到具有非标准信任根的终结点(例如协议网关)时是必需的。

gateway_hostname
必需
str

配置选项。 网关设备的网关主机名。

websockets
必需

配置选项。 默认值为 False。 如果基于 Websocket 使用 MQTT,则设置为 true。

cipher
必需
strlist(str)

配置选项。 密码套件 (TLS/SSL 的) ,作为“OpenSSL 密码列表格式”的字符串或密码套件字符串列表。

proxy_options
必需

用于通过代理服务器发送流量的选项。

keepalive
必需
int

与中转站通信之间的最长时间段(以秒为单位)。 如果没有交换其他消息,这将控制客户端将 ping 消息发送到中转站的速率。 如果未提供,将使用默认值 60 秒。

返回

类型 说明

可以通过 X509 客户端证书注册的 ProvisioningDeviceClient。

例外

类型 说明
TypeError if given an unrecognized parameter.

register

将设备注册到预配服务

这是一个同步调用,这意味着在注册过程成功完成或尝试导致失败之前,此函数不会返回。 在返回之前,客户端还将断开与预配服务的连接。 如果在进行以前的注册时进行了注册尝试,可能会引发错误。

成功注册设备后,客户端将不再可操作。

register()

返回

类型 说明

RegistrationResult,指示注册的结果。

例外

类型 说明

如果凭据无效且无法建立连接,则为 。

如果建立连接导致失败,则为 。

如果在执行期间丢失连接,则为 。

如果连接超时,则为 。

如果在执行期间发生意外失败,则为 。

属性

provisioning_payload