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.
71 lines
4.9 KiB
71 lines
4.9 KiB
<!--
|
|
CO_OP_TRANSLATOR_METADATA:
|
|
{
|
|
"original_hash": "9aea84bcc7520222b0e1c50469d62d6a",
|
|
"translation_date": "2025-08-26T23:07:20+00:00",
|
|
"source_file": "2-farm/lessons/6-keep-your-plant-secure/single-board-computer-x509.md",
|
|
"language_code": "ar"
|
|
}
|
|
-->
|
|
# استخدام شهادة X.509 في كود جهازك - الأجهزة الافتراضية لإنترنت الأشياء و Raspberry Pi
|
|
|
|
في هذا الجزء من الدرس، ستقوم بتوصيل جهاز إنترنت الأشياء الافتراضي الخاص بك أو Raspberry Pi بمركز إنترنت الأشياء الخاص بك باستخدام شهادة X.509.
|
|
|
|
## توصيل جهازك بمركز إنترنت الأشياء
|
|
|
|
الخطوة التالية هي توصيل جهازك بمركز إنترنت الأشياء باستخدام شهادات X.509.
|
|
|
|
### المهمة - الاتصال بمركز إنترنت الأشياء
|
|
|
|
1. انسخ ملفات المفتاح والشهادة إلى المجلد الذي يحتوي على كود جهاز إنترنت الأشياء الخاص بك. إذا كنت تستخدم Raspberry Pi عبر VS Code Remote SSH وقمت بإنشاء المفاتيح على جهاز الكمبيوتر أو Mac الخاص بك، يمكنك سحب وإفلات الملفات في المستكشف داخل VS Code لنسخها.
|
|
|
|
1. افتح ملف `app.py`
|
|
|
|
1. للاتصال باستخدام شهادة X.509، ستحتاج إلى اسم المضيف لمركز إنترنت الأشياء وشهادة X.509. ابدأ بإنشاء متغير يحتوي على اسم المضيف عن طريق إضافة الكود التالي قبل إنشاء عميل الجهاز:
|
|
|
|
```python
|
|
host_name = "<host_name>"
|
|
```
|
|
|
|
استبدل `<host_name>` باسم المضيف الخاص بمركز إنترنت الأشياء الخاص بك. يمكنك الحصول عليه من قسم `HostName` في `connection_string`. سيكون اسم مركز إنترنت الأشياء الخاص بك وينتهي بـ `.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. قم بتشغيل الكود الخاص بك. راقب الرسائل المرسلة إلى مركز إنترنت الأشياء، وأرسل طلبات الطرق المباشرة كما فعلت سابقًا. سترى الجهاز يتصل ويرسل قراءات رطوبة التربة، بالإضافة إلى استقبال طلبات الطرق المباشرة.
|
|
|
|
> 💁 يمكنك العثور على هذا الكود في المجلد [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!
|
|
|
|
---
|
|
|
|
**إخلاء المسؤولية**:
|
|
تم ترجمة هذا المستند باستخدام خدمة الترجمة بالذكاء الاصطناعي [Co-op Translator](https://github.com/Azure/co-op-translator). بينما نسعى لتحقيق الدقة، يرجى العلم أن الترجمات الآلية قد تحتوي على أخطاء أو معلومات غير دقيقة. يجب اعتبار المستند الأصلي بلغته الأصلية المصدر الرسمي. للحصول على معلومات حاسمة، يُوصى بالاستعانة بترجمة بشرية احترافية. نحن غير مسؤولين عن أي سوء فهم أو تفسيرات خاطئة تنشأ عن استخدام هذه الترجمة. |