الانتقال إلى المحتوى الرئيسي

كيفية تجاوز سياسة نفس المنشأ وحل مشكلة كورس

  • الأستاذ تقيّ الدّين درويش
  • المدونة

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

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

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

    هناك طريقة أخرى لتجاوز سياسة نفس الأصل وهي إضافة رؤوس كورس على الخادم. ماذا يعني هذا?

    حدوث نفس المنشأ ومشكلة كورس

    سياسة نفس الأصل (سوب) أو سياسة نفس الأصل هو الأمن الرئيسي لمتصفحات الويب ، والمبدأ الأساسي الذي هو أن ليسامي ديليميتس يسمح لك بتحميل الموارد (مثل البرامج النصية والأنماط والصور) فقط من نفس الأصل (المجال والبروتوكول والمنفذ) كصفحة الويب الحالية.

    تحدث مشكلة نفس الأصل عندما نحاول تنزيل بعض الموارد (البرنامج النصي ، الصورة ، طلب واجهة برمجة التطبيقات) من مصدر آخر غير المصدر الحالي. على سبيل المثال ، إذا تم تنزيل الصفحة الرئيسية من المجال "example.com" ، ثم محاولة تنزيل برنامج نصي من المجال "api.example.org" سيؤدي إلى حظر الطلب بسبب سياسة المصدر نفسه.

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

    رأس كورس الرئيسي المستخدم لتحديد المصادر المسموح بها هو "التحكم في الوصول-السماح-المنشأ". يمكن للخادم إرسال هذا العنوان الذي يحتوي على قائمة بالنطاقات المسموح بها ، أو "*" للسماح بالوصول من أي مصدر. تقوم المتصفحات بفحص هذا الرأس قبل تنفيذ الطلب والسماح بالوصول أو حظره اعتمادا على قيمة الرأس.

    نفس الأصل: ما هو ولماذا تحتاج إلى تجاوزه

    نفس الأصل هو سياسة أمان لمتصفح الويب تحظر التفاعل بين مواقع الويب من مصادر مختلفة. بمعنى ، إذا تم تحميل صفحة ويب من مصدر واحد (المجال والبروتوكول والمنفذ) ، فيمكنها التفاعل فقط مع الموارد الأخرى من نفس المصدر.

    تم تصميم سياسة المصدر نفسه لضمان سلامة المستخدمين ومنع الإجراءات الضارة على صفحات الويب. ومع ذلك ، في بعض الأحيان هناك حالات عندما يكون من الضروري تجاوز سياسة نفس المصدر من أجل التفاعل مع الموارد من مصادر أخرى.

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

    تبادل البيانات بين علامات التبويب-تخضع صفحات الويب المحملة في علامات تبويب أو نوافذ متصفح مختلفة أيضا لسياسة المصدر نفسه. إذا كنت ترغب في تبادل البيانات بين علامات التبويب ، يمكنك استخدام أساليب مثل لوكالستوراج ، بوستمسيج ، أو شاريدوركر التي تسمح لك لتجاوز هذا القيد.

    يتطلب التحايل على سياسة المصدر نفسه الاهتمام والرعاية ، حيث يمكن أن يشكل تهديدا أمنيا محتملا. من المهم استخدام الأساليب والآليات الصحيحة لتجاوز نفس المصدر من أجل منع الهجمات المحتملة وتسرب البيانات.

    ما هو كورس وكيف يرتبط بنفس الأصل

      إضافة التحكم في الوصول-السماح-الأصل ، التحكم في الوصول-السماح-الأساليب ، التحكم في الوصول-السماح-الرؤوس وغيرها استجابة خادم الرأس للسماح بالوصول إلى المورد;

      استخدام خادم وكيل يعيد توجيه الطلبات إلى الموارد من مصادر أخرى;

        سياسة نفس المصدر هي قيود تحددها متصفحات الويب تحظر على صفحات الويب تقديم طلبات إلى موارد لا تنتمي إلى نفس الأصل (الأصل). يساعد هذا التقييد على حماية المستخدمين من تنفيذ التعليمات البرمجية التي يحتمل أن تكون خطرة بسبب المتسللين.

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

      يمكن استخدام الأساليب التالية للتحايل على سياسة المصدر نفسه وحل مشكلة كورس:

        جسونب (جسون مع الحشو) هو تقنية اجتياز جمع القمامة التي تسمح لك لتحميل البيانات من مجال آخر باستخدام

      علامة. بدلا من طلب عبر زملتبركست ، يتم إضافة برنامج نصي ديناميكي إلى الصفحة مع عنوان ورل الذي يقوم بإرجاع كائن جسون ملفوفة في وظيفة رد الاتصال.

      الخادم الوكيل هو خادم يعمل كوسيط بين عميل ومورد ويب من مجال آخر. يرسل العميل طلبات إلى الخادم الوكيل ، ويرسل الخادم بدوره طلبات إلى مورد الويب من مجال آخر ويعيد البيانات المستلمة إلى العميل. وبالتالي ، يتصل المتصفح فقط بالخادم الوكيل ، والذي قد يكون على نفس المجال مثل العميل.