إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
تتضمن الإعدادات الآمنة لعمليات Azure IoT إعداد إدارة البيانات السرية والهوية المدارة المعينة من قبل المستخدم للاتصالات السحابية؛ على سبيل المثال، خادم OPC UA أو نقاط نهاية تدفق البيانات.
توفر هذه المقالة إرشادات لتمكين الإعدادات الآمنة إذا لم تقم بذلك أثناء النشر الأولي.
المتطلبات الأساسية
مثيل Azure IoT Operations تم نشره مع إعدادات الاختبار.
تم تثبيت Azure CLI على جهاز التطوير الخاص بك. يتطلب هذا السيناريو إصدار Azure CLI 2.53.0 أو أعلى. استخدم
az --versionللتحقق من الإصدار وتحديثهaz upgradeإذا لزم الأمر. لمزيد من المعلومات، راجع كيفية تثبيت Azure CLI.أحدث إصدار من ملحق connectedk8s ل Azure CLI. استخدم الأمر التالي لإضافة الملحق أو تحديثه إلى أحدث إصدار:
az extension add --upgrade --name connectedk8sملحق عمليات Azure IoT ل Azure CLI. استخدم الأمر التالي لإضافة الملحق أو تحديثه إلى أحدث إصدار:
az extension add --upgrade --name azure-iot-ops
تمكين نظام المجموعة للإعدادات الآمنة
لتمكين مزامنة الأسرار لمثيل Azure IoT Operations، يجب تمكين ميزات اتحاد هوية مصدر OIDCوحمل العمل على نظام المجموعة الخاص بك. هذا التكوين مطلوب لملحق مخزن Azure Key Vault السري لمزامنة الأسرار من Azure Key Vault وتخزينها على الحافة كأسرار Kubernetes.
بالنسبة لمجموعات Azure Kubernetes Service (AKS)، يمكن تمكين مصدر OIDC وميزات هوية حمل العمل فقط في وقت إنشاء نظام المجموعة. بالنسبة للمجموعات على AKS Edge Essentials، يمكن البرنامج النصي التلقائي هذه الميزات بشكل افتراضي. بالنسبة لمجموعات AKS على Azure Local، اتبع الخطوات لنشر هوية حمل العمل وتكوينها على AKS التي تم تمكينها بواسطة نظام مجموعة Azure Arc لإنشاء نظام مجموعة جديد إذا لم يكن لديك واحد مع الميزات المطلوبة.
بالنسبة إلى مجموعات k3s على Kubernetes، يمكنك تحديث نظام مجموعة موجود. لتمكين هذه الميزات وتكوينها، استخدم الخطوات التالية:
تحديث نظام المجموعة لتمكين مصدر OIDC وهوية حمل العمل.
az connectedk8s update -n <CLUSTER_NAME> -g <RESOURCE_GROUP> --enable-oidc-issuer --enable-workload-identityإذا قمت بتمكين مصدر OIDC وميزات هوية حمل العمل عند إنشاء نظام المجموعة، فلن تحتاج إلى تشغيل الأمر السابق مرة أخرى. استخدم الأمر التالي للتحقق من حالة مصدر OIDC وميزات هوية حمل العمل لنظام المجموعة:
az connectedk8s show -g <RESOURCE_GROUP> -n <CLUSTER_NAME> --query "{ClusterName:name, OIDCIssuerEnabled:oidcIssuerProfile.enabled, WorkloadIdentityEnabled:securityProfile.workloadIdentity.enabled}"احصل على عنوان URL لمصدر نظام المجموعة.
az connectedk8s show -g <RESOURCE_GROUP> -n <CLUSTER_NAME> --query oidcIssuerProfile.issuerUrl --output tsvقم بتدوين الإخراج من هذا الأمر لاستخدامه في الخطوات التالية.
إنشاء ملف تكوين k3s على الجهاز حيث قمت بنشر مجموعة Kubernetes الخاصة بك:
sudo nano /etc/rancher/k3s/config.yamlأضف المحتوى التالي إلى
config.yamlالملف، واستبدل<SERVICE_ACCOUNT_ISSUER>العنصر النائب بعنوان URL لمصدر نظام المجموعة الذي قمت بتدوينه مسبقا:kube-apiserver-arg: - service-account-issuer=<SERVICE_ACCOUNT_ISSUER> - service-account-max-token-expiration=24hاحفظ الملف واخرج من محرر nano.
أعد تشغيل خدمة k3s:
sudo systemctl restart k3s
إعداد إدارة البيانات السرية
تستخدم إدارة الأسرار لعمليات Azure IoT ملحق المخزن السري لمزامنة الأسرار من Azure Key Vault وتخزينها على الحافة كأسرار Kubernetes. يتطلب ملحق المخزن السري هوية مدارة يعينها المستخدم مع الوصول إلى Azure Key Vault حيث يتم تخزين الأسرار. لمعرفة المزيد، راجع ما هي الهويات المدارة لموارد Azure؟.
لإعداد إدارة الأسرار:
إنشاء Azure Key Vault الذي يستخدم لتخزين الأسرار، ومنح حساب المستخدم أذونات لإدارة الأسرار مع
Key Vault Secrets Officerالدور.إنشاء هوية مدارة معينة من قبل المستخدم لملحق المخزن السري لاستخدامها للوصول إلى مخزن المفاتيح.
استخدم الأمر az iot ops secretsync enable لإعداد مثيل عمليات Azure IoT للمزامنة السرية. هذا الأمر:
- إنشاء بيانات اعتماد هوية موحدة باستخدام الهوية المدارة المعينة من قبل المستخدم.
- إضافة تعيين دور إلى الهوية المدارة المعينة من قبل المستخدم للوصول إلى Azure Key Vault.
- يضيف الحد الأدنى من فئة موفر البيانات السرية المقترنة بمثيل عمليات Azure IoT.
# Variable block AIO_INSTANCE_NAME="<AIO_INSTANCE_NAME>" RESOURCE_GROUP="<RESOURCE_GROUP>" USER_ASSIGNED_MI_NAME="<USER_ASSIGNED_MI_NAME>" KEYVAULT_NAME="<KEYVAULT_NAME>" #Get the resource ID of the user-assigned managed identity USER_ASSIGNED_MI_RESOURCE_ID=$(az identity show --name $USER_ASSIGNED_MI_NAME --resource-group $RESOURCE_GROUP --query id --output tsv) #Get the resource ID of the key vault KEYVAULT_RESOURCE_ID=$(az keyvault show --name $KEYVAULT_NAME --resource-group $RESOURCE_GROUP --query id --output tsv) #Enable secret synchronization az iot ops secretsync enable --instance $AIO_INSTANCE_NAME \ --resource-group $RESOURCE_GROUP \ --mi-user-assigned $USER_ASSIGNED_MI_RESOURCE_ID \ --kv-resource-id $KEYVAULT_RESOURCE_ID
الآن بعد اكتمال إعداد مزامنة البيانات السرية، يمكنك الرجوع إلى إدارة الأسرار لنشر عمليات Azure IoT لمعرفة كيفية استخدام الأسرار مع عمليات Azure IoT.
إعداد هوية مدارة يعينها المستخدم للاتصالات السحابية
تستخدم بعض مكونات عمليات Azure IoT، مثل نقاط نهاية تدفق البيانات، هوية مدارة يعينها المستخدم للاتصالات السحابية. نوصي باستخدام هوية منفصلة عن الهوية التي استخدمتها لإعداد إدارة الأسرار.
إنشاء هوية مدارة معينة من قبل المستخدم تستخدم للاتصالات السحابية.
إشعار
ستحتاج إلى منح إذن الهوية لأي مورد سحابي ستستخدم الهوية المدارة له.
استخدم الأمر az iot ops identity assign لتعيين الهوية إلى مثيل عمليات Azure IoT. ينشئ هذا الأمر أيضا بيانات اعتماد هوية موحدة باستخدام مصدر OIDC للمجموعة المتصلة المشار إليها وحساب خدمة عمليات Azure IoT.
# Variable block AIO_INSTANCE_NAME="<AIO_INSTANCE_NAME>" RESOURCE_GROUP="<RESOURCE_GROUP>" USER_ASSIGNED_MI_NAME="<USER_ASSIGNED_MI_NAME FOR CLOUD CONNECTIONS>" #Get the resource ID of the user-assigned managed identity USER_ASSIGNED_MI_RESOURCE_ID=$(az identity show --name $USER_ASSIGNED_MI_NAME --resource-group $RESOURCE_GROUP --query id --output tsv) #Assign the identity to the Azure IoT Operations instance az iot ops identity assign --name $AIO_INSTANCE_NAME \ --resource-group $RESOURCE_GROUP \ --mi-user-assigned $USER_ASSIGNED_MI_RESOURCE_IDأعد تشغيل جراب تسجيل المخطط لتطبيق الهوية الجديدة.
kubectl delete pods adr-schema-registry-0 adr-schema-registry-1 -n azure-iot-operations
يمكنك الآن استخدام هذه الهوية المدارة في نقاط نهاية تدفق البيانات للاتصالات السحابية.