Политика безопасности контента была недавно реализована в нашем программном обеспечении, хотя, поскольку она немедленно мешала работе некоторых клиентских веб-сайтов, мы удалили ее (очевидно, запутав):
header('Content-Security-Policy: [...]');
После удаления заголовка и использования Waterfox 56 (Firefox 65 и Chrome 72 немедленно начинают работать; Waterfox 56 имеет новый профиль) в консоли появляются следующие ошибки, независимо от того, что абсолютно ни один запрос не имеет Content-Security-Policy установлен!
- Политика безопасности контента: не удалось проанализировать недопустимый хост 'report-sample' (неизвестно)
- Политика безопасности содержимого: игнорирование «unsafe-inline» внутри script-src или style-src: указан nonce-source или hash-source (неизвестно)
- Политика безопасности содержимого. Этот сайт (https://[. ..] ) имеет политику только для отчетов без URI отчета. CSP не будет блокировать и не может сообщать о нарушениях этой политики. (Неизвестно)
- Политика безопасности контента: в настройках страницы наблюдалась загрузка ресурса в blob: [...]. Отчет CSP отправляется. (Неизвестно)
- Политика безопасности контента: игнорирование «unsafe-inline» в скрипте-src: «строго-динамический» указан (неизвестно)
- Политика безопасности содержимого: игнорируется «https:» в script-src: «строгая-динамическая» (неизвестно)
- Политика безопасности содержимого: Игнорируется «http:» в script-src: строгий-динамический
Процесс устранения:
- Кэш отключен в Waterfox 56, проблема все еще возникает.
- Firefox 65 и Chrome 72 сразу начинают работать, когда заголовок отключен на нашем сервере.
- Совершенно проверено, что наш сервер не отвечает заголовком даже для разных файлов.
- Отклоненные ресурсы взяты из Google Calendar API, они имеют набор заголовков, хотя одинаковые запросы в разных браузерах дают разные результаты, поэтому мы считаем, что проблема в Waterfox.
Я предполагаю, что заголовок как-то кешируется ... что смешно, поскольку у нас всегда кеш отключен для целей разработки, если мы явно не работаем с кешем. Единственным другим известным потенциальным фактором является то, что запросы связаны с API Календаря Google и заголовками ответов. Существует один запрос с установленным заголовком content-security-policy script-src 'nonce-SHP3iUMj779E…self';report-uri /o/cspreport
: https://accounts.google.com/o/oauth2/iframe. Однако, как это повлияет на наш веб-сайт клиента , где отображается контент?
Был создан новый профиль для Waterfox, и запрос с этим новым профилем, который сделал , сработал. Ниже приведена единственная ошибка, которая присутствует только в «глючном» профиле Waterfox:
Политика безопасности контента: в настройках страницы наблюдалась загрузка
ресурс в
блоб: https://content.googleapis.com/4bafd6e0-ea6f-43b2-9b43-690cbcd6b691
(«Script-src 'nonce-dxS2ZXb0sYV7IpK + nhCm6w' 'unsafe-inline'»). CSP
отчет отправляется. (Неизвестно)
Обфусцированный URL, где установлен CSP:
https://accounts.google.com/o/oauth2/iframe#origin=https://www.example.com&rpcToken=123.456
CSP этого URL:
script-src 'nonce-tdC4gM1 / O5jBKPO3TfdC9w' 'unsafe-inline' 'строгий-динамический' https: http: 'unsafe-eval'; object-src 'none'; base-uri 'self'; report-uri / о / cspreport
Почему Google вызывает эту ошибку просто для этого экземпляра Waterfox? Я удалил все файлы cookie, хранилище и т. Д. Я буду продолжать пытаться сузить, какой файл профиля вызывает проблему.
Файл prefs.js
профиля Waterfox - это исходный файл, который при копировании в каталог нового профиля портит запрос. Я собираюсь восстановить файл по частям так же, как я скопировал, протестировал и повторил, и, к счастью, это не двоичный файл.