deny على shell.exec، وقائمة
سماح egress — وتعتقد أنها صحيحة. لكن قلبها للوضع الفعّال مقابل حركة مرور
الوكيل الإنتاجية قفزة إيمان: قاعدة واحدة فضفاضة وأنت تحجب استدعاءات يصدرها
وكلاؤك بشكل مشروع.
وضع الظل لجدار الحماية هو مفتاح الطرح الآمن. إنه علامة لكل سياسة تخبر
البوابة بأن تقيّم السياسة تماماً كما ستفعل في الإنتاج، وتسجّل كل شيء، لكن لا
تحجب شيئاً. يُخفَّض كل حكم فارض إلى audit، ويُسبَق سبب الحدث بـ
[shadow] would … فتقرأ بالضبط ما كانت السياسة ستفعله — دون أن تكون فعلت
أي شيء بعد.
وضع الظل علامة على السياسة، تُضبط في وحدة التحكم (أو مسارات الإدارة
/api/workspace/firewall/policies، التي تستخدم جلستك / رمز الوصول — وليس
مفتاح ترحيل sk-orca-…). تبديله إجراء Developer+. استدعاءات ترحيل
/v1/* لوكيلك لا تتغيّر.1. ماذا يفعل وضع الظل لجدار الحماية
عندما تكون علامةshadow_mode للسياسة مفعّلة، تجري البوابة التقييم الكامل —
تحل السياسة، تجتاز القواعد بترتيب الأولوية، تختار حكماً — ثم، قبل أن يحدث
الحكم أثره مباشرةً، تخفّض أي شيء كان سيغيّر الاستدعاء:
| الحكم المُحَل | تحت وضع الظل |
|---|---|
deny | ← audit، السبب [shadow] would deny — … |
sanitize | ← audit، السبب [shadow] would sanitize — … |
pending_approval | ← audit، السبب [shadow] would pending_approval — … |
allow / audit | دون تغيير (غير حاجبة أصلاً) |
2. طرح ملموس واحد
لنقل إن لديك سياسةprod-agents بقاعدة deny على أوامر shell المدمّرة،
وتريد تأكيد أنها لن تتعثّر على أي شيء مشروع.
فعّل وضع الظل
في Security → Firewall → Policies، افتح
prod-agents، بدّل Shadow
mode إلى مفعّل، واحفظ. تحتفظ السياسة بربطها وقواعدها — إنها تتوقف عن
الفرض فحسب.دع حركة المرور الحقيقية تتدفّق
يبقى وكلاؤك يستدعون البوابة تماماً كما كانوا. يُقيَّم كل استدعاء أداة؛ لا
شيء يُحجب. امنحها نافذة تمثيلية — طويلة بما يكفي لتغطية مزيج أدواتك
الحقيقي.
اقرأ الرفضات المحتملة
افتح الأحداث وفلتر لأجل سبب
[shadow]. يُظهر كل صف الأداة والسطح والتشغيل والقاعدة التي طابقت — فـ
[shadow] would deny — destructive shell command على استدعاء shell.exec
هو بالضبط ما ستراه في الإنتاج، ناقص الـ HTTP 400.أطفئ وضع الظل
بمجرد أن تُظهر التغذية أن السياسة تُطلق على ما تتوقعه ولا شيء لا
تتوقعه، بدّل وضع الظل إلى مطفأ. من الاستدعاء التالي فصاعداً، تصبح أحداث
[shadow] would deny تلك رفضات
firewall_blocked حقيقية.deny — أصلح
القاعدة (شدّد الـglob أو أضف
عبارة وسائط) بينما لا تزال في
الظل، وراقب التغذية مجدداً. تكرّر مقابل حركة المرور الحقيقية بنصف قطر انفجار
صفري.
3. ما لا يخفّفه وضع الظل
وضع الظل معاينة لـالسياسة، وليس مفتاح إطفاء رئيسياً. بضعة حدود أخرى تستحق المعرفة:أحكام allow وaudit دون مساس
أحكام allow وaudit دون مساس
فقط الأحكام الفارضة (
deny وsanitize وpending_approval) تُخفَّض.
allow أو audit يمرّر الاستدعاء أصلاً، فلا شيء لتخفيفه — تلك الأحداث
لا تزال تحمل وسام الظل فيمكنك معرفة أن السياسة كانت في الظل حين سُجِّلت.cap_cost يُحَل قبل التخفيض
cap_cost يُحَل قبل التخفيض
قاعدة
cap_cost تُحَل إلى allow أو
deny ملموس بناءً على الإنفاق المتراكم للتشغيل، وذلك الحكم المُحَل هو
ما يخفّضه وضع الظل بعد ذلك — رفض تجاوز سقف محتمل يظهر كـ [shadow] would deny كأي رفض آخر.إنه لكل سياسة، وليس لكل مساحة عمل
إنه لكل سياسة، وليس لكل مساحة عمل
يعيش وضع الظل على كل سياسة باستقلالية. يمكنك تظليل سياسة جديدة تماماً
بينما تظل أخرى مجرَّبة في المعارك تفرض — لا يوجد مفتاح ظل على مستوى مساحة
العمل تنسى إطفاءه.
4. وضع الظل مقابل أقراص الطرح الأخرى
يمنحك جدار الحماية ثلاثة عناصر تحكم مختلفة بـ “لا تكسر شيئاً بعد”. تحل مشاكل مختلفة:| التحكم | النطاق | السؤال الذي يجيب عليه |
|---|---|---|
| وضع الظل | سياسة واحدة | ”ماذا كانت هذه السياسة ستحجب لو فرضتها؟“ |
حكم افتراضي audit | سياسة واحدة | ”سجّل كل شيء لا تسمّيه قاعدة، لا تحجب شيئاً.” |
| وضع observe | مساحة العمل | ”أي الأدوات تعمل بـ لا سياسة تغطّيها؟” |
audit هو لـ الذيل غير المطابق لسياسة واحدة؛ ووضع observe يتعلّق بـ
ثغرات التغطية عبر مساحة العمل، وليس بفرض سياسة محددة.
يمكنك تكديسها. سياسة حجب افتراضي جديدة تحت وضع الظل هي ألطف طرح ممكن: حتى
أرضية الحجب الافتراضي تسجّل فقط
[shadow] would deny بدلاً من الحجب، فترى
المجموعة الكاملة من الاستدعاءات التي لا تغطّيها قواعد السماح لديك بعد قبل أن
يصبح الحجب حياً.5. حزم الامتثال تهبط في الظل أولاً
عند تثبيت حزمة امتثال في وضع observe (غير فارض)، تُنشأ سياسات جدار الحماية التي تجسّدها بوضع الظل مفعّلاً — تقيّم وتسجّل مقابل حركة مرورك دون حجب أي شيء. ترقية الحزمة للفرض تقلب تلك السياسات خارج الظل. نفس الآلية، مطبّقة لأجلك: أجرِ عناصر التحكم تجريبياً، اقرأ الأحكام المحتملة، ثم افرض.6. تبديله
في وحدة التحكم، وضع الظل مبدّل في محرر السياسة. نفس العلامة مكشوفة على API الإدارة كـshadow_mode على كائن السياسة — تستخدم هذه المسارات جلستك / رمز
الوصول وتتطلب Developer+:
| الطريقة والمسار | الدور | ملاحظة |
|---|---|---|
PUT /api/workspace/firewall/policies | Developer+ | اضبط shadow_mode: true / false على السياسة في الجسم. |
GET /api/workspace/firewall/policies/:id | Member | اقرأ حالة shadow_mode الحالية لسياسة. |
version للسياسة، فتفعيل الظل وإطفاؤه نفسه متعقَّب.
أين تذهب بعد ذلك
إنشاء وربط سياسة
الإعداد من خطوتين الذي يطرحه وضع الظل — أنشئ السياسة، اربط مفتاحاً.
سجل الأحداث
حيث يظهر
[shadow] would … — فلتر، تعمّق في التشغيلات والقواعد.الأحكام
الأحكام الفارضة التي يخفّضها وضع الظل، وماذا يفعل كل منها حياً.
أوضاع الفرض
كيف يلائم الظل والتدقيق وobserve نموذج الفرض الأوسع.
