الخلاصة
- تثبت CoA-Request أو Disconnect-Request الموثقة أن رسالة جاءت من قفزة RADIUS مقبولة. ولا تثبت أن المرسل مخول عن المستأجر، أو أن المحددات تعني جلسة حالية واحدة، أو أن NAS قادر على تنفيذ التغيير.
- يصل السجل القابل للدفاع بين حدثي access وaccounting الأصليين وبين مسار proxy وrealm وNAS ومفتاح الجلسة والسمات المطلوبة وهوية الإعادة وACK/NAK والحالة المركبة وحركة المرور. يحسن RADIUS/1.1 النقل ولا يحسم هذه الروابط.
اسم واحد خلفه اتصالان
المشهد الافتتاحي اختبار تشغيلي وليس حادثة منشورة. يستخدم مشترك حاسوباً على شبكة المكتب وهاتفاً على شبكة زائرة. تحمل الجلستان User-Name نفسه، لكن لكل منهما Acct-Session-Id وNAS ونقطة اتصال وسياسة مختلفة.
يريد نظام مخاطر تقييد الحاسوب فيرسل CoA-Request صحيحة بالاسم والمرشح. إذا طبق المستقبل الأمر على الجلستين، صار البحث الغامض سلطة عابرة للجلسات. وإذا اختار الأحدث، اخترع قاعدة لم يرسلها صاحب الطلب. الرفض عند تعدد التطابق يحفظ الفرق بين صحة وصول الرسالة وصحة تعيين موضوعها.
يفصل RFC 5176 بين Dynamic Authorization Client المرسل وDynamic Authorization Server المستقبل وNAS مقدم الخدمة وsession بوصفها مثيلاً للخدمة. يستطيع المستخدم امتلاك جلسات متزامنة أو متتابعة. لذلك ليس عنوان عميل RADIUS هو المشترك، وليس NAS هو الجلسة، وليس اسم الحساب اتصالاً فريداً.
وتختلف CoA عن Disconnect. تغير الأولى authorization، أما الثانية فتنهي الخدمة وتمحو سياق الجلسة. تحويل فشل مرشح محدود إلى Disconnect يوسع القرار القابل للعكس إلى انقطاع ويمحو دليلاً يحتاجه التحقيق.
عدد النتائج شرط من شروط التفويض
يمكن أن يضم التحديد Acct-Session-Id ومنفذ NAS والعنوان المخصص ومعرفات المحطات. يفيد User-Name أو Chargeable-User-Identity في منع العمل على مستخدم آخر، لكنه لا يضمن التفرد العالمي.
على المستقبل أن يميز بين صفر من الجلسات الحالية وواحدة وعدة جلسات. إن Session Context Not Found وMultiple Session Selection Unsupported ليستا رسالتين تجميليتين؛ فهما تمنعان تحويل الدليل الناقص إلى هدف مختار بالتخمين.
ويحتاج المعرف إلى provenance: أي NAS أصدره، ولأي tenant أو realm، وفي أي وقت بدأت الجلسة، وما سمات التخصيص المرتبطة. بعد restart أو إعادة الاستخدام قد تعني القيمة نفسها سياقاً آخر. الربط مع accounting فحص للسلطة لأنه يحدد من سيتحمل الأثر.
توثيق القفزة لا يمنح تفويضاً عاماً
في RADIUS التاريخي يحدد عنوان UDP المصدر shared secret. يثبت Authenticator الصحيح اتساق الحزمة مع علاقة مضبوطة على تلك القفزة. ولا يثبت موافقة بشرية أو نطاق tenant أو منشأ غير قابل للتعديل عبر الوسطاء.
يقر RFC 5176 بخطر NAS المشترك: قد يغير provider جلسات تابعة لغيره. تقلل الأسرار المنفصلة وفلترة الشبكة وreverse-path check مساحة الخطر. وتبقى السياسة المحلية مطالبة بقبول sender وrealm وNAS وtenant وsession وaction كل على حدة.
ينظم RFC 8559 طريق CoA العكسي في roaming عبر Operator-Name وOperator-NAS-Identifier مبهم تنشئه الشبكة الزائرة. يسير الطلب نحو operator realm الذي توجد فيه الجلسة، لا نحو realm في اسم المستخدم. تفك الشبكة الزائرة token إلى NAS داخلي وتحذف إشارات proxy قبل القفزة الأخيرة.
لكن الحماية hop-by-hop. يستطيع كل proxy رؤية المحتوى الذي يعالجه وتعديله ثم حماية القفزة التالية. لذلك يسجل audit جميع الوسطاء وحدود التفويض، ولا ينسب الحزمة الأخيرة مباشرة إلى مدير بعيد كما لو كانت موقعة end-to-end.
قد تكون الجلسة فريدة والفعل غير صالح
يمكن أن يكون filter أوVLAN أوrate أوvendor-specific action غير مدعوم في NAS، أو غير مناسب لنوع النفاذ، أو ممنوعاً لهذا tenant. ينبغي للمستقبل النهائي رفض المجموعة إذا تعذر تنفيذها كاملة، لا إعلان نجاح يخفي تطبيق جزء فقط.
ولا يجوز أن تكون السمة نفسها selector وaction في وقت واحد. يجب إغلاق سؤال «من؟» قبل «ماذا؟». وقد يتطلب تغيير معين تفاوضاً في طبقة أدنى. قدرة controller على ترميز قيمة لا تنشئ capability في NAS العامل.
Running code هو شاهد التوافق. تستطيع مجموعة قواعد مركزية وصف قدرة ثبت تشغيلها، ولا تستطيع إعلانها في كل الأجهزة.
إعادة الإرسال ليست قراراً ثانياً
يحافظ UDP retry غير المتغير إلى الخادم نفسه على source port وIdentifier وRequest Authenticator. أما تغير السمات فينشئ هوية طلب جديدة. ويلزم المستقبل duplicate detection خلال الفترة المقبولة.
عند غياب IPsec replay protection يقيد Event-Timestamp freshness، ولا يتغير مع retransmission. يجب أن تتساوى نافذة الوقت وذاكرة التكرار؛ وإلا أمكن تنفيذ طلب قديم ما زال طازجاً بعد نسيان تنفيذه الأول.
لا يمثل timestamp وقت اعتماد ticket ولا يثبت بقاء session نفسها. وقد ينتج response cache اثنين من ACK لتنفيذ واحد. لذا تفصل المقاييس بين الطلب الأصلي وretry وduplicate المرفوض والرد المخزن وقرار لاحق مستقل.
ما الذي يغيره RADIUS/1.1
يعرف RFC 9765 اسم ALPN وهو radius/1.1 ويتطلب TLS 1.3 أو أحدث. بعد تفاوض الطرفين تحمل TLS توثيق الاتصال وintegrity وconfidentiality. لا تستخدم حسابات Request وResponse Authenticator القديمة، ولا يؤدي Message-Authenticator وظيفة توثيق الحزمة في هذا النمط.
يربط Token من أربعة octets بين request وreply. تحمل الحزمة الجديدة قيمة جديدة، بينما يحتفظ DTLS retransmission المتطابق بقيمته. ويجري deduplication داخل connection واحدة.
هذا تصحيح مهم للنقل، لكنه لا يختار subscriber ولا يفوض عبور tenant ولا يثبت أن policy دخلت الجهاز. تبقى codes الخاصة بـCoA وDisconnect ومعاني معظم attributes. لذلك يلزم سجل للنقل يضم certificate وALPN وTLS وconnection وToken، وسجل للسلطة يضم realm وNAS وsession وaction والقرار المحلي والأثر.
ACK شهادة تحتاج إلى أثر
تعني CoA-ACK أن NAS يقرر أنه غير authorization، بينما تصنف NAK وError-Cause الرفض. بعد ذلك تقارن الحالة قبل وبعد: filter أوVLAN المركب وrate policy واستمرار accounting وحركة مرور ممثلة.
ACK بلا تغير حالة خلل enforcement. تغير بلا response خلل مراقبة النقل. NAK بعد تغير جزئي خلل atomicity. جمعها تحت إنذار واحد يفقد موضع الإصلاح.
تضم السلسلة الدنيا access وaccounting وlive inventory والمرسل والوسطاء وrequest fingerprint وIdentifier أوToken وtimestamp وعدد النتائج وقرار capability/policy والرد والحالة المركبة والpackets وعكساً محدود النطاق.
اختبار جلستين متشابهتين عمداً
أنشئ جلستين متزامنتين تشتركان في معرف مغرٍ وتختلفان في Acct-Session-Id وNAS context. ينبغي لطلب ضيق أن يغير واحدة فقط وأن يترك حركة الأخرى كما هي. حذف الحقل الفاصل يجب أن يؤدي إلى الرفض، لا إلى اختيار الأحدث أو ترتيب قاعدة البيانات.
لا تعيد الحزمة المكررة الأثر. اختبر timestamp قديماً وrealm خاطئاً وNAS خاطئاً وaction غير مدعوم. يعيد rollback الحالة السابقة بالنطاق نفسه؛ ولا يكون Disconnect عكساً إلا إذا كان الإنهاء هو القرار الأصلي.
المصادر
- RFC 5176 — التفويض الديناميكي في RADIUS
- RFC 8559 — تمرير التفويض الديناميكي
- RFC 9765 — RADIUS/1.1 وALPN
- RFC 2865 — RADIUS
- RFC 2869 — امتدادات RADIUS
- RFC 5080 — مسائل تنفيذ RADIUS
- RFC 6614 — RADIUS عبر TLS
- RFC 7360 — RADIUS عبر DTLS
- RFC 7585 — الاكتشاف الديناميكي للنظير
- IANA — أنواع RADIUS
- FreeRADIUS — استخدام CoA
- FreeRADIUS — إنشاء CoA
- Heng Lu — أولوية الكود العامل
- Heng Lu — الحد الأدنى للمواصفات الأولية والقرار المستقبلي المحلي والتبني الطوعي
إحاطة الأعضاء
سياق أعمق للملف الشخصي
سجّل الدخول بمستوى العضوية المناسب لفتح الإحاطة الكاملة وملاحظات المصادر.
للدائرة الاستراتيجية فقط
الدائرة الاستراتيجية
مفتوح لجميع القراء. افتح إحاطات الملف الشخصي بعد الانضمام وتسجيل الدخول.
انضم إلى الدائرة الاستراتيجيةلأعضاء تحالف القيادات فقط
تحالف القيادات
لأصحاب الأصول الفكرية المؤهلين وللإدارة؛ سجّل الدخول للوصول إلى إحاطات التحالف.
انضم إلى تحالف القيادات
