|
|
# X.509 സർട്ടിഫിക്കറ്റ് നിങ്ങളുടെ ഡിവൈസ് കോഡിൽ ഉപയോഗിക്കുക - വെർച്വൽ IoT ഹാർഡ്വെയറും Raspberry Piയും
|
|
|
|
|
|
പാഠത്തിന് ഈ ഭാഗത്തിൽ, നിങ്ങൾ നിങ്ങളുടെ വെർച്വൽ IoT ഡിവൈസിനെ അല്ലെങ്കിൽ Raspberry Pi-നെ X.509 സർട്ടിഫിക്കറ്റ് ഉപയോഗിച്ച് നിങ്ങളുടെ IoT ഹബുമായി ബന്ധിപ്പിക്കും.
|
|
|
|
|
|
## നിങ്ങളുടെ ഡിവൈസ് IoT ഹബുമായി ബന്ധിപ്പിക്കുക
|
|
|
|
|
|
അടുത്ത പടി നിങ്ങളുടെ ഡിവൈസിനെ X.509 സർട്ടിഫിക്കറ്റുകൾ ഉപയോഗിച്ച് IoT ഹബുമായി ബന്ധിപ്പിക്കുകയാണ്.
|
|
|
|
|
|
### ടാസ്ക് - IoT ഹബുമായി ബന്ധിപ്പിക്കുക
|
|
|
|
|
|
1. കീയും സർട്ടിഫിക്കറ്റ് ഫയലുകളും നിങ്ങളുടെ IoT ഡിവൈസ് കോഡ് ഉള്ള ഫോൾഡറിൽ പകർത്തുക. നിങ്ങൾ VS Code Remote SSH വഴിയാണ് Raspberry Pi ഉപയോഗിക്കുന്നത്, കീസ് നിങ്ങളുടെ PC അല്ലെങ്കിൽ Mac-ൽ സൃഷ്ടിച്ചാൽ, ഫയലുകൾ VS Code എക്സ്പ്ലോററിൽ ഡ്രാഗ് ആൻഡ് ഡ്രോപ്പ് ചെയ്ത് പകർത്താം.
|
|
|
|
|
|
1. `app.py` ഫയൽ തുറക്കുക
|
|
|
|
|
|
1. X.509 സർട്ടിഫിക്കറ്റ് ഉപയോഗിച്ച് ബന്ധിപ്പിക്കാൻ, IoT ഹബിന്റെ ഹോസ്റ്റ് നെയിം, കൂടാതെ X.509 സർട്ടിഫിക്കറ്റ് ആവശ്യമുണ്ട്. ഡിവൈസ് ക്ലയന്റ് സൃഷ്ടിക്കുന്നതിന് മുന്പ് ഹോസ്റ്റ് നെയിം അടങ്ങിയ വേരിയബിൾ സൃഷ്ടിക്കാൻ താഴെയുള്ള കോഡ് ചേർക്കുക:
|
|
|
|
|
|
```python
|
|
|
host_name = "<host_name>"
|
|
|
```
|
|
|
|
|
|
`<host_name>` നിങ്ങളുടെ IoT ഹബിന്റെ ഹോസ്റ്റ് നെയിമിൽ മാറ്റുക. ഇത് `connection_string`-ലെ `HostName` നുംഖണ്ഡത്തിൽ നിന്ന് ലഭിക്കും. നിങ്ങളുടെ IoT ഹബിന്റെ പേര്, `.azure-devices.net` എന്നുമായി അവസാനിക്കുന്നതാണ്.
|
|
|
|
|
|
1. ഇതിന് താഴെ, ഡിവൈസ് ID ഉള്ള വേരിയബിൾ പ്രഖ്യാപിക്കുക:
|
|
|
|
|
|
```python
|
|
|
device_id = "soil-moisture-sensor-x509"
|
|
|
```
|
|
|
|
|
|
1. X.509 ഫയലുകൾ അടങ്ങിയ `X509` ക്ലാസ്സിന്റെ ഒരു ഇൻസ്റ്റൻസ് നിങ്ങൾ ആവശ്യമാണ്. `azure.iot.device` മോഡ്യൂളിൽ നിന്ന് ഇറക്കുമതി ചെയ്യുന്ന ക്ലാസ്സുകളുടെ പട്ടികയിൽ `X509` ചേർക്കുക:
|
|
|
|
|
|
```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")
|
|
|
```
|
|
|
|
|
|
ഇത് മുൻപായി സൃഷ്ടിച്ച `soil-moisture-sensor-x509-cert.pem` ഉം `soil-moisture-sensor-x509-key.pem` ഉം ഉപയോഗിച്ച് `X509` ക്ലാസ് സൃഷ്ടിക്കും.
|
|
|
|
|
|
1. കണക്ഷൻ സ്ട്രിങ്ങിൽ നിന്നുള്ള `device_client` സൃഷ്ടിക്കുന്ന കോഡ് പകരം താഴെയുള്ളത് ഉപയോഗിക്കുക:
|
|
|
|
|
|
```python
|
|
|
device_client = IoTHubDeviceClient.create_from_x509_certificate(x509, host_name, device_id)
|
|
|
```
|
|
|
|
|
|
ഇത് കണക്ഷൻ സ്ട്രിങ്ങ് ഉപയോഗിക്കുന്നതിനുപകരം X.509 സർട്ടിഫിക്കറ്റ് ഉപയോഗിച്ച് ബന്ധിപ്പിക്കും.
|
|
|
|
|
|
1. `connection_string` വേരിയബിൾ അടങ്ങിയ ലൈൻ ഡിലീറ്റ് ചെയ്യുക.
|
|
|
|
|
|
1. നിങ്ങളുടെ കോഡ് ഓടിക്കുക. IoT ഹുബിലേക്ക് അയക്കുന്ന സന്ദേശങ്ങൾ നിരീക്ഷിക്കുക, മുമ്പത്തെ പോലെ നേരിട്ട് മെത്തഡ് അഭ്യർത്ഥനകൾ അയയ്ക്കുക. ഡിവൈസ് കണക്ട് ചെയ്ത് മണ്ണ് ഈർപ്പം റീഡിങ്ങുകൾ അയക്കുകയും നേരിട്ടുള്ള മെത്തഡ് അഭ്യർത്ഥനകൾ സ്വീകരിക്കുകയും ചെയ്യുന്നത് കാണും.
|
|
|
|
|
|
> 💁 നിങ്ങൾക്ക് ഈ കോഡ് [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) ഫോൾഡറിൽ കണ്ടെത്താമെന്ന് ശ്രദ്ധിക്കുക.
|
|
|
|
|
|
😀 നിങ്ങളുടെ മണ്ണ് ഈർപ്പം സെൻസർ പ്രോഗ്രാം X.509 സർട്ടിഫിക്കറ്റ് ഉപയോഗിച്ച് നിങ്ങളുടെ IoT ഹബുമായി ബന്ധിപ്പിച്ചു!
|
|
|
|
|
|
---
|
|
|
|
|
|
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
|
|
**അസമ്പന്ധം**:
|
|
|
ഈ രേഖ AI പരിഭാഷാ സേവനം [കോ-ഓപ്പ് ട്രാൻസ്ലേറ്റർ](https://github.com/Azure/co-op-translator) ഉപയോഗിച്ച് പരിഭാഷപ്പെടുത്തിയതാണ്. ഞങ്ങൾ കൃത്യതയ്ക്കായി പരിശ്രമിക്കുമ്പോഴും, ഓട്ടോമാറ്റഡ് പരിഭാഷകളിൽ തെറ്റുകൾ അല്ലെങ്കിൽ അശുദ്ധികള് ഉണ്ടാകാമെന്ന് ദയവായി ശ്രദ്ധിക്കുക. ഈ രേഖയുടെ മാതൃഭാഷയിലെ അതിന്റെ പ്രാമാണിക പതിപ്പ് മാന്ദ്രീകാം. സുപ്രധാന വിവരങ്ങൾക്കായി വിദഗ്ധ മനുഷ്യ പരിഭാഷ ശുപാർശ ചെയ്യപ്പെടുന്നു. ഈ പരിഭാഷ ഉപയോഗിക്കുന്നതിനാൽ ഉണ്ടാകുന്ന എല്ലാ തെറ്റിദ്ധാരണകൾക്കും ഞങ്ങൾ ഉത്തരവാദികളല്ല.
|
|
|
<!-- CO-OP TRANSLATOR DISCLAIMER END --> |