توضّح هذه المقالة سياسة أمان المحتوى (CSP) وكيفية دمجها في رمز إعلان AdSense. يُرجى العِلم أنّه ليس على الناشرين استخدام "سياسة أمان المحتوى". إذا كنت تريد استخدام "سياسة أمان المحتوى"، اتّبِع الخطوات أدناه للتأكّد من أنّ رمز AdSense يعمل بشكل صحيح عند تفعيل "سياسة أمان المحتوى".
ما هي "سياسة أمان المحتوى"؟
"سياسة أمان المحتوى" (CSP) هي وسيلة لتأمين صفحات الويب من خلال الحد من الموارد والنصوص البرمجية المسموح بتحميلها وتنفيذها. يمكنك تفعيل "سياسة أمان المحتوى" من خلال ضبط العنوان Content-Security-Policy في استجابات HTTP الواردة من خادم الويب.
هناك طريقتَان عاديتَان لإعداد "سياسة أمان المحتوى":
- حدِّد قائمة مسموح بها تتضمّن النطاقات التي يمكنها إدراج مصادرها في الصفحة.
- حدِّد رقمًا خاصًا عشوائيًا يجب تمييز المصادر على الصفحة به لكي يتم تحميلها. يُعرف هذا النهج باسم "سياسة أمان المحتوى" الصارمة.
بما أنّ النطاقات التي يستخدمها رمز إعلان AdSense تتغيّر بمرور الوقت، نتيح فقط استخدام "سياسة أمان المحتوى" الصارمة (الخيار 2). يؤدي هذا الأسلوب إلى عدم الحاجة إلى الاحتفاظ بقائمة متجدّدة من النطاقات التي قد تصبح قديمة وتؤدي إلى تعطُّل موقعك الإلكتروني.
كيفية إعداد "سياسة أمان المحتوى" الصارمة باستخدام رمز إعلان AdSense
لتفعيل "سياسة أمان المحتوى" على خادم الويب، اتّبِع الخطوات الموضّحة في مقالة اعتماد "سياسة أمان المحتوى" الصارمة التي توضّح كيفية إعداد عنوان هذه السياسة وتطبيق الرقم الخاص على كل علامة نص برمجي في صفحتك، بما في ذلك رمز AdSense. يتوافق رمز AdSense تحديدًا مع توجيهات "سياسة أمان المحتوى" التالية:
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/يمكنك اختيار سياسة أكثر تساهلاً إذا كانت تناسب حالة الاستخدام لديك. وقد يتم تعطل السياسات الأكثر تقييدًا بدون إشعار.
مثال للرمز
في ما يلي مثال على رمز AdSense مع "سياسة أمان المحتوى" الصارمة:
<script nonce="${nonce}" async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-1234&host=ca-host-pub-5678" crossorigin="anonymous">
</script>
<ins class="adsbygoogle"
style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-1234"
data-ad-host="ca-host-pub-5678">
</ins>
<script nonce="${nonce}">
(adsbygoogle = window.adsbygoogle || []).push({});
</script>الاختبار
ننصحك باختبار سياساتك أولاً من خلال ضبط العنوان Content-Security-Policy-Report-Only بدلاً من Content-Security-Policy. يُبلغ العنوان عن الانتهاكات، ولكن يسمح بعرضها على الصفحة.