Добавить источники CSP в плагин

Согласно Mitigate XSS Attacks with Content Security Policy, можно добавить набор источников в политики CSP.

Я думаю, было бы здорово добавить группу источников, аналогичных приведенным выше, для Google AdSense, чтобы плагин было проще настраивать пользователям без глубоких технических знаний.

Нарушение CSP: 'https://partner.googleadservices.com'
Нарушение CSP: 'https://tpc.googlesyndication.com'
Нарушение CSP: 'https://pagead2.googlesyndication.com'
Нарушение CSP: 'https://adservice.google.com'

Согласен! Недавно у меня реклама перестала работать на одном сайте именно по этой причине, и мне потребовалось некоторое время, чтобы найти проблему.

Действительно ли этого достаточно? Похоже, что всегда появляются другие ресурсы с других доменов, вызывающие дополнительные нарушения CSP, даже при наличии в списке google*.com. Кроме того, Google вправе в любой момент изменить источник рекламных ресурсов. Также было бы удивительно, если бы пользователь установил плагин и внезапно получил все эти разрешённые ресурсы (AdSense, Ad Manager, Amazon, CodeFund, Carbon Ads и любые другие, включённые в плагин) в своих настройках безопасности без его согласия.

Это не так, но это хороший старт. Google также отправляет письма с локализованных доменов, таких как google.com.mx или google.co.ve.

Ещё один момент — добавить раздел о CSP в документацию плагина и предоставить каждому возможность самостоятельно решить, как с этим работать.

Это было добавлено в прошлом сентябре: Discourse Advertising Plugin (Ads)

:raised_hand: У меня тоже. Всегда опасно (плохая практика) включать ограничительные настройки по умолчанию, особенно при обновлениях. Потребовалось время, чтобы понять, что сломалось.

(Это также ломает внешние скрипты согласия на использование файлов cookie, которые крайне раздражают, но являются своего рода юридическим требованием)

По умолчанию мы не будем предоставлять Google JS доступ к вашему сообществу. Кроме того, мы не можем добавить рекомендуемый список источников для настройки CSP, поскольку официальная документация Google не включает все необходимые источники и может в любой момент их изменить (и уже делала это?). На прошлой неделе мы столкнулись с этим вместе с клиентом (добавили 19 источников, чтобы всё заработало), поэтому включение CSP при использовании Google Ads будет болезненным процессом, и автоматизировать это в плагине невозможно.