إدارة الهويات والأذونات والامتيازات لوظائف Databricks
تحتوي هذه المقالة على توصيات وإرشادات لإدارة الهويات والأذونات والامتيازات لوظائف Databricks.
ملاحظة
لا يتم تنقيح الأسرار من سجل stdout
برنامج تشغيل Spark وتدفقاته stderr
. لحماية البيانات الحساسة، بشكل افتراضي، لا يمكن عرض سجلات برنامج تشغيل Spark إلا من قبل المستخدمين الذين لديهم إذن CAN MANAGE في الوظيفة ووضع وصول مستخدم واحد ومجموعات وضع الوصول المشترك. للسماح للمستخدمين الذين لديهم الإذن CAN ATTACH TO أو CAN RESTART بعرض السجلات على هذه المجموعات، قم بتعيين خاصية تكوين Spark التالية في تكوين نظام المجموعة: spark.databricks.acl.needAdminPermissionToViewLogs false
.
في أنظمة مجموعات وضع الوصول المشترك للعزل، يمكن عرض سجلات برنامج تشغيل Spark من قبل المستخدمين الذين لديهم إذن CAN ATTACH TO أو CAN MANAGE. لتحديد من يمكنه قراءة السجلات للمستخدمين الذين لديهم إذن CAN MANAGE فقط، قم بتعيين spark.databricks.acl.needAdminPermissionToViewLogs
إلى true
.
راجع تكوين Spark لمعرفة كيفية إضافة خصائص Spark إلى تكوين نظام المجموعة.
الوظائف لها الامتيازات التالية التي تم تعيينها بشكل افتراضي:
- يتم منح منشئ الوظيفة إذن IS OWNER.
- يتم منح مسؤولي مساحة العمل إذن CAN MANAGE.
- تم تعيين منشئ الوظيفة ل Run as.
بشكل افتراضي، يمكن لمسؤولي مساحة العمل تغيير مالك الوظيفة أو تشغيل كتكوين إلى أي مستخدم أو كيان خدمة في مساحة العمل. يمكن لمسؤولي الحساب تكوين RestrictWorkspaceAdmins
الإعداد لتغيير هذا السلوك. راجع تقييد مسؤولي مساحة العمل.
تعمل المهام كهوية للمستخدم في إعداد تشغيل ك . يتم تقييم هذه الهوية مقابل منح الإذن لما يلي:
- الأصول المدارة بواسطة كتالوج Unity، بما في ذلك الجداول ووحدات التخزين والنماذج وطرق العرض.
- قوائم التحكم في الوصول إلى الجدول القديمة (ACLs) للأصول المسجلة في Hive metastore القديم.
- قوائم التحكم بالوصول للحوسبة ودفاتر الملاحظات والاستعلامات وأصول مساحة العمل الأخرى.
- أسرار Databricks. راجع إدارة البيانات السرية.
ملاحظة
تتطلب منح كتالوج Unity وقوائم التحكم بالوصول إلى الجداول القديمة أوضاع وصول حوسبة متوافقة. راجع تكوين الحساب للوظائف.
مهمة الملف هي نوع مهمة SQL الوحيد الذي يحترم الهوية تشغيل كهوية بالكامل.
تحترم استعلامات SQL والتنبيهات ومهام لوحة المعلومات القديمة إعدادات المشاركة المكونة.
- تشغيل كمالك: تستخدم عمليات تشغيل مهمة SQL المجدولة دائما هوية مالك أصل SQL المكون.
- تشغيل كعارض: يستخدم تشغيل مهمة SQL المجدولة دائما مجموعة الهوية في حقل تشغيل كوظيفة.
لمعرفة المزيد حول إعدادات مشاركة الاستعلام، راجع تكوين أذونات الاستعلام.
يوضح السيناريو التالي تفاعل إعدادات مشاركة SQL وإعداد الوظيفة تشغيل ك :
- المستخدم A هو مالك استعلام SQL المسمى
my_query
. - يقوم المستخدم A بتكوين
my_query
إعداد المشاركة تشغيل كمالك. - يقوم المستخدم ب بجدولة
my_query
كمهمة في مهمة تسمىmy_job
. - يقوم المستخدم B بتكوين
my_job
للتشغيل مع مبدأ خدمة يسمىprod_sp
. - عند
my_job
التشغيل، فإنه يستخدم هوية المستخدم A لتشغيلmy_query
.
افترض الآن أن المستخدم B لا يريد هذا السلوك. بدءا من التكوين الموجود، يحدث ما يلي:
- يقوم المستخدم A بتغيير إعداد المشاركة إلى
my_query
تشغيل كعارض. - عند
my_job
التشغيل، فإنه يستخدم التعريفprod_sp
.
لتغيير الإعداد تشغيل باسم ، يجب أن يكون لديك إذن CAN MANAGE أو IS OWNER في المهمة.
يمكنك تعيين الإعداد تشغيل ك لنفسك أو أي كيان خدمة في مساحة العمل التي لديك استحقاق المستخدم الأساسي للخدمة عليها.
لتكوين إعداد Run as لوظيفة في واجهة مستخدم مساحة العمل، حدد وظيفة موجودة باستخدام الخطوات التالية:
- انقر فوق مهام سير العمل في الشريط الجانبي.
- في العمود الاسم ، انقر فوق اسم المهمة.
- في اللوحة الجانبية تفاصيل المهمة، انقر فوق أيقونة القلم الرصاص بجوار الحقل تشغيل باسم .
- ابحث عن مستخدم أو كيان خدمة وحدده.
- انقر فوق حفظ.
لمزيد من المعلومات حول العمل مع كيانات الخدمة، راجع ما يلي:
توصي Databricks بما يلي لجميع مهام الإنتاج:
تعيين ملكية الوظيفة إلى كيان الخدمة
إذا غادر المستخدم الذي يمتلك وظيفة مؤسستك، فقد تفشل المهمة. استخدم كيانات الخدمة لجعل الوظائف قوية لخسارة الموظفين.
بشكل افتراضي، يمكن لمسؤولي مساحة العمل إدارة أذونات المهمة وإعادة تعيين الملكية إذا لزم الأمر.
تشغيل مهام الإنتاج باستخدام كيان الخدمة
يتم تشغيل المهام باستخدام امتيازات مالك الوظيفة بشكل افتراضي. إذا قمت بتعيين الملكية إلى كيان خدمة، فإن تشغيل الوظيفة يستخدم أذونات كيان الخدمة.
يسمح لك استخدام كيانات الخدمة لمهام الإنتاج بتقييد أذونات الكتابة على بيانات الإنتاج. إذا قمت بتشغيل المهام باستخدام أذونات المستخدم، يحتاج هذا المستخدم إلى نفس الأذونات لتحرير بيانات الإنتاج التي تتطلبها الوظيفة.
استخدم دائما تكوينات الحوسبة المتوافقة مع كتالوج Unity
تتطلب إدارة بيانات كتالوج Unity استخدام تكوين حساب مدعوم.
تستخدم الحوسبة بلا خادم للوظائف ومستودعات SQL دائما كتالوج Unity.
بالنسبة للوظائف ذات الحوسبة الكلاسيكية، توصي Databricks بوضع الوصول المشترك لأحمال العمل المدعومة. استخدم وضع وصول مستخدم واحد عند الحاجة.
تحتوي مسارات Delta Live Tables التي تم تكوينها باستخدام كتالوج Unity على بعض القيود. راجع القيود.
تقييد الأذونات على مهام الإنتاج
يحتاج المستخدمون الذين يقومون بتشغيل مهمة التشغيل أو إيقافها أو إعادة تشغيلها إلى إذن Can Manage Run .
يحتاج المستخدمون الذين يعرضون تكوين الوظيفة أو تشغيل جهاز العرض إلى إذن يمكن العرض .
منح فقط يمكن إدارة أو هو امتيازات المالك للمستخدمين الموثوق بهم لتعديل التعليمات البرمجية للإنتاج.
يتيح التحكم في الوصول إلى الوظائف لمالكي الوظائف والمسؤولين منح أذونات دقيقة على الوظائف. تتوفر الأذونات التالية:
ملاحظة
يتضمن كل إذن منح الأذونات أدناه في الجدول التالي.
الإذن | المنحة |
---|---|
هو المالك | الهوية المستخدمة للتشغيل ك بشكل افتراضي. |
يمكن إدارة | يمكن للمستخدمين تحرير تعريف الوظيفة، بما في ذلك الأذونات. يمكن للمستخدمين إيقاف جدول زمني مؤقتا واستئنافه. |
يمكن إدارة التشغيل | يمكن للمستخدمين تشغيل تشغيل المهمة وإلغاءها. |
يمكن العرض | يمكن للمستخدمين عرض نتائج تشغيل المهمة. |
للحصول على معلومات حول مستويات أذونات الوظيفة، راجع قوائم ACL للوظيفة.
لتكوين أذونات لوظيفة في واجهة مستخدم مساحة العمل، حدد وظيفة موجودة باستخدام الخطوات التالية:
- انقر فوق مهام سير العمل في الشريط الجانبي.
- في العمود الاسم ، انقر فوق اسم المهمة.
- في لوحة Job details ، انقر فوق Edit permissions. يظهر مربع الحوار إعدادات الأذونات.
- انقر فوق الحقل تحديد مستخدم أو مجموعة أو كيان الخدمة... وابدأ في كتابة مستخدم أو مجموعة أو كيان خدمة. يبحث الحقل في جميع الهويات المتوفرة في مساحة العمل.
- انقر فوق إضافة.
- انقر فوق حفظ.
يمكن لمسؤولي مساحة العمل فقط تحرير مالك الوظيفة. يجب تعيين مالك وظيفة واحد بالضبط. يمكن أن يكون مالكو الوظائف مستخدمين أو كيانات خدمة.