Summary

  • تضيف نسخة 27 أكتوبر من مسودة CDNI تحذيراً عملياً: قد تعيد ذاكرة مشتركة استجابة تحمل Access-Control-Allow-Origin: * إلى مصدر لم تجزه قائمة السماح، إذا أُهمل تمييز الطلبات بواسطة Vary.
  • تحدد المسودة موضع حكم CORS: المتصفح المتوافق يقرر عرض الاستجابة لبرنامج من مصدر آخر، بينما تستمر شبكة التوزيع اللاحقة في تقديم المورد العام.

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

تبدأ الرحلة عند شبكة CDN العلوية. ترسل سياسة MI.CrossoriginPolicy إلى الحافة اللاحقة عبر واجهة البيانات في RFC 8006. هناك تُقرأ قيمة Origin من الطلب وتُقارن بقائمة السماح.

إذا كان المصدر مسموحاً وكان wildcard-return مفعّلاً، يجوز للحافة أن ترد بـ Access-Control-Allow-Origin: *. وإذا لم يكن مسموحاً، فلا تضيف ترويسات CORS الخاصة بهذه السياسة. النجمة لا تسمّي الزائر الذي نجح في الفحص؛ إنها تخرج ضمن استجابة واحدة إلى متصفح واحد.

من هنا يأتي مأزق الذاكرة. إن أعادت استجابة تحمل النجمة إلى طلب قادم من مصدر مستبعد، فقد يحصل متصفح ذلك المصدر على سوار لم يُمنح له عند الباب. القسم التشغيلي الجديد يسمّي هذا الاحتمال. وتطلب المسودة من CDN اللاحقة توليد ترويسات CORS لكل استجابة، بدلاً من تخزينها جزءاً ثابتاً من نسخة المورد، وإدراج أسماء ترويسات الطلب المؤثرة في Vary.

كانت النسخة -12 تصف عناصر الإعداد. النسخة الجديدة توضح حدودها. ترويسات CORS تخبر المتصفح المتوافق هل يعرض الاستجابة لبرنامج يعمل تحت مصدر مختلف. حتى من دون هذه الترويسات، تقدم CDN اللاحقة المورد العام؛ المتصفح هو من يرفض كشفه لذلك البرنامج. الطلبات التي تضم بيانات اعتماد المتصفح بوضع include خارجة عن نطاق هذه العناصر، لأن جمع CORS مع التوثيق والتفويض يتطلب سلوكاً إضافياً.

كما أن للسياسة زمن وصول. قد تُتاح المادة لدى الشبكة العلوية قبل وصول قواعد MI.CrossoriginPolicy إلى الحافة. عندها تخدم الشبكة اللاحقة المورد بلا ترويسات CORS، ويفشل فحص المتصفح. يذكر القسم الجديد إمكان قراءة الإعداد المطبق فعلاً من واجهة RFC 8006 ومقارنته بالاستجابة المرصودة؛ ولا يضيف قناة مراقبة جديدة. إرسال القاعدة واستلامها ورؤية النتيجة وقائع منفصلة.

يسجل فهرس IETF هذه النسخة مسودة عمل لمجموعة CDNI قيد تقييم IESG. على مشغلي سلسلة التوزيع أن يتابعوا السوار بعد خروجه من مكتب الحارس، لا أن يكتفوا بصورة قائمة المدعوين.