Я понимаю, что могу установить заголовок CSP для главной страницы моего сайта, скажем https://example.com
, чтобы ограничить то, откуда я могу загружать скрипты и другие ресурсы. Но если на главной странице нет CSP, как браузер будет обрабатывать политику при последующем запросе?
Это два примера в одном:
- Я перехожу к
https://example.com
и получаю немного HTML (без заголовка CSP) - HTML включает скрипт из
https://example.com/script.js
[*] - Этот скрипт запрашивает некоторые данные из API, отправляя GET на
https://api.example.com
[*] - Затем тот же сценарий открывает веб-сокет в том же домене
https://api.example.com
- Затем тот же сценарий отправляет другой запрос, отправляя внешнюю POST на
https://api.analytics.com
.
[*] Что произойдет на шагах 2 и 3, если ответ script.js или JSON вернется с ограниченным CSP, например Content-Security-Policy: default-src 'none'
? Будут ли изменены какие-либо последующие запросы? Делает ли браузер что-нибудь, чтобы предотвратить какие-либо запросы скрипта? Или разрешены, потому что исходная загрузка страницы не включала CSP?
Спасибо!