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

71 lines
5.4 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!--
CO_OP_TRANSLATOR_METADATA:
{
"original_hash": "9aea84bcc7520222b0e1c50469d62d6a",
"translation_date": "2025-08-28T14:55:34+00:00",
"source_file": "2-farm/lessons/6-keep-your-plant-secure/single-board-computer-x509.md",
"language_code": "sr"
}
-->
# Коришћење 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 = "<host_name>"
```
Замените `<host_name>` именом хоста вашег IoT Hub-а. Ово можете добити из секције `HostName` у `connection_string`. То ће бити име вашег IoT Hub-а, које се завршава са `.azure-devices.net`
1. Испод овога, декларишите променљиву са ID-јем уређаја:
```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` из connection string-а следећим:
```python
device_client = IoTHubDeviceClient.create_from_x509_certificate(x509, host_name, device_id)
```
Ово ће се повезати користећи X.509 сертификат уместо connection string-а.
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). Иако се трудимо да превод буде тачан, молимо вас да имате у виду да аутоматизовани преводи могу садржати грешке или нетачности. Оригинални документ на његовом изворном језику треба сматрати меродавним извором. За критичне информације препоручује се професионални превод од стране људског преводиоца. Не преузимамо одговорност за било каква погрешна тумачења или неспоразуме који могу настати услед коришћења овог превода.