ما هي خاصية SameSite؟
خاصية SameSite هي إعداد أمني في ملفات الكوكيز (Cookies)، تجعلها تُرسل بطريقة محددة بين المواقع — الهدف: تقليل خطر هجمات مثل CSRF.
كيف تعمل؟ ثلاث أوضاع فقط، بسيطة:
1️⃣ SameSite=None
-
يُسمح للكوكيز بالانتقال بين المواقع.
-
مناسب لحالات مثل تسجيل الدخول عبر حسابات الطرف الثالث (SOCIAL LOGIN).
-
ضروري أن يكون الآمن (Secure) أي عبر HTTPS.
2️⃣ SameSite=Lax
-
الكوكيز يُرسل فقط ضمن نفس الموقع، ما عدا الطلبات المباشرة من متصفح مثل الضغط على رابط.
-
يوفر توازنًا بين الأمان والوظيفة.
3️⃣ SameSite=Strict
-
الكوكيز يُرسل فقط ضمن نفس الموقع، حتى الروابط القادمة من الموقع نفسه.
-
الخيار الأكثر أمانًا، لكنه قد يعرقل بعض الوظائف مثل تضمين الروابط أو الأعمدة الخارجية.
ليه هذا الموضوع مهم؟
-
يحمي تسجيل الدخول والجلسات من هجمات تزوير الطلبات عبر المواقع (CSRF).
-
يعزز الخصوصية ومنع التتبع غير المصرح به بين المواقع.
-
المتصفحات الحديثة تفعل الوضع "Lax" كإعداد افتراضي إذا لم يحدد المطور خاصية SameSite.
خلاصة في جملة:
SameSite
يحدد إن كانت الكوكيز تُرسل بين مواقع مختلفة أم لا، ويمنحك تحكّمًا دقيقًا في أمان الجلسات.