معلومات عامة حول أمان المؤسسة والإرشادات في Azure HDInsight

عند نشر مجموعة HDInsight آمنة، هناك بعض أفضل الممارسات التي يجب أن تجعل النشر وإدارة المجموعة أسهل. تُناقَش بعض المعلومات العامة والمبادئ التوجيهية هنا.

استخدام كتلة آمنة

  • سيتم استخدام الكتلة من قبل عدة مستخدمين في نفس الوقت.
  • لدى المستخدمين مستويات مختلفة من الوصول إلى نفس البيانات.

أمور غير ضرورية

  • ستقوم بتشغيل وظائف آلية فقط (مثل حساب مستخدم واحد)، نظام مجموعة قياسي جيد بما فيه الكفاية.
  • يمكنك القيام باستيراد البيانات باستخدام مجموعة قياسية واستخدام نفس حساب التخزين على مجموعة آمنة مختلفة حيث يمكن للمستخدمين تشغيل وظائف التحليلات.

استخدام الحساب المحلي

  • إذا كنت تستخدم حسابَ مستخدم مشتركاً أو حساباً محليّاً، فسيكون من الصعب تحديد مَن استخدم الحساب لتغيير التكوين أو الخدمة.
  • يمثل استخدام الحسابات المحلية مشكلة عندما لا يكون المستخدمون جزءاً من المؤسسة.

Ranger

السياسات

  • بشكل افتراضي، يستخدم Ranger Deny كنهج.

  • عندما يتم الوصول إلى البيانات من خلال خدمة يتم فيها تمكين التفويض:

    • يتم استدعاء البرنامج المساعد لتفويض Ranger وإعطاء سياق الطلب.
    • يطبق Ranger النُهج التي تم تكوينها للخدمة. إذا فشلت نُهج Ranger، يُؤَجَّل فحص الوصول إلى نظام الملفات. تتحقق بعض الخدمات مثل MapReduce فقط مما إذا كان الملف / المجلد مملوكاً لنفس المستخدم الذي أرسل الطلب. خدمات مثل Apache Hive، تحقق من تطابق الملكية أو أذونات نظام الملفات المناسبة (rwx).
  • بالنسبة إلى Apache Hive، بالإضافة إلى امتلاك الأذونات للقيام بأذونات إنشاء / تحديث / حذف، يجب أن يكون لدى المستخدم أذونات rwxفي الدليل على وحدة التخزين وجميع الأدلة الفرعية.

  • يمكن تطبيق النُهج على المجموعات (الأفضل) بدلاً من الأفراد.

  • سيقوم مفوض Ranger بتقييم جميع نُهج Ranger لتلك الخدمة لكل طلب. يمكن أن يكون لهذا التقييم تأثير على الوقت المستغرق لقبول الوظيفة أو الاستعلام.

الوصول إلى التخزين

  • إذا كان نوع التخزين هو WASB، فلن يتم تضمين رمز OAuth المميز.
  • إذا قام Ranger بتنفيذ التفويض، فسيتم الوصول إلى التخزين باستخدام الهوية المُدارة.
  • إذا لم ينفذ Ranger أي إذن، فسيحدث الوصول إلى مساحة التخزين باستخدام رمز OAuth المميز للمستخدم.

مساحة اسم هرمية

عند عدم تمكين مساحة الاسم المتدرجة:

  • لا توجد أذونات موروثة.
  • إذن نظام الملفات الذي يعمل هو دور Azure Storage Data XXXX الذي سيتم تعيينه للمستخدم مباشرةً في مدخل Microsoft Azure.

أذونات HDFS الافتراضية

  • افتراضيًّا، لا يمكن للمستخدمين الوصول إلى المجلد / على HDFS (يجب أن يكونوا في دور مالك كائن تخزين البيانات الثنائية الكبيرة حتى ينجح الوصول).
  • بالنسبة إلى الدليل المرحلي لـ mapreduce وغيره، يتم إنشاء دليل خاص بالمستخدم وتوفير أذونات sticky _wx. يمكن للمستخدمين إنشاء ملفات ومجلدات تحتها، لكن لا يمكنهم النظر إلى العناصر الأخرى.

