استخدام الهويات المدارة للوصول إلى Azure Cosmos DB من وظيفة Azure Stream Analytics
يدعم Stream Analytics مصادقة الهوية المدارة لإخراج Azure Cosmos DB. تعمل الهويات المُدارة على التخلص من قيود أساليب المصادقة المستندة إلى المستخدم، مثل الحاجة إلى إعادة المصادقة بسبب تغييرات كلمة المرور أو انتهاء صلاحية الرمز المميز للمستخدم الذي يحدث كل 90 يومًا. عند إزالة الحاجة إلى المصادقة يدويًا، يمكن أن تكون عمليات توزيع Stream Analytics تلقائية بالكامل.
الهوية المدارة هي تطبيق مدار مسجل في معرف Microsoft Entra يمثل وظيفة Stream Analytics معينة. يتم استخدام التطبيق المُدار للمصادقة على مورد مستهدف. لمزيد من المعلومات حول الهويات المدارة لـ Azure Stream Analytics، راجع الهويات المدارة لـ Azure Stream Analytics.
توضح هذه المقالة كيفية تمكين الهوية المدارة المعينة من قبل النظام لإخراج Azure Cosmos DB لمهمة Stream Analytics من خلال مدخل Microsoft Azure. قبل أن تتمكن من تمكين الهوية المدارة المعينة من قبل النظام، يجب أن تكون لديك أولاً مهمة Stream Analytics ومورد Azure Cosmos DB.
إنشاء هوية مدارة
أولاً، يمكنك إنشاء هوية مدارة لمهمة Stream Analytics.
افتح مهمة Stream Analytics في مدخل Microsoft Azure.
من قائمة التنقل اليسرى، حدد Managed Identity الموجودة ضمن Configure. ثم حدد المربع الموجود بجوار Use System-assigned Managed Identity وحدد Save.
يتم إنشاء كيان خدمة لهوية وظيفة Stream Analytics في معرف Microsoft Entra. تُدار دورة حياة الهوية التي أُنشئت حديثًا عن طريق Azure. عند حذف مهمة Stream Analytics، يتم حذف الهوية المقترنة (أي كيان الخدمة) تلقائياً بواسطة Azure.
عند حفظ التكوين، يتم سرد معرف الكائن (OID) الخاص بكيان الخدمة كمعرف أساسي كما هو موضح أدناه:
يحمل كيان الخدمة نفس اسم مهمة Stream Analytics. على سبيل المثال، إذا كان اسم وظيفتك هو
MyASAJob
، فإن اسم مدير الخدمة يكون أيضاًMyASAJob
.
منح أذونات وظيفة Stream Analytics للوصول إلى حساب Azure Cosmos DB
لكي تتمكن وظيفة Stream Analytics من الوصول إلى Azure Cosmos DB باستخدام الهوية المدارة، يجب أن يكون لمدير الخدمة الذي أنشأته أذونات خاصة لحساب Azure Cosmos DB الخاص بك. في هذه الخطوة، يمكنك تعيين دور للهوية المدارة المعينة من قبل النظام لمهمة تحليلات الدفق. يحتوي Azure Cosmos DB على العديد من الأدوار المضمنة التي يمكنك تعيينها للهوية المُدارة. لهذا الحل، ستستخدم الدور التالي:
الدور مدمج |
---|
مساهم بيانات Cosmos DB المدمج |
هام
لا يتم الكشف عن التحكم في الوصول المستند إلى الدور (RBAC) لمستوى بيانات Azure Cosmos DB من خلال مدخل Microsoft Azure. لتعيين دور مساهم البيانات المضمن في Cosmos DB، يجب منح الإذن عبر Azure Powershell. لمزيد من المعلومات حول التحكم في الوصول المستند إلى الدور باستخدام معرف Microsoft Entra لحساب Azure Cosmos DB الخاص بك، يرجى مراجعة تكوين التحكم في الوصول المستند إلى الدور باستخدام معرف Microsoft Entra لوثائق حساب Azure Cosmos DB.
يمكن استخدام الأمر التالي لمصادقة وظيفة ASA باستخدام Azure Cosmos DB. و $accountName
$resourceGroupName
لحساب Azure Cosmos DB الخاص بك، وهي $principalId
القيمة التي تم الحصول عليها في الخطوة السابقة، في علامة تبويب الهوية لمهمة ASA. يجب أن يكون لديك حق الوصول "المساهم" إلى حساب Azure Cosmos DB الخاص بك حتى يعمل هذا الأمر بشكل صحيح.
New-AzCosmosDBSqlRoleAssignment -AccountName $accountName -ResourceGroupName $resourceGroupName -RoleDefinitionId '00000000-0000-0000-0000-000000000002' -Scope "/" -PrincipalId $principalId
إشعار
بسبب النسخ المتماثل العمومي أو زمن انتقال التخزين المؤقت، قد يكون هناك تأخير عند إبطال الأذونات أو منحها. يجب أن تنعكس التغييرات في غضون 10 دقائق. على الرغم من أن اتصال الاختبار يمكن أن يمر في البداية، قد تفشل المهام عند بدء تشغيلها قبل نشر الأذونات بشكل كامل.
هام
إذا لم يتم تكوين حساب CosmosDB لقبول الاتصالات من جميع الشبكات، يجب تحديد قبول الاتصالات من داخل مراكز بيانات Azure العامة.
إضافة Azure Cosmos DB كإخراج
الآن بعد تكوين هويتك المدارة، أنت مستعد لإضافة مورد Azure Cosmos DB كإخراج إلى وظيفة Stream Analytics.
انتقل إلى مهمة Stream Analytics وانتقل إلى صفحة المخرجات ضمن تخطيط شبكة المهام.
حدد Add > Azure Cosmos DB. في نافذة خصائص الإخراج، ابحث عن حساب Azure Cosmos DB وحدد الهوية المدارة: النظام المعين من القائمة المنسدلة وضع المصادقة.
املأ بقية الخصائص وحدد حفظ.