دليل Isoline

أتمتة ملفات تعريف المتصفح بأقل الصلاحيات

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

ابدأ بغلاف تفويض

يعرّف NIST أقل الصلاحيات بأنه تقييد المستخدمين والعمليات التي تعمل نيابةً عنهم بالحد الأدنى من الوصول اللازم للمهام المعيّنة. لذلك فإن دوراً واحداً مثل automation واسع أكثر من اللازم لعمل ملفات تعريف المتصفح. فهو يقول من هو المتصل، لكنه لا يحدد أي ملف يستطيع فتحه أو أي موقع يستطيع الوصول إليه أو ما الذي يستطيع تغييره أو مدة صلاحية الإذن.

يتضمن غلاف التفويض المفيد ثمانية أبعاد:

البعد السؤال الذي ينبغي الإجابة عنه الافتراض القوي
المنفذ أي شخص أو حمولة عمل أو وكيل بدأ المهمة؟ هوية واحدة قابلة للإسناد لكل شخص أو حمولة
المستأجر أي حد مؤسسة أو عميل ينطبق؟ مؤسسة واحدة؛ لا وصول عبر المستأجرين
مجموعة الملفات ما الملفات الدقيقة التي يجوز استخدامها؟ معرّفات صريحة أو محدد مجلد/وسم راجعه الفريق
العملية ماذا يجوز للأتمتة أن تفعل؟ إجراءات مجال مسماة، لا بدائيات نظام الملفات أو العمليات
الوجهة أي مواقع أو واجهات API أو بيئات يجوز الاتصال بها؟ مصادر وبيئات معتمدة فقط
الوقت متى يبدأ التفويض وينتهي؟ بيانات اعتماد قصيرة العمر ومدة مهمة محددة
المعدل كم عملاً يمكن تنفيذه؟ حدود التزامن والطلبات والتكلفة
الأثر الجانبي ما الذي يجوز تغييره أو نشره أو حذفه أو إنفاقه؟ قراءة فقط أولاً؛ موافقة للإجراءات الأعلى أثراً

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

افصل ثلاثة أنواع من السلطة

غالباً ما تضغط أتمتة المتصفح ثلاث بيانات اعتماد مختلفة في سير عمل واحد:

  1. بيانات اعتماد الأتمتة تفوض النداءات إلى مدير الملفات أو خدمة الأتمتة.
  2. حالة جلسة الملف قد تصادق شخصاً أو حساب اختبار على موقع.
  3. تفويض الخدمة المستهدفة يحدد ما يستطيع ذلك الحساب فعله على الموقع.

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

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

يستحق التحكم عن بعد الحذر نفسه. ابتداءً من Chrome 136، توقف Chrome عن احترام مفاتيح التصحيح عن بعد على دليل البيانات الافتراضي، وأوصى بدليل بيانات مستخدم مخصص لعزل التصحيح عن الملفات الحقيقية. وذكرت Google استخراج ملفات تعريف الارتباط عبر التصحيح عن بعد سبباً للتغيير في إشعارها الأمني في 17 مارس 2025. لا تربط الأتمتة بملف متصفح يومي لشخص كاختصار.

صنّف الإجراءات قبل تعيين الأذونات

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

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

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

أصدر بيانات اعتماد ضيقة وقصيرة العمر

استخدم هوية خدمة مميزة لكل حمولة عمل. لا تُعرِ جلسة مسؤول بشري إلى التكامل المستمر (CI) أو نص محلي أو وكيل. ويُقيّد الرمز المفيد بما يلي:

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

يوصي RFC 9700 بقصر صلاحيات رمز الوصول على الحد الأدنى المطلوب، بما في ذلك خادم الموارد المقصود والموارد والإجراءات. وتشرح الإرشادات أيضاً سبب تقليل تقييد الجمهور لأثر الرمز المسرب. وتتطلب مواصفة تفويض Model Context Protocol الحالية التحقق من الجمهور وتطلب من العملاء طلب النطاقات اللازمة للعمل المقصود فقط.

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

بالنسبة إلى MCP أو أي وسيط آخر، أبقِ بيانات الاعتماد upstream منفصلة. تتطلب اعتبارات أمان تفويض MCP رموزاً خاصة بالمورد وتحظر تمرير رمز MCP الوارد إلى API upstream. وينطبق الدرس الأوسع على أي بوابة أتمتة: يتحقق كل حد ثقة من بيانات اعتماده ويصدر أو يسترجع سلطة downstream التي يحتاج إليها الإجراء المعتمد فقط.

