Partilhar via


ProvisioningDeviceClient Classe

Cliente que pode ser utilizado para executar o registo de um dispositivo com o serviço de aprovisionamento com a Chave Simétrica ou a autenticação X509.

Inicializa o cliente de aprovisionamento.

NOTA: este inicializador não deve ser chamado diretamente. Em vez disso, os métodos de classe que começam com create_from_ devem ser utilizados para criar um objeto de cliente.

Herança
azure.iot.device.provisioning.abstract_provisioning_device_client.AbstractProvisioningDeviceClient
ProvisioningDeviceClient

Construtor

ProvisioningDeviceClient(pipeline)

Parâmetros

Name Description
pipeline
Necessário
<xref:azure.iot.device.provisioning.pipeline.MQTTPipeline>

Instância do objeto de pipeline de aprovisionamento.

Métodos

create_from_symmetric_key

Crie um cliente que possa ser utilizado para executar o registo de um dispositivo com o serviço de aprovisionamento através da autenticação de Chave Simétrica.

create_from_x509_certificate

Crie um cliente que possa ser utilizado para executar o registo de um dispositivo com o serviço de aprovisionamento através da autenticação de certificado X509.

register

Registar o dispositivo com o serviço de aprovisionamento

Esta é uma chamada síncrona, o que significa que esta função não será devolvida até que o processo de registo seja concluído com êxito ou a tentativa tenha resultado numa falha. Antes de regressar, o cliente também irá desligar do serviço de aprovisionamento. Se for efetuada uma tentativa de registo enquanto um registo anterior estiver em curso, poderá gerar um erro.

Assim que o dispositivo for registado com êxito, o cliente deixará de ser operável.

create_from_symmetric_key

Crie um cliente que possa ser utilizado para executar o registo de um dispositivo com o serviço de aprovisionamento através da autenticação de Chave Simétrica.

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

Parâmetros

Name Description
provisioning_host
Necessário
str

Anfitrião a executar o Serviço de Aprovisionamento de Dispositivos. Pode ser encontrado no portal do Azure no separador Descrição geral como a cadeia de carateres Ponto final global do dispositivo.

registration_id
Necessário
str

O ID de registo utilizado para identificar exclusivamente um dispositivo no Serviço Aprovisionamento de Dispositivos. O ID de registo é alfanumérico, uma cadeia minúscula e pode conter hífenes.

id_scope
Necessário
str

O âmbito do ID utilizado para identificar exclusivamente o serviço de aprovisionamento específico através do qual o dispositivo será registado. O âmbito do ID é atribuído a um Serviço de Aprovisionamento de Dispositivos quando é criado pelo utilizador e gerado pelo serviço e é imutável, garantindo a exclusividade.

symmetric_key
Necessário
str

A chave que será utilizada para criar o token de assinatura de acesso partilhado para autenticar o dispositivo com o Serviço Aprovisionamento de Dispositivos. Por predefinição, o Serviço Aprovisionamento de Dispositivos cria novas chaves simétricas com um comprimento predefinido de 32 bytes quando são guardadas novas inscrições com a opção Gerar automaticamente chaves ativada. Os utilizadores podem fornecer as suas próprias chaves simétricas para inscrições ao desativar esta opção em 16 bytes e 64 bytes e no formato Base64 válido.

server_verification_cert
Necessário
str

Opção de Configuração. A cadeia de certificados fidedigna. Necessário ao utilizar a ligação a um ponto final que tenha uma raiz de confiança não padrão, como um gateway de protocolo.

gateway_hostname
Necessário
str

Opção de Configuração. O nome do anfitrião do gateway para o dispositivo de gateway.

websockets
Necessário

Opção de Configuração. A predefinição é Falso. Defina como verdadeiro se utilizar MQTT através de websockets.

cipher
Necessário
str ou list(str)

Opção de Configuração. Conjunto(s) de cifras para TLS/SSL, como uma cadeia em "Formato de lista de cifras OpenSSL" ou como uma lista de cadeias de conjunto de cifras.

proxy_options
Necessário

