You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
IoT-For-Beginners/translations/it/2-farm/lessons/6-keep-your-plant-secure/single-board-computer-x509.md

3.8 KiB

Utilizzare il certificato X.509 nel codice del dispositivo - Hardware IoT Virtuale e Raspberry Pi

In questa parte della lezione, collegherai il tuo dispositivo IoT virtuale o Raspberry Pi al tuo IoT Hub utilizzando il certificato X.509.

Collegare il dispositivo a IoT Hub

Il prossimo passo è collegare il tuo dispositivo a IoT Hub utilizzando i certificati X.509.

Attività - collegarsi a IoT Hub

  1. Copia i file della chiave e del certificato nella cartella contenente il codice del tuo dispositivo IoT. Se stai utilizzando un Raspberry Pi tramite VS Code Remote SSH e hai creato le chiavi sul tuo PC o Mac, puoi trascinare e rilasciare i file nell'esploratore di VS Code per copiarli.

  2. Apri il file app.py

  3. Per connetterti utilizzando un certificato X.509, avrai bisogno del nome host dell'IoT Hub e del certificato X.509. Inizia creando una variabile contenente il nome host aggiungendo il seguente codice prima che venga creato il client del dispositivo:

    host_name = "<host_name>"
    

    Sostituisci <host_name> con il nome host del tuo IoT Hub. Puoi ottenerlo dalla sezione HostName nella connection_string. Sarà il nome del tuo IoT Hub, terminando con .azure-devices.net.

  4. Sotto questo, dichiara una variabile con l'ID del dispositivo:

    device_id = "soil-moisture-sensor-x509"
    
  5. Avrai bisogno di un'istanza della classe X509 contenente i file X.509. Aggiungi X509 alla lista delle classi importate dal modulo azure.iot.device:

    from azure.iot.device import IoTHubDeviceClient, Message, MethodResponse, X509
    
  6. Crea un'istanza della classe X509 utilizzando i tuoi file di certificato e chiave aggiungendo questo codice sotto la dichiarazione di host_name:

    x509 = X509("./soil-moisture-sensor-x509-cert.pem", "./soil-moisture-sensor-x509-key.pem")
    

    Questo creerà la classe X509 utilizzando i file soil-moisture-sensor-x509-cert.pem e soil-moisture-sensor-x509-key.pem creati in precedenza.

  7. Sostituisci la riga di codice che crea il device_client da una connection string con il seguente:

    device_client = IoTHubDeviceClient.create_from_x509_certificate(x509, host_name, device_id)
    

    Questo si connetterà utilizzando il certificato X.509 invece di una connection string.

  8. Elimina la riga con la variabile connection_string.

  9. Esegui il tuo codice. Monitora i messaggi inviati a IoT Hub e invia richieste di metodo diretto come prima. Vedrai il dispositivo connettersi e inviare letture di umidità del suolo, oltre a ricevere richieste di metodo diretto.

💁 Puoi trovare questo codice nella cartella code/pi o code/virtual-device.

😀 Il programma del tuo sensore di umidità del suolo è connesso al tuo IoT Hub utilizzando un certificato X.509!

Disclaimer:
Questo documento è stato tradotto utilizzando il servizio di traduzione automatica Co-op Translator. Sebbene ci impegniamo per garantire l'accuratezza, si prega di notare che le traduzioni automatiche possono contenere errori o imprecisioni. Il documento originale nella sua lingua nativa dovrebbe essere considerato la fonte autorevole. Per informazioni critiche, si raccomanda una traduzione professionale effettuata da un traduttore umano. Non siamo responsabili per eventuali fraintendimenti o interpretazioni errate derivanti dall'uso di questa traduzione.