سياسة أمان المحتوى (CSP) هي وسيلة لحماية
صفحة الويب من خلال الحد من الموارد والنصوص البرمجية المسموح بتحميلها
وتنفيذها. يمكنك تفعيل ميزة "أمان المحتوى في خدمة مقارنة الأسعار" من خلال ضبط رأس Content-Security-Policy
في
استجابات HTTP من خادم الويب.
هناك طريقتان عاديتان لضبط ميزة "التحكّم في مصدر المحتوى":
حدِّد قائمة مسموح بها بالنطاقات التي يمكنها إدراج مواردها في الصفحة.
حدِّد رقمًا عشوائيًا غير قابل للتكرار، والذي يجب وضع علامة عليه في الموارد على الصفحة لتحميلها. يُعرف هذا النهج باسم CSP الصارم.
بما أنّ النطاقات التي تستخدمها علامة "ناشر Google" (GPT) تتغيّر بمرور الوقت، لا نتيح سوى وضع CSP الصارم (الخيار 2). ويزيل هذا النهج الحاجة إلى الحفاظ على قائمة متغيّرة من النطاقات التي قد تصبح قديمة وتؤدي إلى تعطُّل موقعك الإلكتروني.
إعداد ميزة "مقدّم خدمة الضبط" (CSP) باستخدام علامة GPT
فعِّل ميزة "المحتوى الآمن في صفحات الويب" على خادم الويب.
اتّبِع الخطوات الموضّحة في مقالة اعتماد سياسة CSP صارمة لإعداد عنوان CSP وتطبيق المفتاح المؤقت على كل علامة نص برمجي على صفحتك، بما في ذلك
gpt.js
. تتوافق GPT تحديدًا مع توجيهات CSP التالية:Content-Security-Policy: object-src 'none'; script-src 'nonce-{random}' 'unsafe-inline' 'unsafe-eval' 'strict-dynamic' https: http:; base-uri 'none'; report-uri https://your-report-collector.example.com/
يمكنك اختيار سياسة أكثر تساهلاً إذا كانت تناسب حالة الاستخدام. وقد يتم إيقاف السياسات الأكثر تقييدًا بدون إشعار.
فعِّل العرض على جميع النطاقات.
يمكن أن تحمّل إطارات iframe للإعلانات موارد خارجية قد لا يسمح بها ملف برمجة تطبيقات علامة التبويب CSP. بما أنّ إطارات iframe في النطاق نفسه تكتسِب سياسة CSP الخاصة بالنافذة ذات المستوى الأعلى، ولا يمكن لـ GPT التحكّم في محتوى تصميم الإعلان، لن تعمل تصميمات الإعلانات في النطاق نفسه بشكلٍ سليم مع عناوين CSP بشكلٍ عام.
لتفعيل العرض على مستوى النطاقات لجميع تصميمات الإعلانات، نفِّذ
googletag.pubads().setForceSafeFrame(true)
قبل تحميل أيّ خانات إعلانية.<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Hello GPT</title>
<script src="https://securepubads.g.doubleclick.net/tag/js/gpt.js" nonce="KC7tcz53FHqumKP1" async></script>
<script nonce="KC7tcz53FHqumKP1">
window.googletag = window.googletag || {cmd: []};
googletag.cmd.push(function() {
googletag.pubads().setForceSafeFrame(true);
});
</script>
</head>
الاختبار
ننصحك باختبار سياساتك أولاً من خلال ضبط العنوان
Content-Security-Policy-Report-Only
بدلاً من
Content-Security-Policy
. يُبلغ العنوان عن الانتهاكات، ولكنه يسمح بعرضها على الصفحة.