5.1 KiB
استفاده از گواهی X.509 در کد دستگاه شما - سختافزار مجازی IoT و رزبری پای
در این بخش از درس، دستگاه مجازی IoT یا رزبری پای خود را با استفاده از گواهی X.509 به IoT Hub متصل خواهید کرد.
اتصال دستگاه به IoT Hub
گام بعدی اتصال دستگاه شما به IoT Hub با استفاده از گواهیهای X.509 است.
وظیفه - اتصال به IoT Hub
-
فایلهای کلید و گواهی را به پوشهای که کد دستگاه IoT شما در آن قرار دارد کپی کنید. اگر از رزبری پای از طریق VS Code Remote SSH استفاده میکنید و کلیدها را روی کامپیوتر شخصی یا مک خود ایجاد کردهاید، میتوانید فایلها را به سادگی با کشیدن و رها کردن در بخش اکسپلورر VS Code کپی کنید.
-
فایل
app.py
را باز کنید. -
برای اتصال با استفاده از گواهی X.509، به نام میزبان IoT Hub و گواهی X.509 نیاز دارید. ابتدا یک متغیر حاوی نام میزبان ایجاد کنید و کد زیر را قبل از ایجاد دستگاه کلاینت اضافه کنید:
host_name = "<host_name>"
<host_name>
را با نام میزبان IoT Hub خود جایگزین کنید. میتوانید این نام را از بخشHostName
درconnection_string
دریافت کنید. این نام همان نام IoT Hub شماست که با.azure-devices.net
خاتمه مییابد. -
در زیر این بخش، یک متغیر با شناسه دستگاه تعریف کنید:
device_id = "soil-moisture-sensor-x509"
-
به یک نمونه از کلاس
X509
که شامل فایلهای گواهی X.509 است نیاز خواهید داشت.X509
را به لیست کلاسهای وارد شده از ماژولazure.iot.device
اضافه کنید:from azure.iot.device import IoTHubDeviceClient, Message, MethodResponse, X509
-
یک نمونه از کلاس
X509
با استفاده از فایلهای گواهی و کلید خود ایجاد کنید. کد زیر را در زیر تعریفhost_name
اضافه کنید: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
که قبلاً ایجاد کردهاید، ایجاد میکند. -
خط کدی که
device_client
را از یک رشته اتصال ایجاد میکند، با کد زیر جایگزین کنید:device_client = IoTHubDeviceClient.create_from_x509_certificate(x509, host_name, device_id)
این کد به جای رشته اتصال، با استفاده از گواهی X.509 متصل میشود.
-
خطی که متغیر
connection_string
را تعریف میکند حذف کنید. -
کد خود را اجرا کنید. پیامهای ارسال شده به IoT Hub را مانیتور کنید و درخواستهای متد مستقیم را مانند قبل ارسال کنید. خواهید دید که دستگاه متصل شده و دادههای رطوبت خاک را ارسال میکند و همچنین درخواستهای متد مستقیم را دریافت میکند.
💁 میتوانید این کد را در پوشه code/pi یا code/virtual-device پیدا کنید.
😀 برنامه حسگر رطوبت خاک شما با استفاده از گواهی X.509 به IoT Hub متصل شد!
سلب مسئولیت:
این سند با استفاده از سرویس ترجمه هوش مصنوعی Co-op Translator ترجمه شده است. در حالی که ما تلاش میکنیم دقت را حفظ کنیم، لطفاً توجه داشته باشید که ترجمههای خودکار ممکن است شامل خطاها یا نادرستیها باشند. سند اصلی به زبان اصلی آن باید به عنوان منبع معتبر در نظر گرفته شود. برای اطلاعات حیاتی، توصیه میشود از ترجمه حرفهای انسانی استفاده کنید. ما مسئولیتی در قبال سوء تفاهمها یا تفسیرهای نادرست ناشی از استفاده از این ترجمه نداریم.