إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
هناك طريقتان أساسيتان لتخصيص توزيع محتوى المستودع الخاص بك إلى مساحات عمل Microsoft Sentinel. يستخدم كل أسلوب ملفات وبناء جملة مختلفة، لذا ضع في اعتبارك هذه الأمثلة للبدء. قبل البدء، تأكد من وجود متطلبات اتصال المستودع والنشر المطلوبة.
| طريقة التخصيص | خيارات التوزيع التي تمت تغطيتها |
|---|---|
| سير عمل GitHub البنية الأساسية لبرنامج ربط العمليات التجارية DevOps |
تخصيص مشغل نشر الاتصال تخصيص مسار التوزيع تمكين عمليات التوزيع الذكية |
| ملفات التكوين | التحكم في ترتيب عمليات نشر المحتوى ذات الأولوية اختيار استبعاد ملفات محتوى معينة من عمليات التوزيع توسيع نطاق عمليات التوزيع عبر مساحات عمل مختلفة عن طريق تعيين ملفات المعلمات إلى ملفات محتوى معينة |
المتطلبات الأساسية
لتخصيص توزيع مستودع، تحتاج إلى اتصال مستودع موجود. لإنشاء واحد، راجع نشر محتوى مخصص من المستودع الخاص بك. بعد إنشاء الاتصال، تأكد من تلبية هذه المتطلبات:
- وصول المتعاون إلى مستودع GitHub أو وصول مسؤول المشروع إلى مستودع Azure DevOps
- الإجراءات الممكنة ل GitHub والبنية الأساسية لبرنامج ربط العمليات التجارية الممكنة ل Azure DevOps
- تأكد من أن ملفات المحتوى المخصصة التي تريد نشرها في مساحات العمل الخاصة بك بتنسيق مدعوم. للحصول على التنسيقات المدعومة، راجع تخطيط محتوى المستودع الخاص بك.
لمزيد من المعلومات حول أنواع المحتويات القابلة للنشر، راجع تخطيط محتوى المستودع الخاص بك.
تخصيص سير العمل أو البنية الأساسية لبرنامج ربط العمليات التجارية
يوزع سير العمل الافتراضي المحتوى الذي تم تعديله منذ التوزيع الأخير فقط، استنادا إلى التثبيتات بالمستودع. تخصيص سير العمل أو خط الأنابيب لتكوين محفزات نشر مختلفة، أو لنشر المحتوى حصريا من مجلد جذر محدد.
حدد إحدى علامات التبويب التالية استنادا إلى نوع الاتصال:
لتخصيص سير عمل نشر GitHub الخاص بك:
في GitHub، انتقل إلى المستودع الخاص بك وابحث عن سير العمل الخاص بك في دليل .github/workflows .
ملف سير العمل هو ملف YML بدءا من sentinel-deploy-xxxxx.yml. افتح هذا الملف ويتم عرض اسم سير العمل في السطر الأول ويحتوي على اصطلاح التسمية الافتراضي التالي:
Deploy Content to <workspace-name> [<deployment-id>].على سبيل المثال:
name: Deploy Content to repositories-demo [xxxxx-dk5d-3s94-4829-9xvnc7391v83a]حدد زر القلم الرصاص في أعلى يمين الصفحة لفتح الملف للتحرير، ثم قم بتعديل التوزيع كما يلي:
لتعديل مشغل النشر، قم بتحديث القسم
onفي الكود الذي يصف الحدث الذي يفعل سير العمل للتشغيل.بشكل افتراضي، يتم تعيين هذا التكوين إلى
on: push، مما يعني أنه يتم تشغيل سير العمل في أي دفعة إلى الفرع المتصل، بما في ذلك كل من التعديلات على المحتوى الحالي وإضافات المحتوى الجديد إلى المستودع. على سبيل المثال:on: push: branches: [ main ] paths: - `**` - `!.github/workflows/**` # this filter prevents other workflow changes from triggering this workflow - `.github/workflows/sentinel-deploy-<deployment-id>.yml`قم بتغيير هذه الإعدادات، على سبيل المثال، لجدولة سير العمل للتشغيل بشكل دوري، أو لدمج أحداث سير عمل مختلفة معا.
لمزيد من المعلومات، راجع إعداد أحداث سير العمل في وثائق GitHub.
لتعطيل النشر الذكي:
يتم تكوين سلوك النشر الذكي بشكل منفصل عن مشغل سير العمل في القسم
on. انتقل إلىjobsقسم سير العمل الخاص بك. قم بتبديل القيمة الافتراضيةsmartDeploymentمنtrueإلىfalse. بمجرد تنفيذ هذا التغيير، يتم إيقاف تشغيل وظيفة التوزيع الذكية، وتعيد جميع عمليات التوزيع المستقبلية لهذا الاتصال نشر جميع ملفات المحتوى ذات الصلة بالمستودع إلى مساحات العمل المتصلة.لتعديل مسار النشر:
في التكوين الافتراضي الموضح للمقطع
on، تشير أحرف البدل (**) في السطر الأول فيpathsالمقطع إلى أن الفرع بأكمله في مسار مشغلات التوزيع.هذا التكوين الافتراضي يعني أن سير عمل النشر يتم تفعيله في أي وقت يتم فيه دفع المحتوى إلى أي جزء من الفرع المتصل.
في القسم
jobs، يتضمنdirectory: '${{ github.workspace }}'التكوين الافتراضي . يشير الإعدادdirectoryإلى أن فرع GitHub بأكمله في مسار نشر المحتوى، دون تصفية أي مسارات للمجلدات.لنشر المحتوى من مسار مجلد معين فقط، أضفه إلى كل من
pathsdirectoryوالتكوين. على سبيل المثال، لنشر المحتوى فقط من مجلد جذر يسمىSentinelContent، قم بتحديث التعليمات البرمجية الخاصة بك على النحو التالي:paths: - `SentinelContent/**` - `!.github/workflows/**` # this filter prevents other workflow changes from triggering this workflow - `.github/workflows/sentinel-deploy-<deployment-id>.yml` ... directory: '${{ github.workspace }}/SentinelContent'
لمزيد من المعلومات، راجع صياغة سير عمل GitHub Actions لمرشحات المسار في وثائق GitHub.
هام
في كل من GitHub و Azure DevOps، تأكد من الحفاظ على اتساق مسار المشغل ودلائل مسار التوزيع.
توسيع نطاق عمليات التوزيع باستخدام ملفات المعلمات
بدلا من تمرير المعلمات كقيم مضمنة في ملفات المحتوى، ضع في اعتبارك استخدام ملف معلمة Bicep أو ملف JSON يحتوي على قيم المعلمات. ثم قم بتعيين ملفات المعلمات هذه إلى ملفات المحتوى Microsoft Sentinel المقترنة بها لتوسيع نطاق عمليات النشر الخاصة بك عبر مساحات عمل مختلفة بشكل أفضل.
هناك عدة طرق لتعيين ملفات المعلمات إلى ملفات المحتوى. ضع في اعتبارك أن ملفات معلمات Bicep تدعم قوالب ملفات Bicep فقط، ولكن ملفات معلمات JSON تدعم كليهما. يأخذ مسار توزيع المستودعات في الاعتبار ملفات المعلمات بالترتيب التالي:
هل هناك تعيين في sentinel-deployment.config؟
لمزيد من المعلومات، راجع تخصيص تكوين الاتصال.هل هناك ملف معلمة معين لمساحة العمل؟ نعم، ملفات المحتوى موجودة في نفس الدليل مع ملف معلمة معين لمساحة العمل يطابق أحد هذه الأنماط:
.<WorkspaceID.bicepparam.parameters-WorkspaceID>
<>.jsonهل هناك ملف معلمة افتراضي؟ نعم، ملفات المحتوى موجودة في نفس الدليل مع ملف معلمة يطابق أحد هذه الأنماط:
.bicepparam
.parameters.json
تجنب الاشتباكات مع عمليات توزيع مساحة العمل المتعددة عن طريق تعيين ملفات المعلمات الخاصة بك من خلال ملف التكوين أو تحديد معرف مساحة العمل في اسم الملف.
هام
بمجرد تحديد تطابق ملف المعلمة استنادا إلى أسبقية التعيين، يتجاهل المسار أي تعيينات متبقية.
يؤدي تعديل ملف المعلمة المعين المدرج في sentinel-deployment.config إلى تشغيل نشر ملف المحتوى المقترن به. تؤدي إضافة ملف معلمة معين لمساحة العمل أو ملف معلمة افتراضي أو تعديله أيضا إلى تشغيل نشر ملفات المحتوى المقترنة جنبا إلى جنب مع المعلمات المعدلة حديثا، ما لم يكن تعيين معلمة أسبقية أعلى في مكانه. لا يتم نشر ملفات المحتوى الأخرى طالما أن ميزة عمليات التوزيع الذكية لا تزال ممكنة في ملف تعريف سير العمل/المسار.
تخصيص تكوين الاتصال
يدعم البرنامج النصي للتوزيع للمستودعات استخدام ملف تكوين توزيع لكل فرع مستودع اعتبارا من يوليو 2022. يساعدك ملف JSON للتكوين على تعيين ملفات المعلمات إلى ملفات المحتوى ذات الصلة، وتحديد أولويات محتوى معين في عمليات النشر، واستبعاد محتوى معين من عمليات التوزيع.
هام
يؤدي إنشاء ملف sentinel-deployment.config أو حذفه أو تعديله إلى نشر كامل لجميع محتويات المستودع وفقا للتكوين المحدث.
قم بإنشاء الملفsentinel-deployment.config في جذر المستودع الخاص بك.
قم بتضمين المحتوى المنظم في ثلاثة أقسام اختيارية،
"prioritizedcontentfiles":و"excludecontentfiles":و و"parameterfilemappings":. إذا لم يتم تضمين أي مقاطع أو تم حذف ملف .config، فلا تزال عملية التوزيع قيد التشغيل. يتم تجاهل المقاطع غير الصالحة أو غير المعترف بها.
فيما يلي مثال على محتويات ملف sentinel-deployment.config صالح بالكامل. يمكن أيضا العثور على هذه العينة في نموذج مستودعات Microsoft Sentinel CICD.
{
"prioritizedcontentfiles": [
"parsers/Sample/ASimAuthenticationAWSCloudTrail.json",
"workbooks/sample/TrendMicroDeepSecurityAttackActivity_ARM.json",
"Playbooks/PaloAlto-PAN-OS/PaloAltoCustomConnector/azuredeploy.bicep"
],
"excludecontentfiles": [
"Detections/Sample/PaloAlto-PortScanning.json",
"parameters"
],
"parameterfilemappings": {
"879001c8-2181-4374-be7d-72e5dc69bd2b": {
"Playbooks/PaloAlto-PAN-OS/Playbooks/PaloAlto-PAN-OS-BlockIP/azuredeploy.bicep": "parameters/samples/auzredeploy.bicepparam"
},
"9af71571-7181-4cef-992e-ef3f61506b4e": {
"Playbooks/Enrich-SentinelIncident-GreyNoiseCommunity-IP/azuredeploy.json": "path/to/any-parameter-file.json"
}
},
"DummySection": "This shouldn't impact deployment"
}
ملاحظة
لا تستخدم الحرف "\" المائل للخلف في أي من مسارات المحتوى. استخدم الشرطة المائلة للأمام "/" بدلا من ذلك.
لإعطاء الأولوية لملفات المحتوى:
مع زيادة كمية المحتوى في المستودع الخاص بك، قد تزداد أوقات النشر. أضف محتوى حساسا للوقت إلى هذا القسم لتحديد أولويات توزيعه عند حدوث مشغل.
أضف أسماء المسارات الكاملة إلى
"prioritizedcontentfiles":القسم . مطابقة أحرف البدل غير مدعومة في الوقت الحالي.لاستبعاد ملفات المحتوى، قم بتعديل القسم
"excludecontentfiles":الذي يحتوي على أسماء المسارات الكاملة لملفات المحتوى الفردية .json.لرسم خريطة المعلمات:
يقبل البرنامج النصي للتوزيع ثلاث طرق لتعيين المعلمات (تعيينات ملف التكوين، وملفات المعلمات المعينة لمساحة العمل، وملفات المعلمات الافتراضية) كما هو موضح في توسيع نطاق عمليات التوزيع الخاصة بك مع ملفات المعلمات. تعيين المعلمات من خلال sentinel-deployment.config له الأسبقية القصوى ويضمن تعيين ملف معلمة معين إلى ملفات المحتوى المقترنة به. قم بتعديل
"parameterfilemappings":القسم باستخدام معرف مساحة عمل الاتصال الهدف وأسماء المسارات الكاملة لملفات .json الفردية.