سياسة المُحيل التلقائية الجديدة في Chrome - scratch-origin-when-cross-origin

Maud Nalpas
Maud Nalpas

قبل البدء:

  • إذا لم تكن متأكّدًا من الفرق بين "الموقع الإلكتروني" و"المصدر"، يمكنك الاطّلاع على مقالة فهم مصطلح "نفس الموقع" و"المصدر نفسه".
  • لا يتضمّن عنوان Referer حرف R، وذلك بسبب خطأ إملائي أصلي في المواصفات، عِلمًا أنّه يتم كتابة العنوان Referrer-Policy وreferrer في JavaScript وDOM بشكل صحيح.

ملخّص

  • تتطوّر المتصفحات في ما يتعلّق بسياسات المُحيل التلقائية لتحسين الخصوصية لتوفير طريقة بديلة جيدة عندما لا يتم ضبط سياسة في الموقع الإلكتروني.
  • يخطّط Chrome لتفعيل strict-origin-when-cross-origin تدريجيًا كسياسة تلقائية في الإصدار 85، وقد يؤثر ذلك في حالات الاستخدام التي تعتمد على قيمة المُحيل من مصدر آخر.
  • هذا هو الإعداد التلقائي الجديد، ولكن يظلّ بإمكان المواقع الإلكترونية اختيار السياسة التي تريدها.
  • لتجربة التغيير في Chrome، يمكنك تفعيل العلامة على chrome://flags/#reduced-referrer-granularity. يمكنك أيضًا الاطّلاع على هذا العرض التوضيحي للاطّلاع على التغيير العملي.
  • بالإضافة إلى سياسة المُحيل، قد تتغير طريقة تعامل المتصفحات مع المُحيلين، لذا ننصحك بمراقبتها.

ما هي التغييرات التي يتم إجراؤها ولماذا؟

قد تتضمّن طلبات HTTP عنوان Referer الاختياري الذي يشير إلى عنوان URL المصدر أو صفحة الويب الذي تم تقديم الطلب منه. يحدّد عنوان Referer-Policy البيانات التي يتم توفيرها في العنوان Referer، وللتنقّل وإطارات iframe في document.referrer للوجهة.

ويتم تحديد المعلومات المُرسَلة في عنوان Referer في الطلب الوارد من موقعك الإلكتروني من خلال عنوان Referrer-Policy الذي تضبطه.

رسم بياني: تم إرسال الطلب إلى المُحيل.
سياسة المُحيل ومُحيل

في حال عدم ضبط سياسة، يتم استخدام الإعدادات التلقائية للمتصفّح. وغالبًا ما تستخدم المواقع الإلكترونية الإعدادات التلقائية للمتصفّح.

في عمليات التنقّل وإطارات iframe، يمكن أيضًا الوصول إلى البيانات الواردة في العنوان Referer من خلال JavaScript باستخدام document.referrer.

حتى وقت قريب، كان no-referrer-when-downgrade سياسة تلقائية واسعة النطاق في المتصفحات. ومع ذلك، أصبحت العديد من المتصفّحات الآن في مرحلة الانتقال إلى المزيد من الإعدادات التلقائية لتحسين الخصوصية.

يخطّط Chrome لتغيير سياسته التلقائية من no-referrer-when-downgrade إلى strict-origin-when-cross-origin، بدءًا من الإصدار 85.

هذا يعني أنّه في حال عدم ضبط أي سياسة لموقعك الإلكتروني، سيستخدم Chrome strict-origin-when-cross-origin تلقائيًا. تجدر الإشارة إلى أنّه بإمكانك ضبط سياسة من اختيارك، ولن يؤثّر هذا التغيير إلا في المواقع الإلكترونية التي لم يتمّ تحديد سياسة لها.

ما معنى هذا التغيير؟

يوفّر strict-origin-when-cross-origin المزيد من الخصوصية. من خلال هذه السياسة، يتم إرسال المصدر فقط في العنوان Referer للطلبات من عدّة مصادر.

