استخدام عوامل تصفية بروتوكول الإنترنت
الأمان هو جانب مهم من أي حلِ إنترنت أشياء يستند إلى Azure IoT Hub. في بعض الأحيان تحتاج إلى تحديد عناوين بروتوكول الإنترنت التي يمكن للأجهزة الاتصال منها كجزء من تكوين الأمان الخاص بك بشكل صريح. تمكنك ميزة عامل تصفية بروتوكول الإنترنت من تكوين قواعد لرفض نسبة استخدام الشبكة أو قبولها من عناوين IPv4 محددة.
وقت الاستخدام
استخدم عامل تصفية IP لتلقي نسبة استخدام الشبكة فحسب من نطاق محدد من عناوين بروتوكول الإنترنت ويرفض كل شيء آخر. على سبيل المثال، تستخدم IoT Hub مع Azure Express Route لإنشاء اتصالات خاصة بين IoT Hub والبنية الأساسية المحلية.
الإعداد الافتراضي
للوصول إلى صفحة إعدادات عامل تصفية IP في مركز IoT، حدد إعدادات الأمان الوصول العام للشبكات>>، ثم اختر نطاقات IP المحددة:
بشكل افتراضي، شبكة عامل تصفية بروتوكول الإنترنت في المدخل لمركز إنترنت الأشياء فارغة. يعني هذا الإعداد الافتراضي أن المركز يمنع الاتصالات من أي عناوين بروتوكول إنترنت. هذا الإعداد الافتراضي يُعادل قاعدة تمنع نطاق عناوين IP 0.0.0.0/0
.
إضافة قاعدة عامل تصفية بروتوكول الإنترنت أو تحريرها
لإضافة قاعدة عامل تصفية IP، حدد إضافة قاعدة تصفية IP. لإضافة عنوان IP للكمبيوتر بسرعة، حدد إضافة عنوان IP للعميل.
بعدما تُحدد Add IP Filter Rule، املأ الحقول. يتم ملء هذه الحقول مسبقا إذا قمت بتحديد لإضافة عنوان IP للعميل.
أدخل اسمًا لقاعدة عامل تصفية بروتوكول الإنترنت. يجب أن يكون هذا الاسم سلسلة أبجدية رقمية فريدة غير حساسة لحالة الأحرف يصل طولها إلى 128 حرفًا. يتم قبول الأحرف الأبجدية الرقمية من ASCII 7 بت فحسب بالإضافة إلى الأحرف الخاصة التالية:
- : . + % _ # * ? ! ( ) , = @ ; '
.قم بتوفير عنوان IPv4 واحد أو كتلة من عناوين بروتوكول إنترنت في شفرة CIDR. على سبيل المثال، في رمز CIDR 192.168.100.0/22 يُمثل عناوين IPv4 1024 من 192.168.100.0 إلى 192.168.103.255.
بعد ملء الحقول، حدد Save لحفظ القاعدة. ترى تنبيهًا يعلمك بأن التحديث قيد التقدم.
يتم تعطيل الخيار Add عند الوصول إلى 100 قواعد لتصفية IP كحد أقصى.
لتحرير قاعدة موجودة، حدد البيانات التي تريد تغييرها، وقم بإجراء التغيير، ثم حدد Save لحفظ التحرير.
حذف قاعدة عامل تصفية IP
لحذف قاعدة عامل تصفية IP، حدد أيقونة سلة المهملات في هذا الصف، ثم حدد حفظ. تُزال القاعدة ويحفظ التغيير.
تطبيق قواعد عامل تصفية IP على نقطة النهاية المتوافقة مع مراكز الأحداث المضمنة
لتطبيق قواعد عامل تصفية IP على نقطة النهاية المتوافقة مع مراكز الأحداث المضمنة، حدد المربع بجوار تطبيق عوامل تصفية IP على نقطة النهاية المضمنة؟، ثم حدد حفظ.
إشعار
هذا الخيار غير متوفر لمراكز IoT المجانية (F1). لتطبيق قواعد عامل تصفية بروتوكول الإنترنت على نقطة النهاية المضمنة، استخدم مركز إنترنت أشياء مدفوع.
من خلال تمكين هذا الخيار، يتم نسخ قواعد عامل تصفية IP إلى نقطة النهاية المضمنة، حتى يمكن لنطاقات IP الموثوق بها الوصول إليها فحسب.
إذا قمت بتعطيل هذا الخيار، يمكن الوصول إلى نقطة النهاية المضمنة لجميع عناوين IP. يمكن أن يكون هذا السلوك مفيدا إذا كنت تريد القراءة من نقطة النهاية باستخدام الخدمات ذات عناوين IP المصدر التي قد تتغير بمرور الوقت مثل Azure Stream Analytics.
طريقة تطبيق قواعد عامل التصفية
يتم تطبيق قواعد عامل تصفية بروتوكول الإنترنت على مستوى خدمة IoT Hub. لذلك، تنطبق قواعد عامل تصفية IP على جميع الاتصالات من الأجهزة والتطبيقات الخلفية باستخدام أي بروتوكول مدعوم. يمكنك أيضا اختيار ما إذا كانت نقطة النهاية المتوافقة مع مراكز الأحداث المضمنة (وليس عبر سلسلة الاتصال IoT Hub) مرتبطة بهذه القواعد.
تتلقى أي محاولة اتصال من عنوان IP غير مسموح به بشكل صريح رمز حالة ووصف 401 غير مصرح به. لا تذكر رسالة الاستجابة قاعدة IP. يمكن أن يمنع رفض عناوين IP خدمات Azure الأخرى مثل Azure Stream Analytics أو أجهزة Azure الظاهرية أو مستكشف الأجهزة في مدخل Microsoft Azure من التفاعل مع IoT Hub.
إشعار
إذا كنت تريد استخدام Azure Stream Analytics (ASA) لقراءة الرسائل من مركز IoT مع تمكين عامل تصفية IP، قم بتعطيل الخيار تطبيق عوامل تصفية IP على نقطة النهاية المضمنة، ثم استخدم الاسم المتوافق مع محور الحدث ونقطة النهاية لمركز IoT الخاص بك لإضافة إدخال دفق Event Hubs يدويًا في ASA.
مدخل Azure
يتم تطبيق قواعد عامل تصفية IP أيضًا عند استخدام IoT Hub من خلال مدخل Microsoft Azure. هذا لأن استدعاءات واجهة برمجة التطبيقات لخدمة IoT Hub يتم إجراؤها مباشرة باستخدام المستعرض الخاص بك مع بيانات الاعتماد الخاصة بك، والتي تتوافق مع خدمات Azure الأخرى. للوصول إلى IoT Hub باستخدام مدخل Microsoft Azure عند تمكين عامل تصفية IP، أضف عنوان IP للكمبيوتر إلى قائمة السماح.
الطلبات
قواعد تصفية IP هي قواعد السماح ويتم تطبيقها دون ترتيب. يسمح لعناوين IP التي تضيفها بالاتصال بـ IoT Hub فحسب.
على سبيل المثال، إذا كنت تريد قبول العناوين الموجودة في النطاق 192.168.100.0/22
ورفض كل شيء آخر، فأنت تحتاج إلى إضافة قاعدة واحدة فقط في الشبكة بنطاق العنوان 192.168.100.0/22
.
استرداد وتحديث عوامل تصفية بروتوكول الإنترنت باستخدام واجهة سطر الأوامر من Azure
يمكن استرداد عوامل تصفية IP لمركز IoT وتحديثها من خلال Azure CLI.
لاسترداد عوامل تصفية بروتوكول الإنترنت الحالية لـ IoT Hub، قم بتشغيل:
az resource show -n <iothubName> -g <resourceGroupName> --resource-type Microsoft.Devices/IotHubs
يؤدي ذلك إلى إرجاع كائن JSON حيث يتم سرد عوامل تصفية IP الموجودة أسفل properties.networkRuleSets
المفتاح:
{
...
"properties": {
"networkRuleSets": {
"defaultAction": "Deny",
"applyToBuiltInEventHubEndpoint": true,
"ipRules": [{
"filterName": "TrustedFactories",
"action": "Allow",
"ipMask": "1.2.3.4/5"
},
{
"filterName": "TrustedDevices",
"action": "Allow",
"ipMask": "1.1.1.1/1"
}
]
}
}
}
لإضافة عامل تصفية بروتوكول الإنترنت جديد IoT Hub الخاص بك، قم بتشغيل:
az resource update -n <iothubName> -g <resourceGroupName> --resource-type Microsoft.Devices/IotHubs --add properties.networkRuleSets.ipRules "{\"action\":\"Allow\",\"filterName\":\"TrustedIP\",\"ipMask\":\"192.168.0.1\"}"
لإزالة عامل تصفية بروتوكول الإنترنت موجود في IoT Hub، قم بتشغيل:
az resource update -n <iothubName> -g <resourceGroupName> --resource-type Microsoft.Devices/IotHubs --add properties.networkRuleSets.ipRules <ipFilterIndexToRemove>
هنا، <ipFilterIndexToRemove>
يتوافق مع ترتيب عوامل تصفية IP في مركز properties.networkRuleSets.ipRules
IoT الخاص بك.
استرداد وتحديث عوامل تصفية بروتوكول الإنترنت باستخدام Azure PowerShell
إشعار
نوصي باستخدام الوحدة النمطية Azure Az PowerShell للتفاعل مع Azure. للبدء، راجع تثبيت Azure PowerShell. لمعرفة كيفية الترحيل إلى الوحدة النمطية Az PowerShell، راجع ترحيل Azure PowerShell من AzureRM إلى Az.
يمكن استرداد عوامل تصفية بروتوكول الإنترنت الخاصة بـ IoT Hub وتحديثها من خلال Azure PowerShell.
# Get your IoT Hub resource using its name and its resource group name
$iothubResource = Get-AzResource -ResourceGroupName <resourceGroupName> -ResourceName <iotHubName> -ExpandProperties
# Access existing IP filter rules
$iothubResource.Properties.networkRuleSets.ipRules |% { Write-host $_ }
# Construct a new IP filter
$filter = @{'filterName'='TrustedIP'; 'action'='Allow'; 'ipMask'='192.168.0.1'}
# Add your new IP filter rule
$iothubResource.Properties.networkRuleSets.ipRules += $filter
# Remove an existing IP filter rule using its name, e.g., 'GoodIP'
$iothubResource.Properties.networkRuleSets.ipRules = @($iothubResource.Properties.networkRuleSets.ipRules | Where 'filterName' -ne 'GoodIP')
# Update your IoT Hub resource with your updated IP filters
$iothubResource | Set-AzResource -Force
تحديث قواعد تصفية بروتوكول الإنترنت باستخدام REST
يمكنك أيضا استرداد وتعديل عامل تصفية IP الخاص ب IoT Hub باستخدام نقطة نهاية REST لموفر موارد Azure. راجع properties.networkRuleSets
في أسلوب createorupdate.
الخطوات التالية
لمزيد من استكشاف قدرات IoT Hub، راجع: