ProvisioningDeviceClient Classe
Client che può essere usato per eseguire la registrazione di un dispositivo con il servizio di provisioning usando la chiave simmetrica o l'autenticazione X509.
Inizializza il client di provisioning.
NOTA: questo inizializzatore non deve essere chiamato direttamente. È invece necessario usare i metodi della classe che iniziano con create_from_ per creare un oggetto client.
- Ereditarietà
-
azure.iot.device.provisioning.abstract_provisioning_device_client.AbstractProvisioningDeviceClientProvisioningDeviceClient
Costruttore
ProvisioningDeviceClient(pipeline)
Parametri
Nome | Descrizione |
---|---|
pipeline
Necessario
|
<xref:azure.iot.device.provisioning.pipeline.MQTTPipeline>
Istanza dell'oggetto pipeline di provisioning. |
Metodi
create_from_symmetric_key |
Creare un client che può essere usato per eseguire la registrazione di un dispositivo con il servizio di provisioning usando l'autenticazione con chiave simmetrica. |
create_from_x509_certificate |
Creare un client che può essere usato per eseguire la registrazione di un dispositivo con il servizio di provisioning usando l'autenticazione del certificato X509. |
register |
Registrare il dispositivo con il servizio di provisioning Si tratta di una chiamata sincrona, ovvero che questa funzione non restituirà finché il processo di registrazione non è stato completato correttamente o il tentativo ha causato un errore. Prima di restituire, il client disconnetterà anche dal servizio di provisioning. Se viene eseguito un tentativo di registrazione mentre è in corso una registrazione precedente, potrebbe generare un errore. Una volta registrato correttamente il dispositivo, il client non sarà più operabile. |
create_from_symmetric_key
Creare un client che può essere usato per eseguire la registrazione di un dispositivo con il servizio di provisioning usando l'autenticazione con chiave simmetrica.
create_from_symmetric_key(provisioning_host, registration_id, id_scope, symmetric_key, **kwargs)
Parametri
Nome | Descrizione |
---|---|
provisioning_host
Necessario
|
Host che esegue il servizio Device Provisioning. La scheda Panoramica è disponibile portale di Azure nella scheda Panoramica come endpoint del dispositivo globale stringa. |
registration_id
Necessario
|
ID di registrazione usato per identificare in modo univoco un dispositivo nel servizio Device Provisioning. L'ID di registrazione è alfanumerico, stringa minuscola e può contenere trattini. |
id_scope
Necessario
|
L'ambito ID utilizzato per identificare in modo univoco il servizio di provisioning specifico registrato dal dispositivo. L'ambito ID viene assegnato a un servizio Device Provisioning quando viene creato dall'utente e viene generato dal servizio ed è non modificabile, garantendo l'univocità. |
symmetric_key
Necessario
|
Chiave che verrà usata per creare il token di firma di accesso condiviso per autenticare il dispositivo con il servizio Device Provisioning. Per impostazione predefinita, il servizio Device Provisioning consente di creare nuove chiavi simmetriche con una lunghezza predefinita di 32 byte quando le nuove registrazioni vengono salvate con l'opzione Genera automaticamente chiavi abilitata. Gli utenti possono fornire le proprie chiavi simmetriche per le registrazioni disabilitando questa opzione entro 16 byte e 64 byte e in formato Base64 valido. |
server_verification_cert
Necessario
|
Opzione di configurazione. Catena di certificati attendibile. Necessario quando si usa la connessione a un endpoint con una radice non standard di trust, ad esempio un gateway di protocollo. |
gateway_hostname
Necessario
|
Opzione di configurazione. Nome host gateway per il dispositivo gateway. |
websockets
Necessario
|
Opzione di configurazione. Il valore predefinito è False. Impostare su true se si usa MQTT su websocket. |
cipher
Necessario
|
Opzione di configurazione. Suite di crittografia per TLS/SSL, come stringa in "Formato elenco di crittografia OpenSSL" o come elenco di stringhe della suite di crittografia. |
proxy_options
Necessario
|
Opzioni per l'invio del traffico tramite server proxy. |
keepalive
Necessario
|
Periodo massimo in secondi tra le comunicazioni con il broker. Se non vengono scambiati altri messaggi, questo controlla la frequenza in cui il client invierà messaggi ping al broker. Se non viene specificato il valore predefinito di 60 secondi, verrà usato. |
Restituisce
Tipo | Descrizione |
---|---|
Istanza di ProvisioningDeviceClient che può registrare tramite chiave simmetrica. |
Eccezioni
Tipo | Descrizione |
---|---|
TypeError if given an unrecognized parameter.
|
create_from_x509_certificate
Creare un client che può essere usato per eseguire la registrazione di un dispositivo con il servizio di provisioning usando l'autenticazione del certificato X509.
create_from_x509_certificate(provisioning_host, registration_id, id_scope, x509, **kwargs)
Parametri
Nome | Descrizione |
---|---|
provisioning_host
Necessario
|
Host che esegue il servizio Device Provisioning. La scheda Panoramica è disponibile portale di Azure nella scheda Panoramica come endpoint del dispositivo globale stringa. |
registration_id
Necessario
|
ID di registrazione usato per identificare in modo univoco un dispositivo nel servizio Device Provisioning. L'ID di registrazione è alfanumerico, stringa minuscola e può contenere trattini. |
id_scope
Necessario
|
L'ambito ID viene usato per identificare in modo univoco il servizio di provisioning specifico registrato dal dispositivo. L'ambito ID viene assegnato a un servizio Device Provisioning quando viene creato dall'utente e viene generato dal servizio ed è non modificabile, garantendo l'univocità. |
x509
Necessario
|
Il certificato x509, Per usare il certificato, l'oggetto di registrazione deve contenere il certificato (il certificato radice o uno dei certificati CA intermedi). Se il certificato proviene da un file CER, deve essere codificato in base64. |
server_verification_cert
Necessario
|
Opzione di configurazione. Catena di certificati attendibile. Necessario quando si usa la connessione a un endpoint con una radice non standard di trust, ad esempio un gateway di protocollo. |
gateway_hostname
Necessario
|
Opzione di configurazione. Nome host gateway per il dispositivo gateway. |
websockets
Necessario
|
Opzione di configurazione. Il valore predefinito è False. Impostare su true se si usa MQTT su websocket. |
cipher
Necessario
|
Opzione di configurazione. Suite di crittografia per TLS/SSL, come stringa in "Formato elenco di crittografia OpenSSL" o come elenco di stringhe della suite di crittografia. |
proxy_options
Necessario
|
Opzioni per l'invio del traffico tramite server proxy. |
keepalive
Necessario
|
Periodo massimo in secondi tra le comunicazioni con il broker. Se non vengono scambiati altri messaggi, questo controlla la frequenza in cui il client invierà messaggi ping al broker. Se non viene specificato il valore predefinito di 60 secondi, verrà usato. |
Restituisce
Tipo | Descrizione |
---|---|
ProvisioningDeviceClient che può registrare tramite certificati client X509. |
Eccezioni
Tipo | Descrizione |
---|---|
TypeError if given an unrecognized parameter.
|
register
Registrare il dispositivo con il servizio di provisioning
Si tratta di una chiamata sincrona, ovvero che questa funzione non restituirà finché il processo di registrazione non è stato completato correttamente o il tentativo ha causato un errore. Prima di restituire, il client disconnetterà anche dal servizio di provisioning. Se viene eseguito un tentativo di registrazione mentre è in corso una registrazione precedente, potrebbe generare un errore.
Una volta registrato correttamente il dispositivo, il client non sarà più operabile.
register()
Restituisce
Tipo | Descrizione |
---|---|
RegistrationResult che indica il risultato della registrazione. |
Eccezioni
Tipo | Descrizione |
---|---|
se le credenziali non sono valide e non è possibile stabilire una connessione. |
|
se la definizione di una connessione comporta un errore. |
|
se la connessione viene persa durante l'esecuzione. |
|
se la connessione si verifica il timeout. |
|
se si verifica un errore imprevisto durante l'esecuzione. |
Attributi
provisioning_payload
Azure SDK for Python