ويمنع ذلك تسرُّب البيانات الخاصة التي يمكن الوصول إليها من أجزاء أخرى من عنوان URL الكامل، مثل المسار وسلسلة طلب البحث.

الرسم البياني: يتم إرسال المُحيل لطلب من مصادر متعددة بناءً على السياسة.
تم إرسال المُحيل (وdocument.referrer) لطلب من مصادر متعددة، وفقًا للسياسة.

مثلاً:

طلب من مصادر متعددة، يتم إرساله من https://site-one.example/stuff/detail?tag=red إلى https://site-two.example/...:

  • باستخدام "no-referrer-when-downgrade": المُحيل: https://site-one.example/stuff/detail?tag=red
  • باستخدام "strict-origin-when-cross-origin": المُحيل: https://site-one.example/

ما الميزات التي لم تتغيّر؟

  • كما هي الحال في no-referrer-when-downgrade، strict-origin-when-cross-origin آمن: لا يتوفّر مُحيل (العنوان Referer وdocument.referrer) عند إرسال الطلب من مصدر HTTPS (آمن) إلى مصدر HTTP واحد (غير آمن). بهذه الطريقة، إذا كان موقعك الإلكتروني يستخدم بروتوكول HTTPS (وإذا لم يكن كذلك، اجعله من الأولويات)، لن تتسرّب عناوين URL لموقعك الإلكتروني في طلبات غير مستندة إلى HTTPS، نظرًا لأنه يمكن لأي شخص على الشبكة رؤية هذه البروتوكولات، لذا قد يعرض ذلك المستخدمين لهجمات الوسيط.
  • ضِمن المصدر نفسه، تكون قيمة العنوان Referer هي عنوان URL الكامل.

مثال: طلب الأصل نفسه، المُرسَل من https://site-one.example/stuff/detail?tag=red إلى https://site-one.example/...:

  • باستخدام "strict-origin-when-cross-origin": المُحيل: https://site-one.example/stuff/detail?tag=red

ما التأثير؟

استنادًا إلى المناقشات مع المتصفحات الأخرى وتجارب Chrome التي تم تنفيذها في Chrome 84، من المتوقع أن يكون الأعطال المرئية للمستخدم محدودة.

ومن المحتمل أن يتأثر التسجيل من جهة الخادم أو الإحصاءات التي تعتمد على توفُّر عنوان URL المُحيل الكامل المتاح بانخفاض دقّة هذه المعلومات.

الإجراءات المطلوبة منك

يخطّط Chrome لبدء طرح سياسة المُحيل التلقائية الجديدة اعتبارًا من 85 عامًا (تموز (يوليو) 2020 للإصدار التجريبي، آب (أغسطس) 2020 للإصدار التجريبي، آب (أغسطس) 2020). راجِع الحالة في إدخال حالة Chrome.

التعرّف على التغيير ورصده

لفهم التغييرات التلقائية الجديدة على أرض الواقع، يمكنك الاطّلاع على هذا العرض التوضيحي.

يمكنك أيضًا استخدام هذا العرض التوضيحي لرصد السياسة المطبَّقة في نسخة Chrome الافتراضية قيد التشغيل.

اختبار التغيير ومعرفة ما إذا كان سيؤثر في موقعك الإلكتروني

يمكنك تجربة التغيير بدءًا من إصدار Chrome 81: انتقِل إلى chrome://flags/#reduced-referrer-granularity في Chrome وفعِّل العلامة. عند تفعيل هذه العلامة، ستستخدم جميع المواقع الإلكترونية التي لا تتضمن أي سياسة إعدادات strict-origin-when-cross-origin التلقائية الجديدة.

لقطة شاشة لمتصفّح Chrome: كيفية تفعيل العلامة chrome://flags/#reduced-referrer-granularity
تفعيل العلامة:

يمكنك الآن التحقّق من سلوك موقعك الإلكتروني والخلفية.