Opções para enviar tráfego através de servidores proxy.

keepalive
Necessário
int

Período máximo em segundos entre comunicações com o mediador. Se não estiverem a ser trocadas outras mensagens, esta ação controla a taxa a que o cliente enviará mensagens ping para o mediador. Se não for fornecido, será utilizado o valor predefinido de 60 segundos.

Devoluções

Tipo Description

Uma instância ProvisioningDeviceClient que pode ser registada através da Chave Simétrica.

Exceções

Tipo Description
TypeError if given an unrecognized parameter.

create_from_x509_certificate

Crie um cliente que possa ser utilizado para executar o registo de um dispositivo com o serviço de aprovisionamento através da autenticação de certificado X509.

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

Parâmetros

Name Description
provisioning_host
Necessário
str

Anfitrião a executar o Serviço de Aprovisionamento de Dispositivos. Pode ser encontrado no portal do Azure no separador Descrição geral como a cadeia de carateres Ponto final global do dispositivo.

registration_id
Necessário
str

O ID de registo utilizado para identificar exclusivamente um dispositivo no Serviço Aprovisionamento de Dispositivos. O ID de registo é alfanumérico, uma cadeia minúscula e pode conter hífenes.

id_scope
Necessário
str

O âmbito do ID é utilizado para identificar exclusivamente o serviço de aprovisionamento específico através do qual o dispositivo será registado. O âmbito do ID é atribuído a um Serviço de Aprovisionamento de Dispositivos quando é criado pelo utilizador e gerado pelo serviço e é imutável, garantindo a exclusividade.

x509
Necessário

O certificado x509, para utilizar o certificado, o objeto de inscrição tem de conter o certificado (o certificado de raiz ou um dos certificados de AC intermédios). Se o certificado for proveniente de um ficheiro CER, tem de ser codificado em base64.

server_verification_cert
Necessário
str

Opção de Configuração. A cadeia de certificados fidedigna. Necessário ao utilizar a ligação a um ponto final que tenha uma raiz de confiança não padrão, como um gateway de protocolo.

gateway_hostname
Necessário
str

Opção de Configuração. O nome do anfitrião do gateway para o dispositivo de gateway.

websockets
Necessário

Opção de Configuração. A predefinição é Falso. Defina como verdadeiro se utilizar MQTT através de websockets.

cipher
Necessário
str ou list(str)

Opção de Configuração. Conjunto(s) de cifras para TLS/SSL, como uma cadeia em "Formato de lista de cifras OpenSSL" ou como uma lista de cadeias de conjunto de cifras.

proxy_options
Necessário

Opções para enviar tráfego através de servidores proxy.

keepalive
Necessário
int

Período máximo em segundos entre comunicações com o mediador. Se não estiverem a ser trocadas outras mensagens, esta ação controla a taxa a que o cliente enviará mensagens ping para o mediador. Se não for fornecido, será utilizado o valor predefinido de 60 segundos.

Devoluções

Tipo Description

Um ProvisioningDeviceClient que pode ser registado através de certificados de cliente X509.

Exceções

Tipo Description
TypeError if given an unrecognized parameter.

register

Registar o dispositivo com o serviço de aprovisionamento

Esta é uma chamada síncrona, o que significa que esta função não será devolvida até que o processo de registo seja concluído com êxito ou a tentativa tenha resultado numa falha. Antes de regressar, o cliente também irá desligar do serviço de aprovisionamento. Se for efetuada uma tentativa de registo enquanto um registo anterior estiver em curso, poderá gerar um erro.

Assim que o dispositivo for registado com êxito, o cliente deixará de ser operável.

register()

Devoluções

Tipo Description

RegistrationResult a indicar o resultado do registo.

Exceções

Tipo Description

se as credenciais forem inválidas e não for possível estabelecer uma ligação.

se estabelecer uma ligação resultar em falhas.

se a ligação for perdida durante a execução.

se a ligação exceder o limite de tempo.

se ocorrer uma falha inesperada durante a execução.

Atributos

provisioning_payload