Задайте политику безопасности контента с помощью helmet.contentSecurityPolicy ()
Напомним, что этот проект строится на следующем стартовом проекте Glitch или клонируется из GitHub . Эта проблема подчеркивает одну многообещающую новую защиту, которая может значительно снизить риск и влияние многих типов атак в современных браузерах. Установив и настроив политику безопасности контента, вы можете предотвратить ввод чего-либо непредвиденного в вашу страницу. Это защитит ваше приложение от уязвимостей XSS, нежелательного отслеживания, вредоносных фреймов и т. Д. CSP работает, определяя белый список источников контента, которым доверяют. Вы можете настроить их для каждого вида ресурсов, которые могут понадобиться веб-странице (скрипты, таблицы стилей, шрифты, фреймы, медиа и т. Д.). Существует несколько директив, поэтому владелец веб-сайта может иметь подробный контроль. См. HTML 5 Rocks, KeyCDN для более подробной информации. К сожалению, CSP не поддерживается старым браузером. По умолчанию директивы широко открыты, поэтому важно установить директиву defaultSrc как резервную. Шлем поддерживает стили именования defaultSrc и default-src. Отказ применяется к большинству неуказанных директив. В этом упражнении используйте helmet.contentSecurityPolicy () и настройте его, указав директиву по умолчаниюSrc на ["self"] (список разрешенных источников должен быть в массиве), чтобы по умолчанию доверять только ваш адрес веб-сайта. Задайте также директиву scriptSrc, чтобы разрешить загрузку скриптов с вашего сайта и из домена «trusted-cdn.com». Подсказка: в ключе «ключевое слово» одиночные кавычки являются частью самого ключевого слова, поэтому его нужно заключить в двойные кавычки для работы.
In this exercise, use helmet.contentSecurityPolicy()
, and configure it setting the defaultSrc directive
to ["self"]
(the list of allowed sources must be in an array), in order to trust only your website address by default. Set also the scriptSrc
directive so that you will allow scripts to be downloaded from your website, and from the domain 'trusted-cdn.com'.
Hint: in the self
keyword, the single quotes are part of the keyword itself, so it needs to be enclosed in double quotes to be working.