وحدة ara::fw — Firewall
Diese Seite wurde vollständig KI-generiert auf Basis von SWS Firewall (R25-11) — kein offizieller AUTOSAR-Text und keine automatisch extrahierte API-Seite wie die übrigen Module. Als Interpretation gekennzeichnete Aussagen sind Schlussfolgerungen aus den Quellen.
دليل الوحدةمولَّد بالذكاء الاصطناعي
يبدل مجموعات قواعد Firewall المعتمدة على الحالة للمنصة ويبلغ عن الحزم المحظورة كـ Security Events.
يبدل مجموعات قواعد Firewall المعتمدة على الحالة للمنصة ويبلغ عن الحزم المحظورة كـ Security Events.
يقوم Functional Cluster المسمى Firewall بفلترة حزم الشبكة وفقًا لمجموعات قواعد معتمدة على الحالة من البيان (manifest) ويبلغ عن الحزم المحظورة كـ Security Events إلى IdsM (EXP_PlatformDesign ص. 92). تختار التطبيقات حالة Firewall النشطة عبر FirewallStateSwitchInterface::SwitchFirewallState. تُرجع الدالة ara::core::Future<void> وتبلغ عن أخطاء مثل kServiceNotAvailable أو kInvalidStateDependentFirewall [AP_SWS_Fw_82008]. لا تمثل الحالات قائمة ثابتة، بل تُنشأ كترقيم (enumeration) لكل واجهة تمت نمذجتها. يمكن نقل مثيلات الواجهة فقط، ولا يمكن نسخها.
تحدد الوحدة النمطية fw الـ Functional Cluster المعتمد على برنامج خفي (daemon) والمسمى Firewall لـ Adaptive Platform. واجهة برمجة التطبيقات (API) الخاصة بتطبيقاته هي الواجهة FirewallStateSwitchInterface مع العملية SwitchFirewallState()، والتي يستخدمها Adaptive Application (EXP_SWArchitecture ص. 126). يمتلك الـ cluster مهمتين: تبديل حالة Firewall والإبلاغ عن Security Events إلى Intrusion Detection System Manager (EXP_SWArchitecture ص. 197).
مخطط السياق: يربط FC Firewall بين تكوين البيان (manifest)، وتحديد الحالة من التطبيق، وتطبيق القواعد في نظام التشغيل، وإرسال تقارير SEv إلى IdsM. المصادر: EXP_PlatformDesign ص. 97، EXP_SWArchitecture ص. 197
تعتمد الفلترة على الحالة. يحدد OEM حالات مثل القيادة، أو ركن السيارة، أو التشخيص، وتطبق على الحزمة القواعد الخاصة بالحالة النشطة فقط (EXP_PlatformDesign ص. 92). في البيان (manifest)، يجمع AdaptiveFirewallModuleInstantiation عناصر StateDependentFirewall لهذا الغرض. يحتوي كل منها على خصائص قواعد مرتبة، وdefaultAction اختياري، ومراجع إلى الحالات المرتبطة بها (TPS_ManifestSpecification ص. 679). تظهر الحالات في الكود كترقيم (enumeration) يتم إنشاؤه لكل واجهة في ara::fw::states [AP_SWS_Fw_81001].
يُنشئ التطبيق كائن الواجهة من ara::core::InstanceSpecifier. منشئ الفئة هذا آمن للخيوط (thread-safe) [AP_SWS_Fw_82002]. SwitchFirewallState هو noexcept ويُرجع ara::core::Future<void> [AP_SWS_Fw_82008]. داخليًا، يطبق الـ cluster وفقًا للسيناريو كل قاعدة Firewall بشكل فردي في نظام التشغيل (EXP_SWArchitecture ص. 232). لا يمكن نسخ المثيلات، ولكن يمكن نقلها بالتأكيد. عمليات النقل ومدمّر الكائن (destructor) ليست آمنة للخيوط [AP_SWS_Fw_82004] [AP_SWS_Fw_82006].
مخطط تسلسلي: يعود طلب تغيير الحالة كـ Future. بين ذلك، يتم تطبيق كل قاعدة بشكل فردي. المصادر: EXP_SWArchitecture ص. 232، [AP_SWS_Fw_82008]
في حالة الخطأ، يحتوي Future على FwErrc::kServiceNotAvailable أو FwErrc::kInvalidStateDependentFirewall [AP_SWS_Fw_83001]. لا يمكن استنتاج المعنى إلا من الأسماء: يُرجح أن الخدمة غير متوفرة، أو أن الحالة المستهدفة تفتقر إلى تكوين قواعد صالح. عبر FwErrorDomain::ThrowAsException يمكن طرح خطأ كـ FwException [AP_SWS_Fw_83012]. لا تُعد الحزم المحظورة خطأ في API، بل يتم الإبلاغ عنها كـ Security Events إلى IdsM، مع التمييز في R23-11 إضافيًا وفقًا للبروتوكول المتباين (SWS_Firewall ص. 31). سؤال Q-45e3225696efb3dc (مفتوح)
دور FC Firewall بين التطبيق ونظام التشغيل وIdsM
تصف الوحدة النمطية fw الـ Functional Cluster المسمى Firewall لـ Adaptive Platform. وهو معتمد على برنامج خفي (daemon) ويحقق الواجهة FirewallStateSwitchInterface مع العملية SwitchFirewallState(). يستخدم Adaptive Application هذه الواجهة عبر علاقة «use» (EXP_SWArchitecture ص. 126). تقصر حالات الاستخدام الـ cluster على مهمتين: يتم تشغيل «Switch Firewall State» بواسطة Adaptive Application بمشاركة نظام التشغيل؛ وتتوجه «Report Security Event» إلى Intrusion Detection System Manager المعتمد بدوره على برنامج خفي (EXP_SWArchitecture ص. 197).
تفصل النظرة العامة على المعمارية بين التكوين والتحكم والتنفيذ:
- يوفر Machine Manifest قواعد الفلترة.
- يقوم FC Firewall بتهيئة Firewall Engine باستخدامه.
- يقوم تطبيق OEM بضبط حالة Firewall.
- يبلغ الـ cluster عن Security Events (SEvs) إلى IdsM (EXP_PlatformDesign ص. 97).
تبرز في المقدمة حالتا استخدام: الأولى هي الفلترة المعتمدة على الحالة مع حالات مخصصة لـ OEM مثل القيادة أو ركن السيارة أو جلسة التشخيص. والثانية هي دعم Intrusion Detection System عبر Security Events عند حظر الرسائل. يتولى IdsM التأهيل أو التمرير إلى SOC أو التخزين المستمر (EXP_PlatformDesign ص. 92). واجهة API التطبيقية الوحيدة للوحدة النمطية هي تغيير الحالة [AP_SWS_Fw_82008].
مخطط السياق: يتلقى FC Firewall التكوين من Machine Manifest وتوجيهات الحالة من التطبيق. ويتحكم في المحرك ونظام التشغيل ويبلغ عن SEvs إلى IdsM. المصادر: EXP_PlatformDesign ص. 97، EXP_SWArchitecture ص. 197، EXP_SWArchitecture ص. 232
حالات Firewall: من آلة الحالة في النموذج إلى الترقيم المُنشأ
في النموذج الفوقي (metamodel) للبيان، يخصص FirewallStateSwitchInterface عنصراً من نوع PortInterface. وعبر الدور firewallStateMachine، يُجمّع أي عدد (0..*) من عناصر ModeDeclarationGroupPrototype (TPS_ManifestSpecification ص. 263). الحالات الفردية هي ModeDeclarations مع السمة الاختيارية value: PositiveInteger (TPS_ManifestSpecification ص. 679).
لكل واجهة تمت نمذجتها، يتم إنشاء ترقيم (enumeration) مستقل enum class {<fwssi-sn>} : std::uint32_t في مساحة الاسم ara::fw::states. ويتم تضمينه عبر ara/fw/states/{<fwssi-sn>}.h [AP_SWS_Fw_81001]. لكل حالة Firewall تمت نمذجتها، ينشأ مُعَدِّد (enumerator) {<symbol-fw-state>} = {<fw-state-value>} [AP_SWS_Fw_81002].
بالنسبة للمستخدمين، يعني هذا: لا توجد قائمة حالات ثابتة على مستوى المنصة بأكملها. يحدد نموذج OEM الحالات الموجودة (EXP_PlatformDesign ص. 92). يتوقع SwitchFirewallState معلمة firewallState من النوع EnumT [AP_SWS_Fw_82008]. تفسير: يُرجح أن يتوافق EnumT مع ترقيم الحالة المُنشأ للواجهة المعنية؛ ومما يؤيد ذلك أن [AP_SWS_Fw_81001] يعرفها صراحة كحالات «for FirewallStateSwitchInterface». سؤال Q-26dbe38f70cb0222 (مفتوح)
مخطط السياق (النموذج–الكود): تنبع الحالات من آلة الحالة للواجهة في النموذج. لكل واجهة، يتم إنشاء ترقيم في ara::fw::states. المصادر: TPS_ManifestSpecification ص. 263، [AP_SWS_Fw_81001]، [AP_SWS_Fw_81002]، [AP_SWS_Fw_82008]
تكوين البيان (Manifest): مثيل الوحدة النمطية، ومجموعات القواعد المعتمدة على الحالة، وتعيين المنافذ
تُجمع الإعدادات الخاصة بالآلة لوحدة Firewall في AdaptiveFirewallModuleInstantiation. يحمل التحديد المقابل في R25-11 الحالة DRAFT (TPS_ManifestSpecification ص. 677). يخصص مثيل الوحدة النمطية NonOsModuleInstantiation ويشير عبر stateDepFirewall إلى أي عدد من عناصر StateDependentFirewall.
يحتوي StateDependentFirewall على:
- اختياريًا
defaultActionمن النوعFirewallActionEnum، firewallRulePropsمرتبة،- مراجع عبر
firewallState(instanceRef) إلىModeDeclarations التي يسري فيها (TPS_ManifestSpecification ص. 679).
يصفها System Template بإيجاز بأنها «Firewall rules that are defined in a firewall state» (TPS_SystemTemplate ص. 644).
القواعد نفسها هي عناصر FirewallRule ذات سمات مثل bucketSize وrefillAmount. بالإضافة إلى ذلك، يتضمن النموذج الفوقي NetworkLayerRule وTransportLayerRule، ويشمل الأخير من بين أمور أخرى نطاقات المنافذ وchecksumVerification. يمكن أيضًا لـ CouplingElement تجميع القواعد عبر firewallRule (TPS_ManifestSpecification ص. 679). للحصول على التفاصيل، يحيل System Template صراحة إلى مواصفة البيان (TPS_SystemTemplate ص. 644).
يُنشئ AdaptiveFirewallToPortPrototypeMapping الاتصال بالتطبيق. وهو يطابق مثيل الوحدة النمطية (المرجع firewall، 0..1) مع RPortPrototype الخاص بالتطبيق، والمكتوب بنوع واجهة تبديل الحالة (TPS_ManifestSpecification ص. 677). يسري قيدان:
- تسمي ملاحظة الفئة الواجهة
FirewallModeSwitchInterface، في حين يسميها عنوان الرسم وAPI بالاسمFirewallStateSwitchInterface. الاسم المعتمد للكود هو الاسم الوارد في [AP_SWS_Fw_82002]. - تحمل فئة التعيين (mapping) ومرجعها الحالة
candidate(TPS_ManifestSpecification ص. 677).
مخطط السياق (النموذج الفوقي): يجمع مثيل الوحدة النمطية مجموعات القواعد المعتمدة على الحالة. يربطها التعيين بمنفذ R-Port للتطبيق. المصادر: TPS_ManifestSpecification ص. 677، TPS_ManifestSpecification ص. 679، TPS_ManifestSpecification ص. 677
سير عملية تغيير الحالة باستخدام SwitchFirewallState
من جانب الكود، يُضمّن التطبيق ara/fw/firewall_state.h. ويُنشئ ara::fw::FirewallStateSwitchInterface عبر المنشئ الصريح من ara::core::InstanceSpecifier. هذا المنشئ هو noexcept وآمن بالنسبة للخيوط (thread-safe) [AP_SWS_Fw_82002].
يطلب SwitchFirewallState(EnumT firewallState) تغيير الحالة. والأسلوب هو noexcept ويُرجع ara::core::Future<void>. ولذلك، فإن الخطأين المحددين له FwErrc::kServiceNotAvailable وFwErrc::kInvalidStateDependentFirewall يرجعان عبر الـ Future وليس كاستثناء [AP_SWS_Fw_82008].
يُظهر سيناريو «Switch Firewall State» المسار الداخلي في ثلاث خطوات (EXP_SWArchitecture ص. 232):
- يستدعي التطبيق
SwitchFirewallState()في FC Firewall. - يستدعي الكتلة في حلقة تكرارية «foreach FirewallRule» الدالة
applyRule()في نظام التشغيل في كل مرة. - لا ترجع الاستجابة إلى التطبيق إلا بعد انتهاء الحلقة التكرارية.
تم تمييز applyRule() هناك على أنها «aapInformative». كيفية تفعيل القواعد في نظام التشغيل لم تُحدد كـ API للمنصة في حمولة البيانات (Payload). وأظهرت نسخة R22-11 المسار نفسه كسيناريو ناجح (EXP_SWArchitecture ص. 158). وبعد التغيير، لا تفحص القواعد الخاصة بالحالة النشطة ولا تقوم بالتصفية إلا هي فقط (EXP_PlatformDesign ص. 92).
مخطط تتابع: يتم الإبلاغ عن تغيير الحالة بشكل غير متزامن عبر Future. داخلياً، تطبق الكتلة كل قاعدة على حدة. المصادر: EXP_SWArchitecture ص. 232، [AP_SWS_Fw_82002]، [AP_SWS_Fw_82008]
دورة الحياة وقواعد النسخ والنقل لفئة الواجهة
تحدد الدوال الخاصة لـ FirewallStateSwitchInterface كيفية السماح بتمرير النسخ المثيلة (Instances) ([AP_SWS_Fw_82003] إلى [AP_SWS_Fw_82007]):
| العنصر | التحديد | أمان الخيوط |
|---|---|---|
منشئ من InstanceSpecifier | explicit, noexcept [AP_SWS_Fw_82002] | thread-safe |
| مُنشئ النسخ / إسناد النسخ | =delete [AP_SWS_Fw_82004] [AP_SWS_Fw_82005] | – |
| مُنشئ النقل / إسناد النقل | noexcept [AP_SWS_Fw_82006] [AP_SWS_Fw_82007] | not thread-safe |
| المهدم | noexcept [AP_SWS_Fw_82003] | not thread-safe |
ينتج عن ذلك ثلاث قواعد للاستخدام:
- لا يمكن استنساخ النسخة المثيلة، بل يمكن تمريرها فقط عبر النقل (Move) [AP_SWS_Fw_82004] [AP_SWS_Fw_82006].
- يجب على التطبيق نفسه تأمين عمليات النقل والتدمير ضد عمليات الوصول المتزامنة [AP_SWS_Fw_82003].
- تفسير: من المفترض ألا يُستخدم الكائن المصدر بعد عملية نقل لصالح
SwitchFirewallStateبعد الآن، لأن المتطلبات تصف عملية النقل فقط وليس الحالة المتبقية [AP_SWS_Fw_82007]. سؤال Q-ccf0737ee5133103 (مفتوح)
لا يذكر نص المتطلبات أي بيانات بخصوص أمان الخيوط (Thread Safety) الخاص بـ SwitchFirewallState نفسه [AP_SWS_Fw_82008].
مخطط الحالة: تنشأ النسخة المثيلة من InstanceSpecifier، ولا تُنقل إلا عبر النقل، ويتم تدميرها في النهاية. المصادر: [AP_SWS_Fw_82002]، [AP_SWS_Fw_82003]، [AP_SWS_Fw_82006]، [AP_SWS_Fw_82007]
تصفية الحزم في الحالة النشطة والإبلاغ عن Security Events
يمكن تعيين قواعد Firewall لحالة Firewall معينة. ولفحص حزمة ما، لا يتم الرجوع إلا إلى قواعد الحالة النشطة حالياً (EXP_PlatformDesign ص. 92). ولكل حالة، توفر StateDependentFirewall خصائص القواعد المرتبة والـ defaultAction الاختيارية (TPS_ManifestSpecification ص. 679).
تصف نسخة SWS ذات الإصدار R23-11 تعيين Security Events بمزيد من التفصيل (SWS_Firewall ص. 31):
- إذا لم تتطابق الحزمة مع أي قاعدة، يتم تطبيق الإجراء الافتراضي (Default Action).
- إذا حظر الإجراء الافتراضي الحزمة، تُحدد الكتلة البروتوكول المتباين. والمعيار الحاسم هو القاعدة ذات أكبر عدد من طبقات ISO/OSI المتطابقة، محسوبة ابتداءً من الطبقة الدنيا. وتحدد الطبقة غير المتطابقة الأولى فوقها البروتوكول.
- لهذا البروتوكول، يتم الإبلاغ عن SEv إلى IdsM، مثل
SEV_FW_PACKET_BLOCKED_DATALINKLAYER_MISMATCH(Ethernet) أوSEV_FW_PACKET_BLOCKED_IPV4_MISMATCHأوSEV_FW_PACKET_BLOCKED_IPV6_MISMATCHأوSEV_FW_PACKET_BLOCKED_ICMP_MISMATCH.
هذه التفاصيل مستمدة من R23-11. والمتطلبات التابعة لها ليست جزءاً من حمولة بيانات R25-11، ولذلك فهي معروضة هنا بشكل توضيحي وليس معيارياً. والمبدأ القائل بأن الرسائل المحظورة تذهب كـ SEvs إلى IdsM يسري أيضاً على R25-11 وفقاً لوصف البنية المعمارية (EXP_PlatformDesign ص. 92).
مخطط نشاط: يتم فحص حزمة مقارنة بقواعد الحالة النشطة. يؤدي الحظر الافتراضي إلى SEv خاص بالبروتوكول إلى IdsM. المصادر: EXP_PlatformDesign ص. 92، SWS_Firewall ص. 31 (R23-11)
التصرف في حالة الخطأ
يُعرّف FwErrc رموز أخطاء الوحدة في الترويسة ara/fw/fw_error_domain.h: kServiceNotAvailable=1 وkInvalidStateDependentFirewall=2 [AP_SWS_Fw_83001]. كلاهما محدد لـ SwitchFirewallState كأخطاء محتملة [AP_SWS_Fw_82008]. تفسير الأسماء، نظراً لأن المتطلبات لا تذكر شروط الإطلاق:
- من المرجح أن يُبلّغ
kServiceNotAvailableبأن FC Firewall القائم على daemon لا يمكنه تقديم الخدمة. سؤال (مفتوح) - من المرجح أن يُبلّغ
kInvalidStateDependentFirewallبأنه لا توجدStateDependentFirewallصالحة للحالة المطلوبة. سؤال (مفتوح)
يتبع نطاق الأخطاء نمط ara::core المعتاد:
- يُرجع
GetFwErrorDomain()النطاق بأمان بالنسبة للخيوط [AP_SWS_Fw_83002]. وقد تم حذف المنشئ الافتراضي لـFwErrorDomain[AP_SWS_Fw_83009]. - يُنشئ
MakeErrorCodeara::core::ErrorCode[AP_SWS_Fw_83003]. - يُرجع
Name()وMessage()اسم النطاق ونص الخطأ [AP_SWS_Fw_83010] [AP_SWS_Fw_83011]. - يشير الاسمان المستعاران
ErrcوExceptionإلىFwErrcوFwException[AP_SWS_Fw_83007] [AP_SWS_Fw_83008].
من يعمل باستخدام الاستثناءات، يمكنه تحويل رمز خطأ عبر ThrowAsException إلى FwException. هذه الدالة هي noexcept(false) ومصنفة على أنها «not exception safe» [AP_SWS_Fw_83012] [AP_SWS_Fw_83005]. وفي المقابل، لا تُعد الحزم المحظورة خطأ API؛ فهي تظهر كـ Security Events لدى IdsM (EXP_PlatformDesign ص. 92).
مخطط نشاط: يتم تقييم نتيجة تغيير الحالة عبر Future. تمر الأخطاء عبر FwErrorDomain ويمكن رميها اختيارياً كـ FwException. المصادر: [AP_SWS_Fw_82008]، [AP_SWS_Fw_83001]، [AP_SWS_Fw_83011]، [AP_SWS_Fw_83012]
أدلة تفصيلية إضافية
المواضع التالية تسند إفادات هذا الدليل؛ والمتطلبات إلزامية ومعيارية لـ R25-11 ([AP_SWS_Fw_82008]).
- [AP_SWS_Fw_82008]: العملية الوظيفية الوحيدة مع نوع الإرجاع وقائمة الأخطاء.
- [AP_SWS_Fw_82002]، [AP_SWS_Fw_82003]: إنشاء وتدمير فئة الواجهة بما في ذلك أمان الخيوط.
- [AP_SWS_Fw_81001]، [AP_SWS_Fw_81002]: أنواع الحالات المولدة.
- [AP_SWS_Fw_83001]، [AP_SWS_Fw_83012]: رموز الأخطاء والتحويل إلى استثناءات.
- EXP_SWArchitecture ص. 126، EXP_SWArchitecture ص. 197: الواجهة وحالات الاستخدام.
- EXP_SWArchitecture ص. 232: مسار تغيير الحالة. وتقع النسخة السابقة من R22-11 في EXP_SWArchitecture ص. 158.
- TPS_ManifestSpecification ص. 263، TPS_ManifestSpecification ص. 679: آلة الحالة ونموذج القواعد.
- TPS_SystemTemplate ص. 644: وصف موجز لـ
StateDependentFirewall. وتقع النسخة من R23-11 في TPS_SystemTemplate ص. 583. - SWS_Firewall ص. 31: تعيين SEv عند الحظر الافتراضي، فقط في نسخة R23-11.
دليل تم إنشاؤه بواسطة الذكاء الاصطناعي بناءً على المتطلبات ومواضع الوثائق الواردة في حمولة البيانات لـ R25-11. الإفادات الواردة من إصدارات أخرى تم تمييزها؛ والمواضع الموسومة كتفسير غير مدعومة معيارياً.
توفير ترشيح أمني لحزم الشبكة وتبديل حالات الحماية والإبلاغ عن التهديدات.
توفر وحدة الجدار الناري في منصة AUTOSAR التكيفية آلية حماية شبكية تعتمد على تبديل الحالات ديناميكياً وتطبيق قواعد الترشيح على نظام التشغيل عبر الواجهة البرمجية FirewallStateSwitchInterface [AP_SWS_Fw_82008]. وتتولى الوحدة رصد الحزم غير المطابقة وتطبيق الإجراء الافتراضي مع إبلاغ نظام كشف التسلل IdsM بالأحداث الأمنية الناتجة مواصفة الجدار الناري ص. 31. تلتزم الوحدة بنموذج أخطاء محدد ونمط نقل صارم يمنع النسخ لضمان سلامة التنفيذ وتوافر الخدمة [AP_SWS_Fw_82004].
تتولى وحدة الجدار الناري (Firewall) في منصة AUTOSAR التكيفية مهمة التحكم المركزي في تدفق الحزم الشبكية وتطبيق السياسات الأمنية المعتمدة على حالات المركبة بنية البرمجيات ص. 126. وتعمل الوحدة كخدمة مسار خلفي (daemon) تنفذ القواعد المحددة في بيان تهيئة الآلة (Machine Manifest) وتترجمها إلى تعليمات ترشيح مباشرة على مستوى نظام التشغيل الأساسي تصميم المنصة ص. 97.
تتيح الواجهة البرمجية الموحدة FirewallStateSwitchInterface للتطبيقات المخولة، مثل إدارة الحالة، إرسال طلبات تبديل الوضع التشغيلي عبر الدالة غير المتزامنة SwitchFirewallState التي تعيد كائناً من نوع ara::core::Future<void> [AP_SWS_Fw_82008]. ويجري إنشاء هذه الواجهة برمجياً باستخدام محدد النسخة InstanceSpecifier مع تقييد صارم يمنع عمليات النسخ ويسمح فقط بعمليات النقل لضمان سلامة الموارد البرمجية [AP_SWS_Fw_82002] و[AP_SWS_Fw_82004].
مخطط تسلسل: خطوات تبديل حالة الجدار الناري وتطبيق قواعد الترشيح على نظام التشغيل بشكل تكراري. المصادر: [AP_SWS_Fw_82008]، بنية البرمجيات ص. 232.
تتكامل الوحدة بشكل وثيق مع نظام كشف التسلل (IdsM)؛ فعند مصادفة حزم لا تتطابق مع القواعد المعرفة، تطبق الوحدة الإجراء الافتراضي وتقوم برفع أحداث أمنية محددة (SEvs) تعكس مستوى الطبقة الشبكية التي وقع فيها الإخفاق مواصفة الجدار الناري ص. 31. كما تخضع معالجة الأخطاء لنطاق الخطأ FwErrorDomain ورموز الأعطال FwErrc المحددة لتشخيص حالات تعذر الخدمة أو عدم صلاحية القواعد [AP_SWS_Fw_83001] و[AP_SWS_Fw_83002].
دور وحدة الجدار الناري والحدود المعمارية للنظام
تمثل وحدة الجدار الناري (Firewall / fw) في منصة AUTOSAR التكيفية عنقوداً وظيفياً مركزياً (Functional Cluster) يختص بتنفيذ سياسات التحكم في الوصول إلى شبكة المركبة وتصفية تدفق حزم البيانات على مستوى المنصة المضيفة بنية البرمجيات ص. 126. وتتولى هذه الوحدة دور الوسيط الأمني بين طبقات الاتصال الشبكي ونظام التشغيل من جهة، والتطبيقات التكيفية المصرح لها من جهة أخرى، حيث يجري تشغيلها عادة كعملية خادمة في الخلفية (daemon-based) لتطبيق قواعد الأمان المحددة في بيان تهيئة الآلة (Machine Manifest) تصميم المنصة ص. 97. يتميز هذا العنقود بفصل واضح بين مستوى التحكم (Control Plane)، الذي يستقبل طلبات الانتقال بين الحالات الأمنية، ومستوى البيانات (Data Plane) المسؤول عن تفتيش الحزم وتنفيذ إجراءات الحظر أو التمرير تصميم المنصة ص. 92.
تتكامل وحدة الجدار الناري مع أطراف متعددة داخل بنية النظام لضمان الحماية الشاملة للشبكة بنية البرمجيات ص. 197. وتتعامل الوحدة مباشرة مع نظام التشغيل الأساسي (Operating System) لتثبيت وتفعيل قواعد الترشيح، كما تتصل بنظام كشف التسلل (Intrusion Detection System Manager - IdsM) لإرسال الأحداث الأمنية (Security Events - SEvs) فور رصد أي انتهاك أو حظر لحزم البيانات بنية البرمجيات ص. 197. يُرجَّح أن عملية تطبيق القواعد على نظام التشغيل الأساسي تستخدم آليات ترشيح مدمجة في النواة مثل Netfilter أو nftables أو تقنيات eBPF وفقاً لتنفيذ المنصة المضيفة بنية البرمجيات ص. 158.
مخطط سياق: المعمارية العامة وتكامل وحدة الجدار الناري مع التطبيقات التكيفية ونظام التشغيل ونظام كشف التسلل. المصادر: تصميم المنصة ص. 97، بنية البرمجيات ص. 197، تصميم المنصة ص. 92.
تهيئة المنصة ونمذجة الواجهات عبر بيان التهيئة
يرتكز نشر وحدة الجدار الناري على نموذج رسمي دقيق ضمن بيان التهيئة (Manifest)، حيث تُعرَّف الإعدادات المخصصة لكل آلة حاسوبية عبر العنصر المصدري AdaptiveFirewallModuleInstantiation المشتق من فئة NonOsModuleInstantiation مواصفة البيان ص. 677 ومواصفة البيان ص. 677. يرتبط هذا العنصر بمنافذ التطبيقات المستهلكة من نوع RPortPrototype عن طريق التعيين البنيوي AdaptiveFirewallToPortPrototypeMapping، مما يتيح للتطبيقات التكيفية الوصول إلى واجهة تبديل الحالة الموحدة [AP_SWS_Fw_82002]. تضمن هذه الآلية ربط الصلاحيات الأمنية بالتنفيذ الفعلي لكل عملية (Process) داخل المنصة مواصفة البيان ص. 677.
تُعرَّف حالات الجدار الناري داخل الواجهة FirewallStateSwitchInterface استناداً إلى نموذج آلة الحالات (ModeDeclarationGroupPrototype) المنبثق من واجهة المنفذ PortInterface مواصفة البيان ص. 263. وتتكامل هذه الحالات مع التوصيف الثابت لقواعد الفحص عبر العنصر StateDependentFirewall، الذي يربط بين مجموعة القواعد (FirewallRule) والإجراء الافتراضي (defaultAction) المطبق عند عدم مطابقة أي قاعدة مواصفة البيان ص. 679 وقالب النظام ص. 644. يتضمن تعريف القواعد خصائص تصفية دقيقة تشمل فحص طبقات النقل والشبكة، ومنافذ المصدر والوجهة، وأحجام التدفق ومعدلات التعبئة (bucketSize وrefillAmount) لتنظيم المرور مواصفة البيان ص. 679.
مخطط أصناف: نمذجة بيانات الجدار الناري وعلاقة تجسيد الوحدة بالمنافذ والقواعد المعتمدة على الحالة. المصادر: مواصفة البيان ص. 677، مواصفة البيان ص. 263، مواصفة البيان ص. 679.
دورة حياة الواجهة وآليات التبديل الديناميكي للحالات
توفر الواجهة البرمجية للصنف ara::fw::FirewallStateSwitchInterface قناة التحكم الأساسية لتبديل أوضاع الجدار الناري أثناء التشغيل [AP_SWS_Fw_82002]. يجري إنشاء كائن الواجهة بشكل صريح باستخدام محدد النسخة ara::core::InstanceSpecifier، وهو بناء آمن من حيث الخيوط المتزامنة (thread-safe) ويدعم عدم إطلاق الاستثناءات (noexcept) [AP_SWS_Fw_82002]. ومن أجل صيانة سلامة الاتصال ومنع التنازع البرمجي، حُذفت عمليات النسخ تماماً سواء عبر مُنشئ النسخ [AP_SWS_Fw_82004] أو معامل التعيين بالنسخ [AP_SWS_Fw_82005]، في حين أُتيحت عمليات النقل السريع للبيانات عبر مُنشئ النقل [AP_SWS_Fw_82006] ومعامل التعيين بالنقل [AP_SWS_Fw_82007] دون ضمان الأمان الخيطي عند النقل، ويجري التخلص من الموارد عبر الهادم [AP_SWS_Fw_82003].
تتم عملية تغيير حالة الجدار الناري عبر استدعاء الدالة غير المتزامنة SwitchFirewallState [AP_SWS_Fw_82008]. تستقبل هذه الدالة المعامل المعبر عن الحالة المطلوبة المبني على نوع تعدادي مخصص يُولَّد لكل واجهة وفق النموذج [AP_SWS_Fw_81001] و[AP_SWS_Fw_81002]، وتُرجع كائناً من نوع ara::core::Future<void> لمتابعة اكتمال التبديل [AP_SWS_Fw_82008]. عند استلام الطلب، تقوم العملية الخادمة للجدار الناري بالمرور على جميع القواعد المخصصة لتلك الحالة وتطبيقها تتابعياً على مستوى نظام التشغيل بواسطة الاستدعاء applyRule() داخل حلقة تكرارية بنية البرمجيات ص. 232. تفسير: يظهر أن التطبيق الذي يطلب تغيير حالة الجدار الناري هو عادة وحدة إدارة الحالة (State Management) أو مدير أمني مركزي، نظراً لأن الصلاحية مرتبطة بأوضاع تشغيل المركبة ككل مثل القيادة أو الانتظار أو جلسات التشخيص تصميم المنصة ص. 92. سؤال (مفتوح)
مخطط تسلسل: خطوات تبديل حالة الجدار الناري وتطبيق قواعد الترشيح على نظام التشغيل بشكل تكراري. المصادر: [AP_SWS_Fw_82008]، بنية البرمجيات ص. 232، بنية البرمجيات ص. 158.
تكامل نظام كشف التسلل ومعالجة عدم تطابق القواعد
يشكل الرصد الأمني وظيفة محورية في عنقود الجدار الناري؛ فعند استقبال حزم بيانات شبكية لا تتطابق مع أي من القواعد المعرفة للحالة الحالية، يُنفذ الإجراء الافتراضي المحدد في النموذج (مثل الحظر الفوري) مواصفة الجدار الناري ص. 31. وفي مثل هذه الحالات، لا تكتفي الوحدة بإسقاط الحزمة، بل تقوم بتحديد بروتوكول الشبكة الذي توقفت عنده المطابقة ورفع حدث أمني مخصص (Security Event - SEv) إلى عنقود نظام كشف التسلل IdsM لاتخاذ الإجراءات التحليلية أو التخزينية المناسبة تصميم المنصة ص. 92.
تتبع عملية تصنيف عدم التطابق تسلسلاً تحليلياً يبدأ من الطبقات السفلى لنموذج ISO/OSI صعوداً إلى طبقات التطبيق مواصفة الجدار الناري ص. 31. فإذا كان عدم التطابق واقعاً على مستوى طبقة ربط البيانات، يُرفع الحدث الأمني SEV_FW_PACKET_BLOCKED_DATALINKLAYER_MISMATCH؛ وإذا حدث على مستوى بروتوكول الإنترنت، يُرفع إما SEV_FW_PACKET_BLOCKED_IPV4_MISMATCH أو SEV_FW_PACKET_BLOCKED_IPV6_MISMATCH مواصفة الجدار الناري ص. 31. وبالمثل، ترفع الوحدة الأحداث الخاصة ببروتوكولات الرسائل والتحكم مثل SEV_FW_PACKET_BLOCKED_ICMP_MISMATCH، أو بروتوكولات النقل والخدمات الأعلى مثل SOME/IP عند إخفاق التطابق في تلك المستويات مواصفة الجدار الناري ص. 31.
مخطط نشاط: مسار اتخاذ القرار عند فحص الحزم الشبكية واكتشاف عدم التطابق وتصعيد الأحداث الأمنية إلى IdsM. المصادر: مواصفة الجدار الناري ص. 31، تصميم المنصة ص. 92.
سلوك التعامل مع الأخطاء وإدارة الاستثناءات
تعتمد وحدة الجدار الناري في إدارتها للأخطاء على نموذج معالجة الأخطاء القياسي في منصة AUTOSAR التكيفية، والمتمثل في نطاق الخطأ المخصص ara::fw::FwErrorDomain [AP_SWS_Fw_83009]. يحدد التعداد ara::fw::FwErrc رموز الأعطال التي يمكن أن تنشأ أثناء طلبات التبديل أو معالجة الحالات [AP_SWS_Fw_83001]. وتشمل هذه الرموز القيمة kServiceNotAvailable (بقيمة عددية 1) التي تشير إلى عدم جاهزية أو تعذر الوصول إلى خدمة الجدار الناري الخادمة، والقيمة kInvalidStateDependentFirewall (بقيمة عددية 2) التي تشير إلى تمرير حالة غير صالحة أو عدم العثور على قواعد مطابقة في توصيف الحالة [AP_SWS_Fw_82008] و[AP_SWS_Fw_83001].
يتيح النطاق الحصول على مرجعه الثابت عبر الدالة GetFwErrorDomain() بطريقة آمنة خيطياً [AP_SWS_Fw_83002]، كما يمكن إنشاء كائنات رموز الأخطاء باستخدام الدالة المساعدة MakeErrorCode [AP_SWS_Fw_83003]. ولتسهيل التشخيص وعمليات التسجيل، يوفر نطاق الخطأ دالة الاستعلام عن الاسم Name() التي تعيد اسم النطاق المعرف [AP_SWS_Fw_83010]، ودالة Message() التي ترجع الوصف النصي المرتبط برمز الخطأ المحدد [AP_SWS_Fw_83011]. وبالإضافة إلى الاستخدام المعتمد على القيم المرجعة الخالية من الاستثناءات، تدعم الوحدة نمط الاستثناءات عبر الفئة FwException المشتقة واستدعاء ThrowAsException لتحويل رمز الخطأ إلى استثناء صريح عند الرغبة في ذلك [AP_SWS_Fw_83005] و[AP_SWS_Fw_83012]، مع توفير الأسماء البديلة للأنماط Errc وException لتوحيد المعايير البرمجية [AP_SWS_Fw_83007] و[AP_SWS_Fw_83008].
الأدلة والمراجع التفصيلية
تتكامل المتطلبات والوثائق المحددة في هذا الدليل لترسيخ التصميم المتين لوحدة الجدار الناري في الإصدار R25-11. يبرز الجدول التالي تصنيف أهم المتطلبات والمراجع الوثائقية المعتمدة ومجال تطبيقها:
| المعرف أو المرجع | نوع العنصر | مجال التطبيق والوظيفة الأساسية |
|---|---|---|
| [AP_SWS_Fw_82002] | دالة بناء | إنشاء واجهة التحكم بحالة الجدار الناري باستخدام محدد النسخة InstanceSpecifier. |
| [AP_SWS_Fw_82008] | دالة تنفيذية | تنفيذ التبديل غير المتزامن لحالة الجدار الناري وإرجاع كائن Future. |
| [AP_SWS_Fw_81001] | تعداد بياني | تعريف حالات الجدار الناري المولدة برمجياً لكل واجهة مصممة في النموذج. |
| [AP_SWS_Fw_83001] | تعداد أخطاء | حصر رموز الأخطاء الخاصة بنطاق الجدار الناري (kServiceNotAvailable وkInvalidStateDependentFirewall). |
| مواصفة البيان ص. 677 | مخطط نمذجة | ربط تجسيد وحدة الجدار الناري بمنافذ التطبيق RPortPrototype في بيان الآلة. |
| مواصفة الجدار الناري ص. 31 | مواصفة معيارية | آلية مطابقة القواعد وتصعيد الأحداث الأمنية لطبقات الشبكة المختلفة إلى IdsM. |
تم إنشاء هذا الدليل آلياً بواسطة المساعد الذكي لنظام توثيق AUTOSAR استناداً إلى متطلبات ومواصفات الإصدار R25-11 المتاحة حصراً في مدخلات المعالجة.
3 Klassen2 Namespaces1 Enumeration2 freie Funktionen
خريطة المواضيع
لا توجد بيانات عناصر لهذا الإصدار
ara::fw
Returns a reference to the FwErrorDomain object.
constexpr const ara::core::ErrorDomain &GetFwErrorDomain() noexcept;Creates an ErrorCode instance.
constexpr ara::core::ErrorCode MakeErrorCode(ara::fw::FwErrc code, ara::core::ErrorDomain::SupportDataType data) noexcept;Defines the error codes for FwErrorDomain.
enum class FwErrc : ara::core::ErrorDomain::CodeType {...};ara::fw::states
Defines the firewall states for FirewallStateSwitchInterface. The actual type is generated for each modeled interface.
enum class {<fwssi-sn>} : std::uint32_t {...};Generated enumerator declaration for each modeled firewall state.
{<symbol-fw-state>} = {<fw-state-value>};
gemini-3.8-flash-low· 2026-10-13 · الأصل الألماني