علامات الموارد وأقفال الموارد
طبّق علامات البيانات الوصفية على الموارد لتوزيع التكاليف والبحث، وامنع الحذف أو التعديل غير المقصود باستخدام أقفال الموارد للقراءة فقط أو أقفال الحذف.
علامات الموارد وأقفال الموارد درس مجاني في Cloud & IT Cert Prep على CoddyKit. هذا هو الدرس 3 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Cloud & IT Cert Prep، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Cloud & IT Cert Prep 4 دروس في المجموع.
ما هي علامات موارد Azure؟
علامات الموارد هي أزواج من الاسم والقيمة للبيانات الوصفية، تُرفق بموارد Azure ومجموعات الموارد والاشتراكات. وعلى خلاف هياكل المجلدات، تتيح العلامات تصنيف المورد نفسه وفق أبعاد متعددة في الوقت نفسه. فعلى سبيل المثال، يمكن أن يحتوي جهاز VM على العلامات Environment=Production وTeam=Backend وCostCentre=CC-042 وProject=Phoenix جميعها في آن واحد، مما يتيح التصفية حسب أي من هذه الأبعاد بشكل مستقل.
استراتيجيات العلامات الشائعة
تحدد المؤسسات عادةً تصنيفًا موحدًا للعلامات يغطي عدة أبعاد. تتيح العلامات المالية (CostCentre وBudgetOwner) توزيع التكاليف. وتدعم العلامات التشغيلية (Environment وCriticality وOwner) التصفية والتنبيه. وتتيح علامات دورة الحياة (AutoShutdown وExpiryDate) التشغيل الآلي. وتدعم علامات الأمان (DataClassification وCompliance) أدوات الأمان. ويؤدي تحديد التصنيف قبل نشر الموارد إلى منع إنشاء مجموعة علامات غير متسقة يتعذر الاستعلام عنها.
تطبيق العلامات عبر CLI والسياسات
يمكن تطبيق العلامات من خلال بوابة Azure وCLI وقوالب ARM وBicep وTerraform. يدير الأمر az tag العلامات على الموارد، بينما يطبّق az group update العلامات على مجموعات الموارد. وباستخدام Azure Policy مع تأثير Modify أو Append، يمكنكم إضافة العلامات تلقائيًا أو فرضها عند إنشاء الموارد، مما يضمن احتواء كل مورد جديد على علامة CostCentre دون الاعتماد على تذكّر المطورين إضافتها يدويًا.
# Apply tags to a resource
az resource tag \
--resource-group myRG \
--name myVM \
--resource-type Microsoft.Compute/virtualMachines \
--tags Environment=Production Team=Backend CostCentre=CC-042
# Apply tags to a resource group (does NOT apply to resources inside)
az group update \
--name myRG \
--set tags.Environment=Production tags.CostCentre=CC-042قيود توارث العلامات
من المفاهيم الخاطئة الشائعة أن العلامات الموجودة على مجموعة الموارد تنتقل تلقائيًا إلى الموارد الموجودة داخلها. وهذا غير صحيح، فعلامات موارد Azure لا تُورث من النطاقات الأصلية. فإذا أضفتم العلامة Environment=Production إلى مجموعة موارد، فلن تتلقى الأجهزة الافتراضية وقواعد البيانات الموجودة داخلها هذه العلامة تلقائيًا. ولتطبيق وضع علامات متسق، استخدموا تعريف Azure Policy المضمّن Inherit a tag from the resource group، الذي ينسخ علامة مجموعة الموارد تلقائيًا إلى جميع الموارد الموجودة فيها.
# Assign the 'Inherit a tag from the resource group' policy
az policy assignment create \
--name 'inherit-environment-tag' \
--policy 'cd3aa116-8754-49c9-a813-ad46512ece54' \
--params '{"tagName": {"value": "Environment"}}' \
--scope /subscriptions/<sub-id>استخدام العلامات في إدارة التكاليف
تكون العلامات أكثر فاعلية عند دمجها مع Azure Cost Management. ففي طريقة عرض تحليل التكلفة، يمكنكم تجميع الإنفاق حسب أي مفتاح علامة، مثل عرض إجمالي الإنفاق الشهري حسب CostCentre لمعرفة القسم الأكثر استهلاكًا للخدمات السحابية. ويمكنكم أيضًا التصفية حسب Environment=Production لاستبعاد إنفاق بيئات التطوير من ميزانيات الإنتاج. ويتطلب Azure Cost Management تطبيق العلامة قبل بداية فترة الفوترة لكي تظهر في بيانات التكلفة.
# Export cost data grouped by tag
# (Azure CLI cost export with tag grouping)
az consumption usage list \
--start-date 2026-06-01 \
--end-date 2026-06-30 \
--query '[].{Cost:pretaxCost, Service:instanceName, CostCentre:tags.CostCentre}' \
--output tableما هي أقفال الموارد؟
تحمي أقفال الموارد موارد Azure من الحذف أو التعديل غير المقصود، بغض النظر عن أذونات RBAC التي يمتلكها المستخدم. وحتى المستخدم الذي لديه صلاحيات Owner أو Contributor قد يُمنع من حذف مورد مقفل أو تعديله. وتُطبَّق الأقفال على مستوى المورد أو مجموعة الموارد أو الاشتراك، وتنتقل إلى المستويات الأدنى؛ فقفل مجموعة الموارد يحمي كل مورد موجود داخلها.
أنواع الأقفال: CanNotDelete وReadOnly
يدعم Azure نوعين من الأقفال. يتيح CanNotDelete (قفل الحذف) للمستخدمين قراءة المورد وتعديله، لكنه يمنع حذفه. وهذا هو القفل الأكثر شيوعًا، إذ يُطبَّق على قواعد بيانات الإنتاج وحسابات التخزين والشبكات الظاهرية لمنع إزالتها عن طريق الخطأ. أما ReadOnly فيمنع جميع عمليات الكتابة والحذف، ويجعل المورد يتصرف كما لو أن دور Reader فقط مُسنَد إلى الجميع. ويكون ReadOnly أكثر تقييدًا، وقد يعطل العمليات المؤتمتة التي تحدّث خصائص الموارد.
# Apply a CanNotDelete lock to a resource group
az lock create \
--name 'prevent-delete' \
--resource-group myRG \
--lock-type CanNotDelete \
--notes 'Protect production resources from accidental deletion'
# Apply a ReadOnly lock to a specific storage account
az lock create \
--name 'storage-readonly' \
--resource-group myRG \
--resource-name mystorageaccount \
--resource-type Microsoft.Storage/storageAccounts \
--lock-type ReadOnlyإزالة أقفال الموارد
لحذف مورد مقفل أو تعديله، يجب على المستخدم أولًا إزالة القفل، ويتطلب ذلك الإذن Microsoft.Authorization/locks/delete، المتاح افتراضيًا لدوري Owner وUser Access Administrator. ويمكن تضمين إزالة القفل وتعديل المورد، ثم إعادة تطبيق القفل اختياريًا، في برنامج نصي ضمن سير عمل إدارة التغييرات، مما يضمن إمكانية تعديل الموارد المحمية من خلال إجراء مضبوط مع الاحتفاظ بسجل تدقيق.
# List all locks in a resource group
az lock list \
--resource-group myRG \
--output table
# Remove a lock
az lock delete \
--name 'prevent-delete' \
--resource-group myRGتوارث الأقفال وتجاوزها
يُورث القفل المطبَّق على نطاق أصلي، مثل الاشتراك أو مجموعة الموارد، من قِبل جميع الموارد التابعة. ولا يمكن تجاوز القفل في نطاق أدنى؛ فإذا كانت مجموعة الموارد تحتوي على قفل CanNotDelete، فلا يمكن حذف الموارد الفردية الموجودة داخلها حتى إن لم يُطبَّق عليها قفل مباشرة. ولا يؤدي إضافة قفل CanNotDelete على مستوى المورد، إلى جانب قفل أصلي، إلى تغيير السلوك؛ فالقفل الأصلي يوفر الحماية بالفعل.
الآثار الجانبية لقفل ReadOnly
قد تتسبب أقفال ReadOnly في حدوث إخفاقات غير متوقعة في العمليات المؤتمتة. فبعض عمليات Azure التي تبدو للوهلة الأولى عمليات قراءة فقط تتطلب فعليًا الوصول للكتابة إلى خصائص الموارد في الخلفية. فعلى سبيل المثال، يُحظر سرد مفاتيح الوصول لحساب تخزين عند وجود قفل ReadOnly، لأن إجراء سرد المفاتيح يعدّل سجل التدقيق الخاص بالحساب. كما يُحظر تغيير حجم جهاز افتراضي وإعادة تشغيل App Service وإرفاق قرص بجهاز افتراضي قيد التشغيل. اختبروا أقفال ReadOnly في بيئات غير إنتاجية قبل تطبيقها على الموارد المهمة.
العلامات والأقفال معًا
يؤدي الجمع بين العلامات والأقفال إلى إنشاء نمط قوي للحوكمة. يمكنكم استخدام علامة مثل Protected=true لتمييز الموارد التي ينبغي أن تحتوي على أقفال CanNotDelete، ثم تشغيل Azure Automation Runbook يبحث عن الموارد التي تحمل هذه العلامة وينشئ القفل إذا لم يكن موجودًا. ويضمن نمط الحوكمة ذاتية الإصلاح هذا إعادة تطبيق القفل تلقائيًا وفق الجدول المحدد في Runbook، حتى إذا أزاله أحد المسؤولين عن طريق الخطأ.
تحقق سريع
اختبروا مدى فهمكم لمفاهيم Microsoft Azure Fundamentals (AZ-900) الواردة في هذا الدرس.
مراجعة الدرس
تعلّمتم في هذا الدرس أن علامات الموارد هي أزواج من البيانات الوصفية تتكون من اسم وقيمة، وتتيح توزيع التكاليف والتصفية والتشغيل الآلي وفق أي بُعد، وأن العلامات لا تُورث من مجموعات الموارد الأصلية، ويجب فرضها باستخدام Azure Policy، وأن أقفال الموارد (CanNotDelete وReadOnly) تحمي الموارد من التغييرات غير المقصودة بغض النظر عن أذونات RBAC. في الجزء التالي، سنستكشف Azure Blueprints لتجميع عناصر الحوكمة معًا.
الأسئلة الشائعة
هل درس «علامات الموارد وأقفال الموارد» مجاني؟
نعم — نص درس «علامات الموارد وأقفال الموارد» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Cloud & IT Cert Prep، انتقل إلى CoddyKit PRO. تتضمن دورة Cloud & IT Cert Prep 4 دروس في المجموع.
ماذا ستتعلم في «علامات الموارد وأقفال الموارد»؟
طبّق علامات البيانات الوصفية على الموارد لتوزيع التكاليف والبحث، وامنع الحذف أو التعديل غير المقصود باستخدام أقفال الموارد للقراءة فقط أو أقفال الحذف. تتمرن على Cloud & IT Cert Prep مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Cloud & IT Cert Prep؟
لا تُشترط خبرة سابقة. Cloud & IT Cert Prep على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 4.
كم من الوقت يستغرق درس «علامات الموارد وأقفال الموارد»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Cloud & IT Cert Prep هذا؟
نعم. كل درس في Cloud & IT Cert Prep يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- مجموعات الإدارة والاشتراكات
- Azure Policy
- علامات الموارد وأقفال الموارد
- Azure Blueprints والامتثال