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/ru/2-farm/lessons/6-keep-your-plant-secure/single-board-computer-x509.md

5.5 KiB

Использование сертификата X.509 в коде устройства - Виртуальное IoT-устройство и Raspberry Pi

В этой части урока вы подключите свое виртуальное IoT-устройство или Raspberry Pi к IoT Hub, используя сертификат X.509.

Подключение устройства к IoT Hub

Следующий шаг — подключить ваше устройство к IoT Hub с использованием сертификатов X.509.

Задача - подключение к IoT Hub

  1. Скопируйте файлы ключа и сертификата в папку, содержащую код вашего IoT-устройства. Если вы используете Raspberry Pi через VS Code Remote SSH и создали ключи на своем ПК или Mac, вы можете перетащить файлы в проводник в VS Code, чтобы скопировать их.

  2. Откройте файл app.py.

  3. Чтобы подключиться с использованием сертификата X.509, вам потребуется имя хоста IoT Hub и сам сертификат X.509. Начните с создания переменной, содержащей имя хоста, добавив следующий код перед созданием клиента устройства:

    host_name = "<host_name>"
    

    Замените <host_name> на имя хоста вашего IoT Hub. Вы можете найти его в разделе HostName в строке подключения connection_string. Это будет имя вашего IoT Hub, заканчивающееся на .azure-devices.net.

  4. Ниже этого объявите переменную с идентификатором устройства:

    device_id = "soil-moisture-sensor-x509"
    
  5. Вам потребуется экземпляр класса X509, содержащий файлы сертификата X.509. Добавьте X509 в список классов, импортируемых из модуля azure.iot.device:

    from azure.iot.device import IoTHubDeviceClient, Message, MethodResponse, X509
    
  6. Создайте экземпляр класса X509, используя ваши файлы сертификата и ключа, добавив этот код ниже объявления host_name:

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

    Это создаст класс X509, используя файлы soil-moisture-sensor-x509-cert.pem и soil-moisture-sensor-x509-key.pem, созданные ранее.

  7. Замените строку кода, которая создает device_client из строки подключения, на следующую:

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

    Это подключит устройство с использованием сертификата X.509 вместо строки подключения.

  8. Удалите строку с переменной connection_string.

  9. Запустите ваш код. Следите за сообщениями, отправляемыми в IoT Hub, и отправляйте запросы на выполнение методов, как и раньше. Вы увидите, как устройство подключается и отправляет данные о влажности почвы, а также принимает запросы на выполнение методов.

💁 Вы можете найти этот код в папке code/pi или code/virtual-device.

😀 Программа вашего датчика влажности почвы подключена к IoT Hub с использованием сертификата X.509!


Отказ от ответственности:
Этот документ был переведен с помощью сервиса автоматического перевода Co-op Translator. Несмотря на наши усилия обеспечить точность, автоматические переводы могут содержать ошибки или неточности. Оригинальный документ на его исходном языке следует считать авторитетным источником. Для получения критически важной информации рекомендуется профессиональный перевод человеком. Мы не несем ответственности за любые недоразумения или неправильные интерпретации, возникшие в результате использования данного перевода.