وثائق بوابة القرار

تقييم بوابة حتمي وقابل لإعادة التشغيل مع قرارات قابلة للتدقيق.

وثائق Asset Core

نموذج تهديد بوابة القرار

نظرة عامة

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

بوابة القرار تتكون من:

  • Control plane core (scenario engine, evidence evaluation, run state, runpack نواة خطة التحكم (محرك السيناريو، تقييم الأدلة، حالة التشغيل، مُنشئ/مُحقق حزمة التشغيل).
  • خادم MCP (JSON-RPC عبر stdio/HTTP/SSE) وأدوات سطر الأوامر.
  • اتحاد المزودين (المزودين المدمجين بالإضافة إلى مزودي MCP الخارجيين).
  • طبقة الإرسال/الوسيط (حل الحمولة والتسليم).
  • Storage layers (SQLite or in-memory run state + schema registry, optional طبقات التخزين (SQLite أو حالة التشغيل في الذاكرة + سجل المخطط، تخزين كائنات اختياري لحزم التشغيل).
  • نظرة عامة على المستودع ووضع الأمان: README.md و SECURITY.md.
  • إرشادات تشغيلية وضوابط: دليل الأمان.
  • Standards and investigation workflow: Docs/standards/codebase_engineering_standards.md, معايير وسير العمل للتحقيق: Docs/standards/codebase_engineering_standards.md, Docs/standards/agent_investigation_guide.md.
  • Architecture references: Docs/architecture/decision_gate_auth_disclosure_architecture.md, Docs/architecture/decision_gate_evidence_trust_anchor_architecture.md, Docs/architecture/decision_gate_runpack_architecture.md, Docs/architecture/decision_gate_namespace_registry_rbac_architecture.md, مراجع الهندسة المعمارية: Docs/architecture/decision_gate_auth_disclosure_architecture.md, Docs/architecture/decision_gate_evidence_trust_anchor_architecture.md, Docs/architecture/decision_gate_runpack_architecture.md, Docs/architecture/decision_gate_namespace_registry_rbac_architecture.md, Docs/architecture/decision_gate_provider_capability_architecture.md.
  • Component READMEs: crates/decision-gate-core/README.md, crates/decision-gate-mcp/README.md, مستندات README للمكونات: crates/decision-gate-core/README.md, crates/decision-gate-mcp/README.md, crates/decision-gate-broker/README.md, crates/decision-gate-providers/README.md.

أهداف الأمان

  • تقييم حتمي دون تغيير مخفي للحالة.
  • Evidence-backed disclosure only; fail closed on missing, invalid, or الكشف المدعوم بالأدلة فقط؛ الفشل مغلق عند عدم وجود أدلة أو وجود أدلة غير صالحة أو غير قابلة للتحقق.
  • إمكانية التدقيق واكتشاف التلاعب لحالة التشغيل وحزم التشغيل.
  • تقليل تعرض البيانات؛ الافتراضي هو ملخصات آمنة وأدلة محجوبة.
  • Clear trust boundaries between control plane, providers, dispatch targets, حدود الثقة واضحة بين مستوى التحكم، ومقدمي الخدمة، وأهداف الإرسال، والتخزين.
  • وصول أدوات الحد الأدنى من الامتيازات وعمليات التسجيل مع تفويض صريح.
  • استخدام الموارد المحدودة (حجم الطلب، حجم استجابة المزود، حدود المعدل).

غير الأهداف / خارج النطاق

  • حماية السرية بعد الكشف عن البيانات للأنظمة السفلية.
  • الحماية ضد اختراق المضيف الكامل أو نواة النظام دون وجود ضوابط خارجية.
  • تأمين مقدمي خدمات MCP الخارجيين، والمصارف السفلية، أو تطبيقات العملاء.
  • إثبات الأجهزة، ضمانات المنطقة الآمنة، أو خدمات حفظ المفاتيح.
  • التوقيع التشفيري على حزم التشغيل أو سجلات المخطط (بخلاف حقول البيانات الوصفية).
  • إنهاء TLS وثقة الوكيل (مسؤولية النشر).

الأصول

  • مواصفات السيناريو، الشروط، وعلامات السياسة (منطق الأمان).
  • Run state logs: triggers, gate evaluations, decisions, packets, submissions, سجلات حالة التشغيل: المحفزات، تقييمات البوابات، القرارات، الحزم، التقديمات، استدعاءات الأدوات.
  • قيم الأدلة، التجزئات، المراسي، والتوقيعات.
  • تكوين سلطة مساحة الأسماء وتعيينات مساحة الأسماء.
  • Data shape registry records (JSON Schemas), versions, and optional signing سجلات تسجيل شكل البيانات (JSON Schemas)، الإصدارات، وبيانات التوقيع الاختيارية.
  • إرسال الحمولة، والمظاريف، والإيصالات.
  • تشغيل حزم Runpack، والتقارير، والتقارير التحقق.
  • عقود المزودين (عقود القدرات) والمخططات.
  • سجلات التدقيق (أداة التفويض، التحقق المسبق، قائمة التحكم في الوصول للسجل، تفويض المستأجر، الاستخدام).
  • Configuration files, provider auth tokens, registry ACL/principal mappings, ملفات التكوين، رموز مصادقة المزود، خرائط ACL/المبدأ في السجل، ومفاتيح التحقق من التوقيع.
  • Run state store (SQLite or in-memory), schema registry store, and runpack تشغيل تخزين الحالة (SQLite أو في الذاكرة)، تخزين سجل المخططات، ودليل إخراج runpack.
  • دلو تخزين الكائنات لقطع العمل وأرشيفات runpack (متوافق مع S3).
  • محتوى كتالوج الوثائق وأي وثائق إضافية تم استيرادها من القرص.

نموذج الخصم

  • خصوم الدول القومية الذين لديهم معرفة كاملة بسلوك بوابة القرار.
  • عملاء غير موثوقين أو مخترقين يصدرون مشغلات أو استدعاءات أدوات.
  • مزودو الأدلة الضارة أو المعيبة وخوادم MCP الخارجية.
  • المتسللون المهددون الذين لديهم وصول إلى التكوين أو التخزين أو السجلات.
  • المهاجمون على الشبكة القادرون على تنفيذ هجمات MITM، أو إعادة تشغيل، أو إسقاط حركة المرور.
  • مؤلفو السيناريوهات الخبيثة أو الخاطئة الذين يمكنهم تحديد مواصفات غير آمنة.
  • Malicious schema registrants or policy administrators who can poison registry المتقدمون الضارين في السجل أو مسؤولو السياسات الذين يمكنهم تسميم إدخالات السجل.
  • Attackers controlling content references or broker sources (SSRF/exfiltration المهاجمون الذين يتحكمون في مراجع المحتوى أو مصادر الوساطة (خطر SSRF/exfiltration).
  • Attackers who can tamper with on-disk provider contracts, configs, or runpack المهاجمون الذين يمكنهم العبث بعقود مزودي الخدمة المخزنة على القرص، أو التكوينات، أو عناصر التشغيل.

حدود الثقة

  • وسائل نقل خادم MCP (stdio، HTTP، SSE): جميع مدخلات JSON-RPC غير موثوقة.
  • تعريف سيناريو الإدخال: يمكن أن تشفر المواصفات منطق الكشف والوصول إلى البيانات.
  • حدود مزود الأدلة: مزودون مدمجون مقابل مزودين خارجيين MCP.
  • Namespace authority backend (Asset Core or registry): namespace validation is سلطة مساحة الأسماء الخلفية (Asset Core أو السجل): يجب أن تكون عملية التحقق من صحة مساحة الأسماء خارجية ويجب أن تفشل بشكل مغلق.
  • عقود المزود وملفات التكوين على القرص.
  • خلفية سجل المخطط (في الذاكرة/SQLite) وقرارات ACL للسجل.
  • تشغيل تخزين الحالة وتشغيل حزم العناصر: اعتبر التخزين غير موثوق.
  • Runpack object storage (S3-compatible) and metadata: treat as untrusted and تخزين كائنات Runpack (متوافق مع S3) والبيانات الوصفية: اعتبرها غير موثوقة وتحقق من التجزئة لكل عنصر.
  • مصادر الوسيط (http/ملف/مضمن) ومصارف (أنظمة خارجية).
  • أهداف الإرسال والأنظمة downstream التي تستقبل الإفصاحات.
  • بيئة التحقق غير المتصلة بالإنترنت وقرّاء العناصر.
  • Tenant authorization adapters and usage meters (if configured) are external محولات تفويض المستأجرين ومقاييس الاستخدام (إذا تم تكوينها) هي نقاط قرار خارجية.
  • استيعاب extra_paths في المستندات (القرص المحلي) وموارد MCP/القائمة/القراءة.

نقاط الدخول وسطح الهجوم

  • MCP JSON-RPC methods: tools/list, tools/call, resources/list, طرق MCP JSON-RPC: tools/list, tools/call, resources/list, resources/read.
  • MCP tools: scenario_define, scenario_start, scenario_status, scenario_next, scenario_submit, scenario_trigger, evidence_query, runpack_export, runpack_verify, providers_list, provider_contract_get, provider_check_schema_get, schemas_list, schemas_register, schemas_get, scenarios_list, precheck, decision_gate_docs_search.
  • CLI commands: serve, runpack export, runpack verify, authoring أوامر CLI: serve, runpack export, runpack verify, تأليف validate/normalize.
  • ملف التكوين ومتغير البيئة DECISION_GATE_CONFIG.
  • عمليات مزود MCP الخارجي ونقاط نهاية HTTP.
  • Built-in providers: env, json, http, time (filesystem, environment, مقدمو الخدمة المدمجون: env, json, http, time (نظام الملفات، البيئة، الشبكة).
  • External content references for packet payloads (http://, https://, مراجع المحتوى الخارجي لحمولات الحزم (http://, https://, file://, inline:).
  • مسارات التكوين، عقود المزود، أوامر/روابط المزود، مسارات الوثائق الإضافية.
  • وجهات تخزين Runpack (دليل الإخراج المحلي أو تخزين الكائنات).

ضوابط الأمان والثوابت

  • Canonical JSON hashing (RFC 8785) with non-finite float rejection for specs, تجزئة JSON القياسية (RFC 8785) مع رفض الأعداد العائمة غير المنتهية للمواصفات، السجلات، حزم التشغيل، والتجزئات.
  • تقييم ثلاثي الحالة مع Unknown يُعتبر غير ناجح.
  • Evidence hash normalization; optional signature verification (ed25519) when تطبيع تجزئة الأدلة؛ التحقق من التوقيع الاختياري (ed25519) عند التكوين.
  • Provider contract registry validates provider check params and allowed سجل عقود المزود يتحقق من معلمات فحص المزود والمقارنات المسموح بها؛ التحقق الصارم من المقارنات/النوع مفعل بشكل افتراضي.
  • Namespace authority checks enforce tenant/namespace scoping and fail closed تحقق من سلطة مساحة الأسماء يفرض نطاق المستأجر/مساحة الأسماء ويفشل في حالة الكتالوجات غير المعروفة أو غير المتاحة.
  • Evidence trust lanes enforced (verified by default); dev-permissive explicitly تم فرض مسارات ثقة الأدلة (تم التحقق منها بشكل افتراضي)؛ حيث أن السماح بالتطوير بشكل صريح يقلل الثقة إلى ما تم التأكيد عليه لمقدمي الخدمة غير المعفيين فقط.
  • Schema registry ACL enforces role/policy-class access and can require signing يفرض ACL سجل المخطط الوصول بناءً على الدور/فئة السياسة ويمكن أن يتطلب توقيع البيانات الوصفية؛ يتم تدقيق عمليات السجل.
  • Anchor policy enforcement rejects evidence missing required anchors and إنفاذ سياسة الربط يرفض الأدلة التي تفتقر إلى الربط المطلوب وينشر متطلبات الربط في تحقق تشغيل الحزمة.
  • Size and path limits for config files, provider contracts, run state stores, حدود الحجم والمسار لملفات التكوين، عقود المزودين، تخزين حالة التشغيل، استيعاب الوثائق، عناصر runpack، ومفاتيح تخزين الكائنات.
  • JSON provider enforces root-bound relative paths and emits يفرض مزود JSON مسارات نسبية مرتبطة بالجذر ويصدر مراجع file_path_rooted مع root_id + path المُعَدل.
  • RET logic hard limits: DSL inputs capped at 1 MiB with nesting depth 32; serialized requirement inputs capped at 1 MiB with default max depth 32; plan execution stack depth capped at 64 frames; constant pools capped at 65,536 إدخال.
  • HTTP/SSE and stdio request body limits; provider-specific response size حدود حجم جسم الطلب لـ HTTP/SSE و stdio؛ حدود حجم الاستجابة المحددة من قبل المزود وأوقات الانتظار.
  • حدود طلبات الطيران وحدود معدل الاختياري لاستدعاءات أداة MCP.
  • MCP tool calls require explicit authn/authz (local-only by default; bearer or تتطلب مكالمات أدوات MCP مصادقة وتفويض صريحين (محلي فقط بشكل افتراضي؛ قوائم السماح لموضوع bearer أو mTLS عند التكوين) مع تسجيل تدقيق.
  • Tool visibility filters list/call surfaces; docs search/resources can be قائمة مرشحات رؤية الأداة / واجهات الاستدعاء؛ يمكن تعطيل بحث الوثائق / الموارد.
  • يتم التحكم في استدعاءات الأدوات بواسطة خطاف تفويض المستأجر (إذا تم تكوينه) ويتم تدقيقه.
  • Precheck is read-only: asserted evidence validated against schemas, no run الفحص المسبق للقراءة فقط: دليل مؤكد تم التحقق منه ضد المخططات، دون تغيير حالة التشغيل أو الإفصاحات.
  • ملخصات آمنة لحالة العملاء؛ حذف الأدلة وفقًا للسياسة.
  • scenario_submit.payload and scenario_trigger.payload are persisted as run scenario_submit.payload و scenario_trigger.payload يتم الاحتفاظ بهما كسجلات تشغيل ويتم تضمينهما في حزم التشغيل؛ اعتبرهما كقنوات بيانات تدقيق غير سرية.
  • SQLite run state uses canonical JSON + hash verification on load; runpack حالة تشغيل SQLite تستخدم JSON القياسي + التحقق من التجزئة عند التحميل؛ تستخدم بيانات التشغيل تجزئات الملفات + التجزئة الجذرية لضمان النزاهة.

التهديدات والتخفيفات

المصادقة، التفويض، والتحكم في الوصول

  • Unauthorized tool access: local-only defaults, bearer/mTLS modes, per-tool الوصول غير المصرح به للأدوات: الإعدادات الافتراضية المحلية فقط، أوضاع bearer/mTLS، قوائم السماح لكل أداة، فلاتر رؤية الأداة، وتسجيل التدقيق.
  • Tenant/namespace abuse: namespace authority checks, default namespace إساءة استخدام المستأجر/الفضاء: فحوصات سلطة الفضاء، رفض الفضاء الافتراضي بشكل افتراضي، روابط تفويض المستأجر، وقوائم التحكم في الوصول إلى السجل.
  • Registry poisoning/leakage: ACL rules and optional signing metadata تسمم/تسرب السجل: متطلبات قواعد ACL وبيانات التوقيع الاختيارية مع سجلات التدقيق.

تحقق من صحة الإدخال وتحليله

  • Untrusted JSON-RPC/config inputs: strict typed decoding, comparator مدخلات JSON-RPC/التكوين غير موثوقة: فك تشفير صارم النوع، التحقق من المقارنات، تطبيع JSON القياسي، وحدود الحجم/المسار.
  • JSONPath/YAML parsing in json provider: root-bound relative paths (absolute تحليل JSONPath/YAML في مزود json: مسارات نسبية مرتبطة بالجذر (تم رفض المسارات المطلقة)، فحوصات التنقل، حدود الحجم، ومعالجة الأخطاء الهيكلية.
  • Provider contract tampering: contract path validation and canonical hashing التلاعب بعقد المزود: التحقق من مسار العقد والتجزئة القياسية لحمولات العقد.

سلامة الأدلة وموثوقيتها

  • Malicious or faulty providers: trust lanes, optional signature verification, مقدمو خدمات ضارة أو معيبة: مسارات الثقة، التحقق الاختياري من التوقيع، تنفيذ سياسة التثبيت، وتجزئة الأدلة الكنسية.
  • External MCP providers: response size limits, timeouts, and correlation ID مقدمو MCP الخارجيون: حدود حجم الاستجابة، مهلات، وتنظيف معرف الارتباط؛ اعتبرها عمليات غير موثوقة أو خدمات بعيدة.

كشف البيانات وتعريضها

  • Evidence leakage through tools: evidence redaction policies for تسرب الأدلة من خلال الأدوات: سياسات حذف الأدلة لـ evidence_query و scenario_next؛ ملخصات آمنة بشكل افتراضي.
  • Sensitive data in submit/trigger payloads: payloads are intentionally durable for audit/replay; mitigated by integration policy (no raw secrets, use opaque البيانات الحساسة في حمولات الإرسال/التفعيل: الحمولات مصممة لتكون دائمة عمدًا للتدقيق/إعادة التشغيل؛ يتم التخفيف من ذلك من خلال سياسة التكامل (لا أسرار خام، استخدم مقبضات غير شفافة ومتاجر أسرار خارجية).
  • Policy bypass in dispatch: optional policy engine (permit_all, deny_all, تجاوز السياسة في الإرسال: محرك السياسة الاختياري (permit_all, deny_all, أو القواعد الثابتة) يتحكم في الكشف قبل الإرسال.

سلامة التخزين والتشغيل

  • Run state tampering: SQLite store verifies canonical hash on load and fails التلاعب بحالة التشغيل: يتحقق تخزين SQLite من تجزئة الكانونية عند التحميل ويفشل مغلقًا؛ إصدارات حالة التشغيل هي فقط للإضافة (مع تقليم الاحتفاظ الاختياري).
  • Runpack tampering: verifier checks artifact hashes, root hash, and anchor policy; no built-in signing (external signing/WORM required for التلاعب بحزمة التشغيل: يتحقق المدقق من تجزئة الأرتيفكت، التجزئة الجذرية، وسياسة التثبيت؛ لا يوجد توقيع مدمج (يتطلب توقيع خارجي/WORM لعدم الإنكار).

مقدمو الخدمات الخارجيون، المصادر، والإرسال

  • Broker sources (http/file/inline) used for payload resolution: content hash verification, content type checks, size limits, no redirects (HTTP), and مصادر الوسيط (http/ملف/مضمن) المستخدمة لحل الحمولة: التحقق من تجزئة المحتوى، فحوصات نوع المحتوى، حدود الحجم، عدم إعادة التوجيه (HTTP)، وفرض المسار الجذري الاختياري (ملف).
  • Built-in providers: allowlists/denylists and size limits for env, root restrictions and size limits for json, and host allowlists + https-only الإعدادات الافتراضية لـ http.

توافر واستنفاد الموارد

  • Large requests/responses: max_body_bytes, provider response caps, schema size limits, runpack artifact limits, and optional rate limiting/inflight الطلبات/الردود الكبيرة: max_body_bytes، حدود استجابة المزود، حدود حجم المخطط، حدود عناصر runpack، وحدود معدل الاختياري/الحدود الجارية.
  • مهلات مزود الخدمة: مهلات مزود HTTP وحدود استجابة مزود MCP.

بيئة سلسلة التوريد والتنفيذ

  • External providers execute with local privileges; use OS sandboxing, scoped يقوم مقدمو الخدمات الخارجيون بالتنفيذ بامتيازات محلية؛ يستخدمون عزل نظام التشغيل، بيانات الاعتماد المحدودة، وأدنى الأذونات.
  • Provider contracts, configs, and docs extra_paths are local file inputs and عقود المزودين، والتكوينات، والمستندات extra_paths هي مدخلات ملفات محلية ويجب حمايتها بواسطة قوائم التحكم في الوصول لنظام الملفات وضوابط النزاهة.

تعدد المستأجرين والعزل

  • Tenant/namespace IDs are labels, not access controls: enforce authn/authz, معرفات المستأجر/الفضاء هي تسميات، وليست ضوابط وصول: فرض المصادقة والتفويض، وموصلات تفويض المستأجر، وقوائم التحكم في الوصول في النشر المشترك.

قابلية التدقيق والمراقبة

  • Auth decisions, registry access, tenant authz, and usage are logged with يتم تسجيل قرارات المصادقة، والوصول إلى السجل، وتفويض المستأجر، والاستخدام مع أحداث تدقيق منظمة؛ سجلات الفحص المسبق تكون بالهاش فقط بشكل افتراضي.

مراجع التنفيذ (التحكمات والحمايات)

وقت التشغيل الأساسي

  • Canonical JSON hashing and non-finite float rejection: تجزئة JSON القياسية ورفض الأعداد العائمة غير المحدودة: crates/decision-gate-core/src/core/hashing.rs.
  • Tri-state comparator evaluation: تقييم المقارن ثلاثي الحالة: crates/decision-gate-core/src/runtime/comparator.rs.
  • Trust lane enforcement and anchor policy validation: crates/decision-gate-core/src/runtime/engine.rs, تنفيذ مسار الثقة والتحقق من سياسة الربط: crates/decision-gate-core/src/runtime/engine.rs, crates/decision-gate-core/src/core/evidence.rs.
  • Safe summaries: ملخصات آمنة: crates/decision-gate-core/src/core/summary.rs.
  • Runpack build/verify and artifact size limits: حدود حجم بناء/تحقق Runpack والأثر: crates/decision-gate-core/src/runtime/runpack.rs.

خادم MCP والأدوات

  • Authn/authz, tool allowlists, bearer parsing, and auth audit: المصادقة/التفويض، قوائم الأدوات المسموح بها، تحليل حاملي الرموز، وتدقيق المصادقة: crates/decision-gate-mcp/src/auth.rs، crates/decision-gate-config/src/config.rs.
  • Request limits (max body, inflight, rate limiting) and transport handling: حدود الطلبات (الحد الأقصى للجسم، في الطيران، تحديد المعدل) ومعالجة النقل: crates/decision-gate-mcp/src/server.rs, crates/decision-gate-config/src/config.rs.
  • Correlation ID sanitization: تطهير معرف الارتباط: crates/decision-gate-mcp/src/correlation.rs.
  • Tool visibility, docs gating, evidence redaction, and precheck handling: رؤية الأدوات، حجب الوثائق، تنقيح الأدلة، ومعالجة الفحص المسبق: crates/decision-gate-mcp/src/tools.rs.
  • Audit event payloads: حمولات أحداث التدقيق: crates/decision-gate-mcp/src/audit.rs.
  • Tenant authz and usage meter seams: seams مصادقة المستأجر واستخدام المقياس: crates/decision-gate-mcp/src/tenant_authz.rs, crates/decision-gate-mcp/src/usage.rs.
  • Provider contract validation + strict comparator validation: التحقق من عقد المزود + التحقق من المقارنات الصارمة: crates/decision-gate-mcp/src/capabilities.rs، crates/decision-gate-mcp/src/validation.rs.
  • Evidence signature verification and MCP provider response caps: التحقق من توقيع الأدلة وحدود استجابة مزود MCP: crates/decision-gate-mcp/src/evidence.rs.

مقدمو الخدمة والوسيط

  • Built-in provider limits and policies: crates/decision-gate-providers/src/env.rs, crates/decision-gate-providers/src/json.rs, حدود وسياسات المزود المدمجة: crates/decision-gate-providers/src/env.rs, crates/decision-gate-providers/src/json.rs, crates/decision-gate-providers/src/http.rs, crates/decision-gate-providers/src/time.rs.
  • Provider allow/deny policy: سياسة السماح/الرفض لمقدمي الخدمة: crates/decision-gate-providers/src/registry.rs.
  • Broker payload validation and source restrictions: crates/decision-gate-broker/src/broker.rs, crates/decision-gate-broker/src/source/file.rs, التحقق من الحمولة الخاصة بالوسيط وقيود المصدر: crates/decision-gate-broker/src/broker.rs, crates/decision-gate-broker/src/source/file.rs, crates/decision-gate-broker/src/source/http.rs, crates/decision-gate-broker/src/source/inline.rs.

التخزين والعقود

  • SQLite run state + schema registry integrity and size limits: حالة تشغيل SQLite + سلامة سجل المخطط وحدود الحجم: crates/decision-gate-store-sqlite/src/store.rs.
  • In-memory stores (tests/demos only): مخازن الذاكرة (للاختبارات/العروض فقط): crates/decision-gate-core/src/runtime/store.rs.
  • Object-store runpack export key validation: التحقق من مفتاح تصدير runpack لمخزن الكائنات: crates/decision-gate-mcp/src/runpack_object_store.rs.
  • Config file size/path validation and defaults: التحقق من حجم/مسار ملف التكوين والقيم الافتراضية: crates/decision-gate-config/src/config.rs.
  • Canonical tool and schema contracts: عقود الأدوات والمخططات القياسية: crates/decision-gate-contract/src/tooling.rs, crates/decision-gate-contract/src/schemas.rs.
  • CLI authoring/runpack tooling: أدوات تأليف/تشغيل CLI: crates/decision-gate-cli/src/main.rs.

متطلبات التشغيل

  • Restrict MCP access to authenticated transports (mTLS, IPC ACLs, reverse قصر الوصول إلى MCP على وسائل النقل الموثوقة (mTLS، IPC ACLs، مصادقة الوكيل العكسي) وفرض TLS لـ HTTP/SSE (أو إنهاء صريح في الاتجاه العلوي).
  • Configure server.auth for non-loopback deployments; rotate tokens and قم بتكوين server.auth للنشر غير المتكرر؛ قم بتدوير الرموز والحفاظ على قوائم الأدوات المسموح بها.
  • حافظ على تعطيل dev-permissive في الإنتاج؛ تطلب مسارات الثقة الموثوقة.
  • Require signature verification for external providers where integrity تطلب التحقق من التوقيع لمقدمي الخدمات الخارجيين حيث تهم النزاهة؛ إدارة توزيع المفاتيح بشكل آمن.
  • Configure allowlists for env, json, and http providers; avoid قم بتكوين قوائم السماح لمزودي env و json و http؛ وتجنب الوصول غير المقيد إلى الملفات.
  • Restrict schemas_register, schemas_get, schemas_list, precheck, and scenarios_list to trusted callers (tool allowlists + tenant authz + registry ACLs). Restrict provider discovery tools with tool allowlists and قوائم السماح/الرفض لـ provider_discovery.
  • Configure schema registry ACL rules and signing metadata requirements where قم بتكوين قواعد ACL لسجل المخططات ومتطلبات توقيع البيانات الوصفية حيث تكون الأصول مهمة؛ احمِ متجر السجل.
  • Limit or disable runpack_export for untrusted callers; restrict output قم بتحديد أو تعطيل runpack_export للمتصلين غير الموثوقين؛ قيد مسارات الإخراج وبدء تخزين الكائنات.
  • Store run state and runpacks in tamper-evident storage; sign manifests قم بتخزين حالة التشغيل و runpacks في تخزين يظهر عليه علامات التلاعب؛ قم بتوقيع البيانات الوصفية خارجيًا عندما تكون عدم الإنكار مطلوبة.
  • تطبيق عزل على مستوى نظام التشغيل لمزودي الخدمات الخارجيين ومصادر الوسطاء.
  • Set server.max_body_bytes, server.limits, and provider timeouts to قم بتعيين server.max_body_bytes و server.limits ووقت انتهاء صلاحية المزود لمنع استنفاد الموارد.
  • Disable docs search/resources in untrusted environments or restrict extra تعطيل البحث في الوثائق/الموارد في البيئات غير الموثوقة أو تقييد المسارات الإضافية لتكون في مواقع للقراءة فقط.

وضع الفشل

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

نموذج التهديد دلتا (2026-02-01)

  • Added explicit coverage for docs search/resources, tool visibility filters, تمت إضافة تغطية صريحة لبحث الوثائق / الموارد، ومرشحات رؤية الأدوات، وتنظيف معرف الارتباط، وحجب بيانات التدقيق.
  • توسيع حماية الوسطاء/المصادر وتغطية التحقق من مفاتيح تخزين الكائنات.
  • تم ربط ضوابط الأمان بمواقع الشيفرة المحددة لضمان إمكانية تتبعها.
  • تم إضافة حدود حجم/عمق إدخال التأليف بشكل صريح في تطبيع العقد.
  • تمت إضافة سياسة السماح/الرفض لمضيف مصدر HTTP مع حراس IP الخاصة/المحلية.
  • تم فرض فتح مصدر ملف آمن للروابط الرمزية للكشف عن الملفات الجذرية.