لرصد التأثير الآخر، عليك التأكّد ممّا إذا كانت قاعدة الرموز الخاصة بموقعك الإلكتروني تستخدم المُحيل، إما من خلال عنوان Referer للطلبات الواردة على الخادم أو من document.referrer في JavaScript.

قد تتعطّل أو تعمل بعض الميزات على موقعك الإلكتروني بشكل مختلف إذا كنت تستخدم مُحيل الطلبات من مصدر آخر إلى موقعك الإلكتروني (على وجه التحديد المسار و/أو سلسلة طلب البحث)، ويستخدم هذا المصدر سياسة المُحيل التلقائية للمتصفّح (أي أنّه لم يتم ضبط أي سياسات).

إذا كان ذلك يؤثر في موقعك الإلكتروني، ننصحك بالتفكير في بدائل.

إذا كنت تستخدم المُحيل للوصول إلى المسار الكامل أو سلسلة طلب البحث للطلبات الواردة إلى موقعك الإلكتروني، فلديك بعض الخيارات:

  • يمكنك استخدام أساليب وعناوين بديلة، مثل Origin وSec-fetch-Site، لحماية ملف CSRF، وتسجيل البيانات، وحالات الاستخدام الأخرى. يُرجى الاطّلاع على مقالة سياسة المُحيل والمحيل: أفضل الممارسات.
  • يمكنك الاتفاق مع الشركاء على سياسة معيّنة إذا كان ذلك مطلوبًا وواضحة للمستخدمين. قد يشكّل التحكّم في الوصول، عندما تستخدم المواقع الإلكترونية المُحيل إمكانية وصول محدَّد إلى مواردها إلى مصادر أخرى، على الرغم من تغيير Chrome، ستستمر مشاركة المصدر في عنوان Referer (وفي document.referrer).

تجدر الإشارة إلى أنّ معظم المتصفّحات تتحرك في اتجاه مشابه عندما يتعلق الأمر بالمُحيل (اطّلِع على الإعدادات التلقائية للمتصفّح وتطوراتها في مقالة "سياسة الإحالة والإحالة": أفضل الممارسات.

تنفيذ سياسة واضحة لتحسين الخصوصية في جميع أقسام موقعك الإلكتروني

ما هي سياسة Referer التي يجب إرسالها في الطلبات التي تنشأ من موقعك الإلكتروني، أي سياسة يجب ضبطها لموقعك الإلكتروني؟

حتى مع التغيير الذي طرأ على Chrome، يُفضَّل ضبط سياسة صريحة لتحسين الخصوصية مثل strict-origin-when-cross-origin أو سياسة أكثر صرامة في الوقت الحالي.

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

يمكنك الاطّلاع على سياسة المُحيل وسياسة المُحيل: أفضل الممارسات للحصول على تفاصيل حول ضبط سياسة معيّنة.

لمحة عن Chrome Enterprise

تتوفر سياسة Chrome Enterprise ForceLegacyDefaultReferrerPolicy لمشرفي تكنولوجيا المعلومات الذين يريدون فرض سياسة المُحيل التلقائية السابقة الخاصة بـ no-referrer-when-downgrade في بيئات المؤسسات. يمنح ذلك المؤسسات وقتًا إضافيًا لاختبار تطبيقاتها وتحديثها.

ستتم إزالة هذه السياسة في الإصدار 88 من Chrome.

إرسال الملاحظات

هل لديك ملاحظات تريد مشاركتها أو تريد الإبلاغ عنها؟ يمكنك مشاركة الملاحظات حول نية Chrome في الشحن أو إرسال تغريدة لأسئلتك على العنوان @maudnals.

شكرًا جزيلاً على المساهمات والملاحظات التي أرسلها جميع المراجعين، لا سيما "كاوستوبا غوفيند" و"ديفيد فان كليف" و"مايك ويست" و"سام دوتون" و"روان ميروود" و"جيكسك" و"كايس باسكيس".

المراجع