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

64 lines
6.3 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 អ្នកអាចទាញយកឯកសារទៅក្នុងកម្មវិធី explorer ក្នុង VS Code ដើម្បីចម្លង។
1. បើកឯកសារ `app.py`
1. ដើម្បីភ្ជាប់ដោយប្រើវិញ្ញាប័ណ្ណ X.509 អ្នកត្រូវការឈ្មោះម៉ាស៊ីនផ្ទះ (host name) របស់ IoT Hub និងវិញ្ញាប័ណ្ណ X.509។ ចាប់ផ្តើមដោយបង្កើតអថេរមួយដែលផ្ទុកឈ្មោះម៉ាស៊ីនផ្ទះដោយបញ្ចូលកូដនេះមុនពេលបង្កើត device client:
```python
host_name = "<host_name>"
```
ជំនួស `<host_name>` ជាឈ្មោះម៉ាស៊ីនផ្ទះរបស់ IoT Hub របស់អ្នក។ អ្នកអាចយកវាពីផ្នែក `HostName` នៅក្នុង `connection_string`។ វានឹងជា​ឈ្មោះ IoT Hub របស់អ្នក ដែលបញ្ចប់ដោយ `.azure-devices.net`
1. ក្រោមនេះ ប្រកាសអថេរមួយដែលមានអត្តសញ្ញាណឧបករណ៍:
```python
device_id = "soil-moisture-sensor-x509"
```
1. អ្នកត្រូវការជំនាន់មួយនៃ `X509` class ដែលមានឯកសារវិញ្ញាប័ណ្ណ X.509។ បន្ថែម `X509` ទៅក្នុងបញ្ជី class ដែលនាំចូលពីមូឌុល `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` class ដោយប្រើឯកសារ `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 DISCLAIMER START -->
**ការបដិសេធ**៖
ឯកសារនេះបានបកប្រែដោយប្រើសេវាកម្មបកប្រែ AI [Co-op Translator](https://github.com/Azure/co-op-translator)។ ខណៈពេលយើងខិតខំរកភាពត្រឹមត្រូវ សូមយល់ឲ្យដឹងថា ការបកប្រែដោយស្វ័យប្រវត្តិអាចមានកំហុស ឬអត្ថបទមិនបានត្រឹមត្រូវ។ ឯកសារដើមក្នុងភាសាដើមគួរត្រូវបានគេរៀបចំពុំថ្លៃថ្នូរជាប្រភពគ្រឹះ។ សម្រាប់ព័ត៌មានសំខាន់ៗ សូមផ្ដល់អាទិភាពការបកប្រែដោយមនុស្សជំនាញវិជ្ជាជីវៈ។ យើងមិនទទួលខុសត្រូវចំពោះការយល់ឃើញមិនត្រឹមត្រូវ ឬការបកប្រែខុសពីការប្រើប្រាស់ការបកប្រែនេះឡើយ។
<!-- CO-OP TRANSLATOR DISCLAIMER END -->