Azure Blueprints والامتثال
اجمع السياسات وتعيينات الأدوار وقوالب ARM في Azure Blueprint قابل لإعادة الاستخدام لإنشاء بيئات متوافقة بسرعة للمشروعات الجديدة.
Azure Blueprints والامتثال درس مجاني في Azure Fundamentals على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Azure Fundamentals، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Azure Fundamentals 4 دروس في المجموع.
ما هي Azure Blueprints؟
إن Azure Blueprints خدمة تتيح لكم تعريف مجموعة قابلة للتكرار من عناصر حوكمة Azure، مثل تعيينات الأدوار وتعيينات السياسات وقوالب ARM ومجموعات الموارد، وتجميعها في كائن واحد ذي إصدارات. ويمكنكم بعد ذلك تعيين المخطط إلى اشتراك لإنشاء بيئة مهيأة ومتوافقة بالكامل خلال دقائق. صُممت Blueprints للمؤسسات التي تحتاج إلى إنشاء بيئات موحّدة للمشروعات أو الفرق الجديدة أو المتطلبات التنظيمية.
عناصر Blueprint
يتكوّن Blueprint من عناصر، وهي اللبنات الأساسية للبيئة التي ينشئها. وأنواع العناصر المدعومة هي: Resource Groups (إنشاء مجموعات موارد في مواقع محددة لاستخدامها كحاويات للعناصر الأخرى)، وARM Templates (نشر أي بنية أساسية في Azure)، وAzure Policy Assignments (تطبيق السياسات باستخدام المعلمات)، وRBAC Role Assignments (منح الوصول إلى مستخدمين أو مجموعات محددة). ويمكن أن تعتمد العناصر بعضها على بعض، كما تُنشر بالترتيب الصحيح.
// Blueprint structure example:
// Blueprint: 'ISO27001-LandingZone'
// Artefact 1: Resource Group 'networking-rg'
// Artefact 2: ARM Template (deploy VNet into networking-rg)
// Artefact 3: ARM Template (deploy Log Analytics workspace)
// Artefact 4: Policy Assignment 'ISO 27001' initiative
// Artefact 5: Role Assignment (NetworkAdmins group = Network Contributor)
// Artefact 6: Role Assignment (SecurityTeam = Security Reader)إدارة إصدارات Blueprint
تدعم Blueprints إدارة الإصدارات، مما يتيح لكم الاحتفاظ بعدة إصدارات منشورة في الوقت نفسه. عند تعديل Blueprint، تعدّلون المسودة. وبعد أن تصبح المسودة جاهزة، تنشرونها كإصدار جديد، مثل v1.0 أو v1.1 أو v2.0، مع ملاحظات الإصدار. وتحتفظ تعيينات Blueprint الحالية بالإصدار الذي نُشرت به، ويمكنكم ترقية التعيين صراحةً إلى إصدار أحدث. يتيح ذلك طرح تغييرات الحوكمة بشكل مضبوط عبر الاشتراكات.
# Create a blueprint definition
az blueprint create \
--name 'ISO27001LandingZone' \
--management-group mg-company \
--description 'ISO 27001 compliant landing zone for new projects'
# Publish a version
az blueprint publish \
--blueprint-name 'ISO27001LandingZone' \
--management-group mg-company \
--version '1.0' \
--change-notes 'Initial release with networking, logging, and ISO policies'معلمات Blueprint
تدعم Blueprints المعلمات التي تتيح تخصيص تعريف Blueprint نفسه وقت التعيين دون إنشاء Blueprints منفصلة لكل صيغة. ويمكن تعريف المعلمات على مستوى Blueprint وتمريرها إلى العناصر الفردية، أو تعريفها مباشرةً على كل عنصر. فعلى سبيل المثال، يمكن تمرير المعلمة allowedLocations إلى عنصر سياسة، مما يتيح لمنفّذ التعيين تحديد مناطق Azure المسموح بها لكل اشتراك دون تعديل تعريف Blueprint نفسه.
// Blueprint parameter defined at blueprint level:
{
'parameters': {
'allowedLocations': {
'type': 'array',
'metadata': {
'displayName': 'Allowed Azure Regions',
'description': 'Locations where resources can be deployed'
}
}
}
}تعيين Blueprint
يطبّق تعيين Blueprint إصدارًا منشورًا منه على اشتراك محدد. وأثناء التعيين، توفّرون قيم أي معلمات خاصة بـ Blueprint، وتختارون الهوية المدارة المعيّنة من النظام أو المعيّنة من المستخدم التي يستخدمها Blueprint لنشر العناصر، والتي تحتاج إلى أذونات RBAC كافية، وتحددون ما إذا كان ينبغي قفل عناصر Blueprint بعد نشرها لمنع مستخدمي الاشتراك من تعديلها.
# Assign a blueprint to a subscription
az blueprint assignment create \
--name 'prod-subscription-baseline' \
--blueprint-version '/providers/Microsoft.Management/managementGroups/mg-company/providers/Microsoft.Blueprint/blueprints/ISO27001LandingZone/versions/1.0' \
--location eastus \
--identity-type SystemAssigned \
--resource-group-value artifact_name=networking-rg name=networking-rg location=eastus \
--lock-mode AllResourcesReadOnlyأقفال Blueprint
يمكن لتعيينات Blueprint قفل العناصر المنشورة لمنع المشتركين من تعديلها أو حذفها. وتوجد ثلاثة أوضاع للقفل: None (من دون أقفال)، وAllResourcesReadOnly (قفل ReadOnly على جميع الموارد المنشورة)، وAllResourcesDoNotDelete (قفل CanNotDelete على جميع الموارد المنشورة). وتتميز أقفال Blueprint بأنها لا يمكن إزالتها حتى من قِبل مالكي الاشتراك ما دام تعيين Blueprint قائمًا، مما يوفر حماية أقوى من أقفال الموارد العادية.
التوافق مع الأطر التنظيمية
يوفر Azure Blueprints للامتثال التنظيمي في معرض العينات الخاص بـ Azure Blueprints لأطر تشمل ISO 27001 وNIST SP 800-53 وPCI DSS وDoD IL4/IL5 وFedRAMP وHIPAA/HITRUST وUK OFFICIAL. وتجمع هذه Blueprints النموذجية السياسات وتعيينات الأدوار وتكوينات البنية الأساسية اللازمة لإثبات الامتثال لكل إطار. وتستخدمها المؤسسات كنقطة بداية، مع تخصيص العناصر وإضافة عناصر خاصة ببيئاتها.
Blueprints مقابل قوالب ARM
تخدم قوالب ARM وBlueprints أغراضًا مختلفة. ينشر قالب ARM البنية الأساسية في مجموعة موارد أو اشتراك واحد، من دون اتصال مستمر بالموارد المنشورة. أما تعيين Blueprint فيحافظ على ارتباط حي بين تعريف Blueprint والبيئة المنشورة؛ إذ يمكنكم تتبع حالة النشر والترقية إلى إصدار جديد وحماية العناصر المنشورة بأقفال Blueprint التي تظل سارية حتى مع أذونات RBAC على مستوى Owner. وتوسّع Blueprints قوالب ARM بإمكانات خاصة بالحوكمة.
Blueprint مقابل Azure Landing Zones
يستخدم مسرّع Azure Landing Zone الحديث من Microsoft، وهو جزء من Cloud Adoption Framework، مزيجًا من قوالب ARM وBicep وTerraform وAzure Policy بدلًا من Blueprints. ومع أن Blueprints لا تزال متاحة، تستثمر Microsoft بدرجة أكبر في الأساليب المعتمدة على السياسات وفي IaC للبيئات واسعة النطاق. وبالنسبة إلى عمليات النشر المؤسسية المعقدة، يُفضَّل الآن نهج CAF Landing Zone، بينما تظل Blueprints مناسبة لقوالب البيئات الصغيرة والمستقلة.
مراقبة توافق Blueprint
في جزء Azure Blueprints، يعرض كل تعيين Blueprint حالة النشر الخاصة به (Succeeded أو Failed أو Locking) وحالة توافق كل عنصر. فإذا فشل نشر عنصر، يمكنكم عرض خطأ نشر ARM وإعادة محاولة التعيين. وتعرض عناصر السياسة الموجودة داخل Blueprint توافقها من خلال لوحة معلومات توافق Azure Policy القياسية، مما يوفر رؤية موحّدة لنجاح النشر والامتثال المستمر للموارد.
# List blueprint assignments and their status
az blueprint assignment list \
--subscription <sub-id> \
--output table
# Get the status of a specific assignment
az blueprint assignment show \
--name 'prod-subscription-baseline' \
--subscription <sub-id>حذف تعيينات Blueprint
لإيقاف تشغيل بيئة مُدارة بواسطة Blueprint، عليكم أولًا حذف تعيين Blueprint. ويؤدي ذلك إلى إزالة أقفال Blueprint من جميع العناصر المنشورة وقطع الارتباط بين تعريف Blueprint والموارد المنشورة، لكنه لا يحذف الموارد المنشورة نفسها. وبعد ذلك، تنظفون موارد ARM بشكل منفصل وفق عملية إدارة التغييرات المعتمدة لديكم. ويتطلب حذف تعريف Blueprint حذف جميع التعيينات أولًا.
# Delete a blueprint assignment (removes locks but not deployed resources)
az blueprint assignment delete \
--name 'prod-subscription-baseline' \
--subscription <sub-id>تحقق سريع
اختبروا مدى فهمكم لمفاهيم Microsoft Azure Fundamentals (AZ-900) الواردة في هذا الدرس.
مراجعة الدرس
تعلّمتم في هذا الدرس أن Azure Blueprints تجمع تعيينات السياسات وتعيينات الأدوار وقوالب ARM ومجموعات الموارد في كائن حوكمة قابل لإعادة الاستخدام وذي إصدارات، وأن أقفال Blueprint تحمي العناصر المنشورة من التعديل حتى من قِبل مالكي الاشتراك، وأن Blueprints الخاصة بالامتثال التنظيمي في معرض العينات تسرّع تحقيق أطر مثل ISO 27001 وPCI DSS. لقد أكملتم الآن دورة Azure Governance، وفي الجزء التالي سنتناول Azure Resource Manager والبنية الأساسية كتعليمات برمجية.
الأسئلة الشائعة
هل درس «Azure Blueprints والامتثال» مجاني؟
نعم — نص درس «Azure Blueprints والامتثال» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Azure Fundamentals، انتقل إلى CoddyKit PRO. تتضمن دورة Azure Fundamentals 4 دروس في المجموع.
ماذا ستتعلم في «Azure Blueprints والامتثال»؟
اجمع السياسات وتعيينات الأدوار وقوالب ARM في Azure Blueprint قابل لإعادة الاستخدام لإنشاء بيئات متوافقة بسرعة للمشروعات الجديدة. تتمرن على Azure Fundamentals مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Azure Fundamentals؟
لا تُشترط خبرة سابقة. Azure Fundamentals على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.
كم من الوقت يستغرق درس «Azure Blueprints والامتثال»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Azure Fundamentals هذا؟
نعم. كل درس في Azure Fundamentals يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- مجموعات الإدارة والاشتراكات
- Azure Policy
- علامات الموارد وأقفال الموارد
- Azure Blueprints والامتثال