# Використання сертифіката 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, щоб скопіювати їх. 1. Відкрийте файл `app.py`. 1. Для підключення за допомогою сертифіката X.509 вам знадобиться ім'я хоста IoT Hub і сертифікат X.509. Почніть із створення змінної, яка містить ім'я хоста, додавши наступний код перед створенням клієнта пристрою: ```python host_name = "" ``` Замініть `` на ім'я хоста вашого IoT Hub. Ви можете отримати його з розділу `HostName` у `connection_string`. Це буде ім'я вашого IoT Hub, яке закінчується на `.azure-devices.net`. 1. Нижче цього оголосіть змінну з ідентифікатором пристрою: ```python device_id = "soil-moisture-sensor-x509" ``` 1. Вам знадобиться екземпляр класу `X509`, який містить файли X.509. Додайте `X509` до списку класів, імпортованих із модуля `azure.iot.device`: ```python from azure.iot.device import IoTHubDeviceClient, Message, MethodResponse, X509 ``` 1. Створіть екземпляр класу `X509`, використовуючи ваші файли сертифіката та ключа, додавши цей код нижче оголошення `host_name`: ```python 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`, створені раніше. 1. Замініть рядок коду, який створює `device_client` із рядка підключення, на наступний: ```python device_client = IoTHubDeviceClient.create_from_x509_certificate(x509, host_name, device_id) ``` Це дозволить підключитися за допомогою сертифіката X.509 замість рядка підключення. 1. Видаліть рядок зі змінною `connection_string`. 1. Запустіть ваш код. Слідкуйте за повідомленнями, які надсилаються до IoT Hub, і надсилайте запити на прямі методи, як раніше. Ви побачите, як пристрій підключається та надсилає показники вологості ґрунту, а також отримує запити на прямі методи. > 💁 Ви можете знайти цей код у папці [code/pi](../../../../../2-farm/lessons/6-keep-your-plant-secure/code/pi) або [code/virtual-device](../../../../../2-farm/lessons/6-keep-your-plant-secure/code/virtual-device). 😀 Програма вашого датчика вологості ґрунту підключена до IoT Hub за допомогою сертифіката X.509! --- **Відмова від відповідальності**: Цей документ було перекладено за допомогою сервісу автоматичного перекладу [Co-op Translator](https://github.com/Azure/co-op-translator). Хоча ми прагнемо до точності, будь ласка, майте на увазі, що автоматизовані переклади можуть містити помилки або неточності. Оригінальний документ на його рідній мові слід вважати авторитетним джерелом. Для критичної інформації рекомендується професійний людський переклад. Ми не несемо відповідальності за будь-які непорозуміння або неправильні тлумачення, що виникають внаслідок використання цього перекладу.