Расширение Chrome против политики безопасности контента сайта "blob объекта-src 'self':" - PullRequest
0 голосов
/ 19 сентября 2019

Я пишу расширение Chrome, которое использует <object> в скрипте контента, который загружает контент с моего центрального сервера для отображения пользователю.На некоторых веб-сайтах моя попытка установить атрибут data для <object> блокируется, и возникает следующая ошибка:

Refused to load plugin data from 'https://redacted.com/?url=https%3A%2F%2Fwww.mozilla.org%2Fen-US%2Ffirefox%2F' because it violates the following Content Security Policy directive: "default-src 'self' *.mozilla.net *.mozilla.org *.mozilla.com". Note that 'object-src' was not explicitly set, so 'default-src' is used as a fallback.

Мое расширение работает без проблем на stackoverflow.com!Заметьте, иногда вместо этого object-src 'self' blob:.

Из заголовков ответов сайта, на которые пытается загрузить мое расширение, ясно, что именно это мешает моему расширению делать то, что оно делает (эти заголовкиотсутствует на stackoverflow.com, поэтому он работает):

content-security-policy: default-src 'self' *.mozilla.net *.mozilla.org *.mozilla.com; child-src www.googletagmanager.com www.google-analytics.com www.youtube-nocookie.com trackertest.org www.surveygizmo.com accounts.firefox.com accounts.firefox.com.cn www.youtube.com; script-src 'self' *.mozilla.net *.mozilla.org *.mozilla.com 'unsafe-inline' 'unsafe-eval' www.googletagmanager.com www.google-analytics.com tagmanager.google.com www.youtube.com s.ytimg.com; style-src 'self' *.mozilla.net *.mozilla.org *.mozilla.com 'unsafe-inline'; img-src 'self' *.mozilla.net *.mozilla.org *.mozilla.com data: mozilla.org www.googletagmanager.com www.google-analytics.com adservice.google.com adservice.google.de adservice.google.dk creativecommons.org ad.doubleclick.net; frame-src www.googletagmanager.com www.google-analytics.com www.youtube-nocookie.com trackertest.org www.surveygizmo.com accounts.firefox.com accounts.firefox.com.cn www.youtube.com; connect-src 'self' *.mozilla.net *.mozilla.org *.mozilla.com www.googletagmanager.com www.google-analytics.com https://accounts.firefox.com/ https://accounts.firefox.com.cn/

Есть ли способ обойти это?Будет ли Shadow DOM вариантом?Я уже пытался добавить content_security_policy к своему manifest.json, но это никогда не сработает, потому что браузер учитывает то, что родительский веб-сайт ответил в своих заголовках.

Заранее спасибо.

...