اجعل الموافقة محددة وقابلة للتحقق

ينبغي أن تجيب الموافقة عن سؤال «الموافقة على ماذا؟». فقد يجيز تأكيد عام مثل «اسمح لهذا الوكيل» أكثر مما فهمه المراجع.

بالنسبة إلى أمر عالي الأثر، اعرض معاينة تتضمن:

  • المنفذ وحمولة العمل اللذين بدآه؛
  • المؤسسة والملف والحساب المستهدف والوجهة؛
  • وصفاً مفهوماً للتغيير المقترح؛
  • الموارد الدقيقة المتأثرة والعدد الأقصى؛
  • التكلفة المتوقعة أو الأثر الخارجي عند وجوده؛
  • القيم التي ستتغير مع تنقيح الأسرار؛
  • مسار الرجوع أو الاسترداد؛
  • انتهاء قصير للموافقة؛ و
  • سبب تعذر تنفيذ الإجراء بصلاحية أقل.

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

لا تحل الموافقة محل التفويض. لا يستطيع المراجع منح حقوق لا تملكها المؤسسة، ولا ينبغي للمطالبة أن تحول سير عمل محظوراً إلى عمل مقبول.

صمّم التنفيذ للفشل الآمن

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

الفشل الاستجابة الآمنة
رُفض الإذن توقف. أبلغ عن الإذن المفقود دون تصعيد تلقائي.
الملف مستخدم أصلاً لا تبدأ كاتباً ثانياً. انتظر ضمن حد أو أعد تعارضاً واضحاً.
فُقد الإيجار أثناء التشغيل أوقف الإجراءات الجديدة، واحفظ أدلة منقحة، وحرّك الملف عبر مسار الاسترداد.
انتهت مهلة الشبكة قبل قراءة أعد المحاولة ضمن الحد والموعد المعلنين فقط.
انقطع الاتصال بعد إرسال علّم النتيجة بأنها مجهولة. لا تكرر الإجراء إلا إذا قدم الهدف آلية idempotency آمنة.
انتهت الموافقة أو تغير الطلب ألغِ الإجراء واطلب معاينة وموافقة جديدتين.
وجهة التدقيق غير متاحة اتبع السياسة المعلنة. ينبغي عادةً أن تُمنع الإجراءات العالية الأثر عند تعذّر التحقق؛ وقد تستخدم الأحداث منخفضة الخطر مخزناً محلياً محمياً ومحدوداً.
فشل التحقق من اللقطة أو الاستعادة اعزل الحالة المتأثرة. لا تكتب فوق آخر نسخة معروفة بسلامتها.

ينبغي لكل أمر مغير أن يحدد هل هو idempotent وأي شرط مسبق يفحصه وكيف يستطيع المتصل اكتشاف النتيجة النهائية بعد الانقطاع. عبارة «أعد المحاولة عند أي خطأ» غير آمنة للإرسالات والمشتريات والحذف والدعوات وتغييرات الأذونات.

سجّل القرارات دون تسجيل الأسرار

ينبغي لحدث التدقيق أن يجعل إعادة بناء الإجراء ممكنة دون أن يصبح مخزناً ثانياً لبيانات الاعتماد. توصي إرشادات OWASP للتسجيل بتسجيل إخفاقات التفويض والعمليات الأعلى خطراً والتقاط «متى وأين ومن وماذا» وحماية الوصول إلى بيانات السجل. وتحذر أيضاً من أن السجلات قد تكشف كلمات المرور والأسرار التقنية الأخرى.

لكل قرار أتمتة، سجّل:

  • هويات الشخص والخدمة والمنفذ المفوض؛
  • المؤسسة ومرجع الملف المنقح؛
  • اسم الأمر ومعرّف الطلب ومفتاح idempotency عند الانطباق؛
  • إصدار السياسة والقرار وشفرة السبب؛
  • مرجع الموافقة والموافق للإجراء المعتمد؛
  • الوجهة المنقحة وعدد الموارد؛
  • وقت البدء ووقت الاكتمال والنتيجة؛
  • إصدارات المتصفح والعميل ومحول الأتمتة؛ و
  • حالة الاسترداد أو الإلغاء أو المراجعة اليدوية.

