سياسات أمان المحتوى

يستطيع Webpack إضافة nonce إلى جميع السكربتات التي يحمّلها. لتفعيل هذه الميزة، عيّن متغير __webpack_nonce__ وضمّنه في سكربت الإدخال. بعد ذلك سيتم توليد nonce فريد مبني على الهاش وتوفيره لكل عرض صفحة فريد (ولهذا السبب يُحدَّد __webpack_nonce__ في ملف الإدخال وليس في الإعدادات). يرجى ملاحظة أن __webpack_nonce__ يجب أن يكون دائمًا سلسلة مشفّرة بصيغة base64.

أمثلة

في ملف الإدخال:

// ...
__webpack_nonce__ = "c29tZSBjb29sIHN0cmluZyB3aWxsIHBvcCB1cCAxMjM=";
// ...

تفعيل CSP

يرجى ملاحظة أن CSPs لا تكون مفعّلة افتراضيًا. يجب إرسال الترويسة المقابلة Content-Security-Policy أو وسم meta مثل <meta http-equiv="Content-Security-Policy" ...> مع المستند لتوجيه المتصفح إلى تفعيل CSP. فيما يلي مثال على شكل ترويسة CSP تتضمن عنوان CDN موجودًا في قائمة السماح:

Content-Security-Policy: default-src 'self'; script-src 'self'
https://trusted.cdn.com;

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

Trusted Types

يستطيع Webpack أيضًا استخدام Trusted Types لتحميل السكربتات المبنية ديناميكيًا، وذلك للالتزام بقيود توجيه CSP require-trusted-types-for. راجع خيار الإعداد output.trustedTypes.

Edit this page·

1 Contributor

arabpolice