محتويات الدورة

Docker / أدلة البناء وعمليات الإنتاج / الدرس 17

التشغيل غير الجذري وأدلة سلسلة توريد الصور

خفف سلطة المحرك وتحقق من أصل المحتوى وما تثبته بياناته فعلاً.

وقت القراءة التقريبي: 3 دقيقةتاريخ مراجعة المحتوى
في هذه الصفحة

أهداف الدرس

  • ميّز المحرك غير الجذري ومستخدم الحاوية وإعادة تعيين النطاق.
  • قيّم الأصل والبصمات و SBOM والمصدر وفحوص السياسة.

يغير rootless حد سلطة المحرك

يشغل rootless المحرك والحاويات ضمن ترتيب نطاق مستخدم غير جذري. يختلف عن USER10001 تحت محرك جذري وعن userns-remap الذي يبقي المحرك جذرياً. قد يحد السلطة ولا يلغي مخاطر النواة وسرقة الاعتماد والوصول الممنوح للمستخدم. راجع حد الثقة كله ولا تجعل التسمية شهادة أمان.

تبقى خرائط الهوية ودعم الموارد صريحين

يعتمد الوضع على دعم النطاقات والمعرّفات التابعة، وتعتمد الموارد على cgroup ومدير الخدمات، ومنها cgroupv2 وتفويض systemd. قد تختلف الملكية والمنافذ المنخفضة والشبكة والتكامل. لا تثبت الدورة هذه المرافق أو تغيرها؛ استخدم بيئة مجهزة مصرحاً بها ومنافذ مرتفعة لا تعديلات مضيف.

bash قراءة الوجهة والوضع الأمني
docker context show
docker info --format '{{json .SecurityOptions}}'

يحدد السياق الوجهة ويعرض الحقل خيارات المحرك المصرح. لا نختلق نتيجة. لا يثبت مستخدم Dockerfile غير الجذري وضع المحرك، وقد يرى العميل بسياق آخر محركاً مختلفاً.

هوية البصمة لازمة وليست ثقة كافية

تثبت البصمة هوية البايتات لا شرعية الناشر أو سلامة التطبيق. حدد السجل والناشر والمصدر والمراجع الموثوقين. يتطلب التوقيع سياسة للهوية والادعاءات، لا قبول أي توقيع. ثبت المحتوى المعتمد واحفظ المنصة وراجع تحديثات الأمان بدلاً من تجميد بصمة ضعيفة إلى الأبد.

تجيب SBOM والمصدر عن سؤالين مختلفين

تحصي SBOM المكونات المكتشفة وتصف provenance كيفية الإنتاج ومدخلاته. لا تثبت أي منهما انعدام الثغرات أو اكتمال الكشف. راجع النطاق والأداة والربط بالبصمة. قد تكشف بيانات البناء المعاملات والمصدر، فامنع الأسرار واختر مستوى الإفصاح قبل المشاركة.

bash طلب إفادات بناء مساندة
# Review-only artifact plan for the complete source context:
docker buildx build --sbom=true --provenance=mode=min \
  --tag parcel-api:review --output type=oci,dest=parcel-reviewed.tar .

يبني الأمر لو نُفذ مخرج OCI مع الإفادات بباني ومولد متوافقين. وهو غير منفذ. يعتمد بقاء الإفادات على التصدير والمخزن؛ فافحصها وربطها بالبصمة ولا تعتبر الأعلام دليلاً على توفر دائم.

اجمع الأدلة في قرار اعتماد

قد تشترط السياسة مصدراً وبناءً معتمدين وإفادات وقائمة مكونات وتقييماً وفحوصاً وتشغيلاً محدوداً. قيّم الشدة وقابلية الاستغلال والمكونات المتاحة ومهل الإصلاح لا رقماً واحداً. اجعل الاستثناء صريحاً ومحدوداً. يخفض rootless سلطة ويثبت التوريد أصل المحتوى؛ فهما متكاملان لا بديلان عن أمان التطبيق.

الأخطاء الشائعة وإصلاحها

أُعلن USER10001 دليلاً على Docker غير جذري.

لماذا يحدث؟
خُلطت هوية العملية بسلطة المحرك ووضعه.
كيف تصلحه؟
افحص الوضع والسياق مستقلاً.
كيف تتجنب تكراره؟
ميّز هويات المحرك والخرائط والتطبيق في الأدلة.

وُثقت بصمة لمجرد تطابقها.

لماذا يحدث؟
خُلطت سلامة المحتوى بتخويل الناشر أو سلامة السلوك.
كيف تصلحه؟
تحقق من الأصل والادعاءات والسياسة وربط المخرج.
كيف تتجنب تكراره؟
حدد سياسة اعتماد تتجاوز تطابق البصمة.

تغيب الإفادات المطلوبة عن مخرج المستهلك.

لماذا يحدث؟
لم يحفظ مسار التصدير أو المخزن البيانات المطلوبة.
كيف تصلحه؟
افحص دعم التصدير والمخرج الموزع فعلاً.
كيف تتجنب تكراره؟
اختبر حفظ الأدلة عبر البناء والسجل والترقية.

اختبر فهمك

1. هل يجعل المحرك غير الجذري صورة مجهولة آمنة دون مراجعة؟

اعرض الحل المشروح

لا؛ يخفف بعض السلطة وقد تصل الصورة للملفات والأسرار والشبكة وموارد المستخدم الممنوحة. تحقق من الأصل والسلوك وقلل المنح وقيّم النواة وحد المستأجر قبل الاعتماد.

2. لماذا تربط SBOM ببصمة لا وسم متغير فقط؟

اعرض الحل المشروح

قد يشير الوسم لاحقاً إلى غير المحتوى الذي تصفه القائمة. يثبت الربط كائناً بعينه ويجعل صلته بالإصدار قابلة للتدقيق، مع بقاء مراجعة النطاق والأداة لازمة.

أهم ما تعلمته

  • يحل تقليل السلطة وفحص التوريد مشكلتين مختلفتين.
  • اربط الادعاء بالمخرج المحدد وراجع ما يثبته.

المراجع الرسمية