مصادقة URL

إذا تم تمكين مصادقة عنوان url:

  • سيحتوي التكوين على البادئات التي تم تناولها في عنوان url المصادقة (مثل adl://).
  • إذا كان الوصول لعنوان url هذا، فسيقوم Ranger بالتحقق مما إذا كان المستخدم موجوداً في قائمة السماح.
  • لن يقوم Ranger بفحص أي من النُهج الدقيقة.

إدارة سجلات تدقيق Ranger

لمنع سجلات تدقيق Ranger من استهلاك مساحة قرص كبيرة جدا على العقدة الرئيسية hn0، يمكنك تغيير عدد الأيام للاحتفاظ بالسجلات.

  1. سجل الدخول إلى واجهة مستخدم Ambari.
  2. انتقل إلى Services>Ranger>Configs>Advanced>ranger-solr-configuration.
  3. غير "الحد الأقصى لأيام الاستبقاء" إلى 7 أيام أو أقل.
  4. حدد حفظ وإعادة تشغيل المكونات المتأثرة حتى يسري التغيير.

استخدام Ranger DB مخصص

نوصي بنشر قاعدة بيانات Ranger خارجية لاستخدامها مع مجموعة ESP الخاصة بك للحصول على قابلية وصول عالية لبيانات تعريف Ranger، ما يضمن توفر النهج حتى إذا كانت المجموعة غير متوفرة. نظرا لأن قاعدة البيانات الخارجية مدارة من قبل العميل، فستتمكن أيضا من ضبط حجم قاعدة البيانات ومشاركة قاعدة البيانات عبر مجموعات ESP متعددة. يمكنك تحديد قاعدة بيانات Ranger الخارجية أثناء عملية إنشاء مجموعة ESP باستخدام مدخل Azure وAzure Resource Manager وAzure CLI وما إلى ذلك.

تعيين مزامنة مستخدم Ranger للتشغيل يوميا

يتم تكوين مجموعات HDInsight ESP ل Ranger لمزامنة مستخدمي AD تلقائيا كل ساعة. مزامنة Ranger هي مزامنة مستخدم ويمكن أن تتسبب في تحميل إضافي على مثيل AD. لهذا السبب، نوصي بتغيير الفاصل الزمني لمزامنة مستخدم Ranger إلى 24 ساعة.

  1. سجل الدخول إلى واجهة مستخدم Ambari.
  2. انتقل إلى Services>Ranger>Configs>Advanced>ranger-ugsync-site
  3. تعيين الخاصية ranger.usersync.sleeptimeinmillisbetweensynccycle إلى 86400000 (24h بالمللي ثانية).
  4. حدد حفظ وإعادة تشغيل المكونات المتأثرة حتى يسري التغيير.

مجموعات الموارد

استخدم مجموعة موارد جديدة لكل مجموعة بحيث يمكنك التمييز بين موارد المجموعة.

مجموعات أمان الشبكة والجدران النارية والبوابة الداخلية

  • استخدم مجموعات أمان الشبكة (NSGs) لتأمين الشبكات الظاهرية.
  • استخدم جدار الحماية للتعامل مع نُهج الوصول الصادرة.
  • استخدم البوابة الداخلية غير المفتوحة للإنترنت العام.

معرِّف Microsoft Entra

معرف Microsoft Entra (معرف Microsoft Entra) هو خدمة إدارة الوصول والهوية المستندة إلى السحابة من Microsoft.

السياسات

  • عَطِّلْ نهج الوصول المشروط باستخدام النهج القائمة على عنوان IP. يتطلب ذلك تمكين نقاط نهاية الخدمة على شبكات VNET حيث يتم نشر المجموعات. إذا كنت تستخدم خدمة خارجية للمصادقة متعددة العوامل (شيء آخر غير معرف Microsoft Entra)، فلن يعمل النهج المستند إلى عنوان IP

  • النهج AllowCloudPasswordValidation مطلوب للمستخدمين الخارجيين. نظرا لأن HDInsight يستخدم اسم المستخدم / كلمة المرور مباشرة للحصول على الرموز المميزة من معرف Microsoft Entra، يجب تمكين هذا النهج لجميع المستخدمين المتحدين.

  • مَكِّن نقاط نهاية الخدمة إذا كنت تطلب تجاوز الوصول المشروط باستخدام عناوين IP الموثوقة.

المجموعات

  • قم دائماً بنشر الكتل مع مجموعة.
  • استخدم معرف Microsoft Entra لإدارة عضويات المجموعة (أسهل من محاولة إدارة الخدمات الفردية في نظام المجموعة).

حسابات المستخدمين

  • استخدم حساب مستخدم فريداً لكل سيناريو. على سبيل المثال، استخدم حساباً للاستيراد، واستخدم حساباً آخر للاستعلام أو مهام معالجة أخرى.
  • استخدم نُهج Ranger المستندة إلى المجموعة بدلاً من النُهج الفردية.
  • ضع خطة حَوْل كيفية إدارة المستخدمين الذين لم يَعُدْ بإمكانهم الوصول إلى المجموعات.

Microsoft Entra Domain Services

توفر Microsoft Entra Domain Services خدمات مجال مدارة مثل الانضمام إلى المجال ونهج المجموعة وبروتوكول الوصول الخفيف إلى الدليل (LDAP) ومصادقة Kerberos / NTLM المتوافقة تماما مع Windows Server Active Directory.

خدمات مجال Microsoft Entra مطلوبة للمجموعات الآمنة للانضمام إلى مجال. لا يمكن أن تعتمد HDInsight على وحدات تحكم المجال المحلية أو وحدات تحكم المجال المخصصة، حيث إنها تقدم الكثير من نقاط الخطأ ومشاركة معلومات تسجيل الدخول وأذونات DNS وما إلى ذلك. لمزيد من المعلومات، راجع الأسئلة المتداولة حول خدمات مجال Microsoft Entra.

اختيار Microsoft Entra Domain Services SKU الصحيح

عند إنشاء المجال المدار، يمكنك الاختيار من بين وحدات SKU المختلفة التي تقدم مستويات مختلفة من الأداء والميزات. يحدد مقدار مجموعات ESP والتطبيقات الأخرى التي ستستخدم مثيل Microsoft Entra Domain Services لطلبات المصادقة SKU المناسب لمؤسستك. إذا لاحظت ارتفاع وحدة المعالجة المركزية على المجال المدار أو تغيير متطلبات عملك، يمكنك ترقية SKU الخاص بك.

مثيل Microsoft Entra Domain Services

  • أنشئ مثيل باستخدام .onmicrosoft.com domain. بهذه الطريقة، لن يكون هناك عدة خوادم DNS تخدم النطاق.
  • إنشاء شهادة موقعة ذاتيا ل LDAPS وتحميلها إلى Microsoft Entra Domain Services.
  • استخدم شبكة ظاهرية متقنة لنشر المجموعات (عندما يكون لديك عدد من الفرق التي تنشر مجموعات HDInsight ESP، سيكون هذا مفيداً). هذا يضمن أنك لست بحاجة إلى فتح منافذ (NSGs) على الشبكة الظاهرية باستخدام وحدة تحكم المجال.
  • تكوين DNS للشبكة الظاهرية بشكل صحيح (يجب حل اسم مجال Microsoft Entra Domain Services دون أي إدخالات ملف المضيفين).
  • إذا كنت تقيد حركة المرور الصادرة، فتأكد من قراءة دعم جدار الحماية في HDInsight

ضع في اعتبارك مجموعات النسخ المتماثلة لخدمات مجال Microsoft Entra

عند إنشاء مجال مدار من Microsoft Entra Domain Services، فإنك تحدد مساحة اسم فريدة، ثم يتم نشر وحدتي تحكم بالمجال (DCs) في منطقة Azure المحددة. يُعرف هذا النشر لـ DCs بمجموعة النسخ المتماثلة. ستؤدي إضافة مجموعات نسخ متماثلة إضافية إلى توفير المرونة وضمان توفر خدمات المصادقة، وهو أمر بالغ الأهمية لمجموعات Azure HDInsight.

تكوين مزامنة المستخدم/المجموعة محددة النطاق

عند تمكين Microsoft Entra Domain Services لمجموعة ESP الخاصة بك، يمكنك اختيار مزامنة جميع المستخدمين والمجموعات من معرف Microsoft Entra أو المجموعات محددة النطاق وأعضائها. نوصي باختيار المزامنة "محددة النطاق" للحصول على أفضل أداء.

يمكن تعديل المزامنة المحددة النطاق مع تحديدات مجموعة مختلفة أو تحويلها إلى "كافة" المستخدمين والمجموعات إذا لزم الأمر. لا يمكنك تغيير نوع المزامنة من "الكل" إلى "محدد النطاق" ما لم تقم بحذف مثيل Microsoft Entra Domain Services وإعادة إنشائه.

الخصائص التي تمت مزامنتها من معرف Microsoft Entra إلى Microsoft Entra Domain Services

  • تتم مزامنة Microsoft Entra الاتصال محليا إلى معرف Microsoft Entra.
  • تتم مزامنة Microsoft Entra Domain Services من معرف Microsoft Entra.

تعمل Microsoft Entra Domain Services على مزامنة العناصر من معرف Microsoft Entra بشكل دوري. يعرض جزء Microsoft Entra Domain Services على مدخل Microsoft Azure حالة المزامنة. أثناء كل مرحلة من مراحل المزامنة، قد تتعارض الخصائص الفريدة وتتم إعادة تسميتها. انتبه إلى تعيين الخاصية من معرف Microsoft Entra إلى Microsoft Entra Domain Services.

لمزيد من المعلومات، راجع محتوى Microsoft Entra UserPrincipalName وكيفية عمل مزامنة خدمات مجال Microsoft Entra.

مزامنة تجزئة كلمة المرور

  • تتم مزامنة كلمات المرور بشكل مختلف عن أنواع الكائنات الأخرى. تتم مزامنة تجزئات كلمة المرور غير القابلة للعكس فقط في Microsoft Entra ID وMicrosoft Entra Domain Services
  • يجب تمكين معرف Microsoft Entra المحلي من خلال AD الاتصال
  • تتم مزامنة معرف Microsoft Entra إلى Microsoft Entra Domain Services تلقائيا (زمن الانتقال أقل من 20 دقيقة).
  • لا تتم مزامنة تجزئات كلمة المرور إلا عند تغيير كلمة المرور. عند تمكين مزامنة تجزئة كلمة المرور، لا تتم مزامنة جميع كلمات المرور الحالية تلقائيّاً حيث يتم تخزينها بشكل لا رجوع فيه. عند تغيير كلمة المرور، تتم مزامنة تجزئات كلمة المرور.

تعيين مزامنة Ambari LDAP للتشغيل يوميا

يتم تكوين عملية مزامنة مستخدمي LDAP الجدد إلى Ambari تلقائيا للتشغيل كل ساعة. يمكن أن يؤدي تشغيل هذا كل ساعة إلى تحميل زائد على العقد الرئيسية لنظام المجموعة ومثيل AD. لتحسين الأداء، نوصي بتغيير البرنامج النصي /opt/startup_scripts/start_ambari_ldap_sync.py الذي يقوم بتشغيل مزامنة Ambari LDAP للتشغيل مرة واحدة في اليوم. يتم تشغيل هذا البرنامج النصي من خلال مهمة crontab، ويتم تخزينه في الدليل "/etc/cron.hourly/" على العقد الرئيسية لنظام المجموعة.

لتشغيله مرة واحدة في اليوم، قم بتنفيذ الخطوات التالية:

  1. ssh إلى hn0
  2. نقل البرنامج النصي إلى المجلد اليومي cron: sudo mv /etc/cron.hourly/ambarildapsync /etc/cron.daily/ambarildapsync
  3. تطبيق التغيير في وظيفة crontab: sudo service cron reload
  4. ssh إلى hn1 وكرر stepts 1 - 3

إذا لزم الأمر، يمكنك استخدام Ambari REST API لمزامنة المستخدمين والمجموعات الجديدة يدويا على الفور.

موقع كائنات الكمبيوتر

يرتبط كل عنقود بوحدة تنظيمية واحدة. يتم توفير مستخدم داخلي في الوحدة التنظيمية. جميع العقد انضمت إلى المجال في نفس الوحدة التنظيمية.

أدوات Active Directory الإدارية

للحصول على خطوات حول كيفية تثبيت أدوات Active Directory الإدارية على Windows Server VM، راجع تثبيت أدوات الإدارة.

استكشاف الأخطاء وإصلاحها

فشل إنشاء الكتلة بشكل متكرر

الأسباب الأكثر شيوعاً:

  • تكوين DNS غير صحيح، تفشل عملية الانضمام إلى عقد المجموعة.
  • مجموعات موردي المواد النووية مقيدة للغاية، ما يمنع الانضمام إلى المجال.
  • الهوية المُدارة ليس لديها أذونات كافية.
  • اسم الكتلة ليس فريداً في الأحرف الستة الأولى (إما مع مجموعة حية أخرى، أو مع مجموعة محذوفة).

إعداد المصادقة والتكوين

اسم المستخدم الأساسي (UPN)

  • الرجاء استخدام الأحرف الصغيرة لجميع الخدمات - لا تعتبر UPNs حساسة لحالة الأحرف في مجموعات ESP، ولكن
  • يجب أن تتطابق بادئة UPN مع كل من SAMAccountName في Microsoft Entra Domain Services. المطابقة مع حقل البريد غير مطلوب.

خصائص LDAP في تكوين Ambari

للحصول على قائمة كاملة بخصائص Ambari التي تؤثر على تكوين مجموعة HDInsight، راجع إعداد مصادقة Ambari LDAP.

إنشاء علامة (أحرف) مفتاح مستخدم المجال

يتم إنشاء جميع مفاتيح الخدمة تلقائيا لك أثناء عملية إنشاء مجموعة ESP. لتمكين الاتصال الآمن بين نظام المجموعة والخدمات الأخرى و/أو المهام التي تتطلب المصادقة، يمكنك إنشاء علامة جدولة مفتاح لاسماء مستخدم المجال.

استخدم ktutil على أحد أجهزة نظام المجموعة الظاهرية لإنشاء جدول مفاتيح Kerberos:


ktutil
ktutil: addent -password -p <username>@<DOMAIN.COM> -k 1 -e aes256-cts-hmac-sha1-96
Password for <username>@<DOMAIN.COM>: <password>
ktutil: wkt <username>.keytab
ktutil: q

إذا كان TenantName و DomainName مختلفا، فستحتاج إلى إضافة قيمة SALT باستخدام الخيار -s. تحقق من صفحة الأسئلة المتداولة حول HDInsight لتحديد قيمة SALT المناسبة عند إنشاء علامة جدولة مفتاح Kerberos.

تجديد شهادة LDAP

سيقوم HDInsight تلقائيا بتجديد الشهادات للهويات المدارة التي تستخدمها للمجموعات باستخدام حزمة أمان المؤسسة (ESP). ومع ذلك، هناك قيود عند استخدام هويات مدارة مختلفة لخدمات مجال Microsoft Entra وADS Gen2 التي قد تتسبب في فشل عملية التجديد. اتبع التوصيات 2 أدناه للتأكد من أننا قادرون على تجديد شهاداتك بنجاح:

  • إذا كنت تستخدم هويات مدارة مختلفة لمجموعات ADLS Gen2 وMicrosoft Entra Domain Services، فيجب أن يكون لكل منهما أدوار مالك بيانات كائن ثنائي كبير الحجم للتخزين والمساهم في خدمات مجال HDInsight المعينة لهم.
  • تتطلب مجموعات HDInsight عناوين IP عامة لتحديثات الشهادات والصيانة الأخرى لذلك يجب إزالة أي نهج ترفض IP العام على المجموعة.

الخطوات التالية