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.
64 lines
6.3 KiB
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 --> |