سمات المحتوى والأمان والتصميم الخاصة بـ IFRAME
يسمح لك العنصر بتضمين صفحات ويب أخرى مباشرة في صفحة الويب الخاصة بك. ولكن عند استخدام iframe ، هناك بعض مشكلات الأمان والتصميم التي لم يتم تناولها في HTML 4.01. تجلب HTML5 ثلاث سمات جديدة إلى هذا العنصر للمساعدة في معالجة هذه المخاوف:
سمة وضع الحماية
تعد سمة وضع الحماية لعنصر IFRAME ميزة أمان مفيدة جدًا لإطارات iframe. عندما تقوم بوضعه في عنصر IFRAME ، فإنك تقوم بإرشاد وكيل المستخدم إلى عدم السماح بالميزات التي قد تتسبب في حدوث مخاطرة أمنية على الموقع ومستخدميه.
فمثلا:
يخبر المتصفح بعدم السماح بجميع الميزات التي قد تكون مخاطرة أمنية. على وجه التحديد ، لا يتم السماح بالمكونات الإضافية. لا يمكن تقديم النماذج. لن يتم تشغيل Sscripts ولا يُسمح بالارتباطات خارج IFRAME. وأخيرًا ، لا يُسمح بالوصول إلى ملفات تعريف الارتباط أو التخزين المحلي والصفحات الأخرى في النطاق نفسه (المصدر).
بعد ذلك ، باستخدام قيم الكلمة الرئيسية في وضع الحماية ، يمكنك إعادة تمكين بعض الميزات. هذه الكلمات هي:
- السماح بالنماذج - تقديم نموذج تقديم
- allow-same-origin - للسماح بنصوص برمجية للوصول إلى محتوى مثل ملفات تعريف الارتباط من نفس المجال الأصلي
- البرامج النصية المسموح بها - يسمح بتشغيل البرامج النصية في IFRAME هذا
- السماح بتصفح أعلى — السماح لارتباطات IFRAME والبرامج النصية بالهدف _top
ليس من المستحسن تعيين كل من نصوص السماح النصية والكلمات الرئيسية السماح لنفس الأصل معًا على نفس IFRAME. إذا قمت بذلك ، يمكن للصفحة المضمنة إزالة سمة sandbox تمامًا ، مما يؤدي إلى إلغاء أي مزايا أمان.
سمة srcdoc
السمة srcdoc هي خاصية تمنح مصمم الويب مزيدًا من التحكم في إطارات iframe بالإضافة إلى المزيد من الأمان. بدلاً من الارتباط بصفحة ويب في عنوان URL مختلف ، يضع مصمم الويب HTML الذي يتم عرضه في IFRAME داخل سمة srcdoc.
في البداية ، قد تفكر ، "كيف يختلف هذا عن وضع HTML في الصفحة؟" ومن بعض النواحي ، لا يختلف الأمر بشكل كبير.
ولكن عليك أن تضع في اعتبارك إحدى وظائف عنصر IFRAME ، وهو الحفاظ على البيانات غير الموثوقة منفصلة عن باقي الموقع.
من خلال وضع HTML الذي تم إنشاؤه بواسطة مصدر غير موثوق به ، مثل نموذج ، في IFRAME يمكنك "وضع الحماية" للمحتوى غير الموثوق به وعرضه على الصفحة. تعليقات المدونة هي مثال على ذلك. تحتوي معظم المدونات على عدد محدود فقط من علامات تعليقات HTML التي يمكن استخدامها في تعليقاتهم. ولكن بوضع هذه التعليقات في IFRAME في وضع الحماية باستخدام سمة srcdoc ، يمكن أن تكون التعليقات أكثر قوة مع الحفاظ على حماية الموقع ككل.
الأمان و Iframes
توفر السمتان السابقتان الأمان لعناصر IFRAME الخاصة بك ، ولكنها ليست دليلاً ضد كافة المواقع الضارة. إذا كان الموقع الخبيث يمكن أن يقنع أحد المستخدمين بالوصول إلى المحتوى العدائي مباشرة (مثل كتابة عنوان URL في متصفحه) فلا يزال من الممكن مهاجمته.
إذا كان ذلك ممكنًا ، فمن الأفضل تعيين المحتوى الموجود في IFRAME ضمن وضع الحماية كنوع MIME text / html-sandboxed.
السمة السلسة
السمة السلسة هي سمة منطقية تخبر المتصفح بعرض IFRAME كما لو كان جزءًا من المستند الأصلي. إذا كنت تريد عرض IFRAME بسلاسة ، فقط قم بتضمين هذه السمة في العنصر:
ولكن جعل IFRAME سلسًا أكثر من مجرد مظهر ، فهو أيضًا كيفية تفاعل الصفحة مع الإطار. فمثلا:
- سيتم فتح الارتباطات الموجودة في IFRAME في الإطار الأصل ، إلا إذا كانت صفحة IFRAME تحتوي على المجموعة المستهدفة _SELF.
- ستتم إضافة CSS في IFRAME إلى سلسلة من الوثيقة بأكملها.
- يعتبر العنصر الجذر لصفحة IFRAME أحد أبناء IFRAME.
- يتم تعيين عرض وارتفاع IFRAME بطريقة مشابهة لكيفية تعيين عناصر مستوى الكتلة الأخرى .
- عندما يتم عرض المستند الأصل بواسطة أداة عرض للكلمات مثل قارئ الشاشة ، سيتم قراءة IFRAME بدون الإعلان عنه كمستند منفصل.
- أي نصوص في المستند الأصل قد تؤثر على المستند IFRAME بنفس الطريقة. على سبيل المثال ، إذا كان أحد البرامج النصية يسرد كل الإطارات الموجودة في الصفحة ، فسيتم سرد الارتباطات الموجودة في IFRAME أيضًا.
بمعنى آخر ، تقوم السمة السلسة بأكثر بكثير من مجرد إزالة الحدود من IFRAME. إذا كنت ستقوم بتعيين IFRAME ليكون متجانسًا ، فيجب أن تكون متأكدًا جدًا من المحتويات بحيث لا تضيف أي خطر أمني على موقعك الإلكتروني عن طريق تضمين موقع ضار.