لا تسجل قيم ملفات تعريف الارتباط أو كلمات المرور أو رموز الوصول أو التحديث أو رؤوس التفويض أو بيانات اعتماد الوكيل أو مفاتيح التشفير أو محتوى الصفحات الكامل أو قيم النماذج أو أرشيفات الملفات الخام. قلل عناوين URL لأن المسارات ومعلمات الاستعلام قد تحتوي على بيانات شخصية أو أسرار. احمِ الوصول إلى التدقيق وحدد الاحتفاظ واختبر ما يحدث عندما يكون التسجيل بطيئاً أو ممتلئاً أو غير متاح.

مثال على سياسة ملموسة

الكود الزائف الآتي مثال تصميمي، وليس إعداداً لـ Isoline. وهو يصرح لحمولة CI بتشغيل اختبارات دخان إقليمية على ملفات التهيئة ولا شيء آخر:

principal: "workload:regional-smoke-tests"
tenant: "org:example-studio"
profiles:
  selector: "tag == qa-staging"
operations:
  allow:
    - "profile.read"
    - "profile.launch"
    - "test.run-approved-suite"
    - "profile.stop"
  deny:
    - "profile.export-session-state"
    - "profile.delete"
    - "team.manage"
destinations:
  allow:
    - "https://staging.example.test"
conditions:
  expiresAt: "2026-08-26T18:00:00Z"
  maxConcurrentProfiles: 2
  maxRuns: 20
  requireCleanStop: true
approvals:
  "staging-data.reset": "single-use-human-approval"
onUnknownSideEffect: "stop-and-review"

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

قائمة مراجعة

قبل تفعيل سير عمل أتمتة لملفات تعريف المتصفح، أكد ما يلي:

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

القيود

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

راجع الأذونات عندما تتغير عمليات العمل. أزل النطاقات غير المستخدمة، وأنهِ بيانات الاعتماد غير النشطة، وأعد اختبار مسارات الرفض، وتعامل مع أي طلب لمادة جلسة خام على أنه مراجعة أمنية منفصلة وعالية الخطر، لا ميزة أتمتة روتينية.

عن هذا الدليل

مساعدة الذكاء الاصطناعي
تُرجمت هذه المقالة مباشرةً من الإنجليزية باستخدام الذكاء الاصطناعي وCodex. تتولى Isoline مسؤولية المحتوى والادعاءات المتعلقة بالمنتج وربط المصادر. ما زالت المراجعة اللغوية على يد متحدث متمكن بالعربية مطلوبة.

المصادر

تدعم المصادر الموضوعات المدرجة أدناه. توضح تواريخ الاطّلاع متى جرى التحقق من المواد المشار إليها.

  1. مسرد NIST: أقل الصلاحيات National Institute of Standards and Technology
    الموضوعات المدعومة
    تعريف أقل الصلاحيات للأشخاص والعمليات التي تعمل نيابةً عنهم.
    تاريخ الاطّلاع
  2. الموضوعات المدعومة
    إرشادات صلاحيات رمز الوصول وموارده وإجراءاته وجمهوره وعمره وقيود مرسلِه.
    تاريخ الاطّلاع
  3. الموضوعات المدعومة
    التحقق من المورد والجمهور وطلبات النطاق الأدنى لعملاء وخوادم MCP.
    تاريخ الاطّلاع
  4. الموضوعات المدعومة
    رموز خاصة بالمورد ودفاعات الوكيل المربك وحظر تمرير رمز upstream.
    تاريخ الاطّلاع
  5. الموضوعات المدعومة
    حالة المتصفح المخزنة الحاملة للأسرار واستبعادها من التحكم بالمصدر والمخرجات العامة.
    تاريخ الاطّلاع
  6. الموضوعات المدعومة
    عزل حالة سياق المتصفح وحدّه بوصفه حد اختبار لا جهازاً موثوقاً جديداً.
    تاريخ الاطّلاع
  7. الموضوعات المدعومة
    تغييرات Chrome 136 في التصحيح عن بعد وحماية الملف الافتراضي وإرشادات دليل بيانات المستخدم المخصص.
    تاريخ الاطّلاع
  8. الموضوعات المدعومة
    تسجيل التفويض والأحداث عالية المخاطر وحقول الأحداث المفيدة وضوابط الوصول واستبعاد الأسرار.
    تاريخ الاطّلاع
اقترح تصحيحًا