Политика безопасности содержимого - небезопасная ошибка оценки. Разрешение определенного файла node_module: node_modules/aurelia-webpack-plugin/runtime/empty-entry.js

Я хочу применить CSP в качестве меры безопасности в своем веб-приложении. Со стороны сервера я установил политику «разрешить» себя для всех своих ресурсов. Однако есть один конкретный файл внешнего интерфейса node_module, который выдает ошибку, как показано ниже.

Набор заголовков CSP: script-src 'self' ' node_modules/aurelia-webpack-plugin/runtime/empty-entry.js '; script-src-elem 'я'; стиль-источник 'я'; img-src 'я'

Помогите пожалуйста, уже больше недели пытаюсь найти решение! Испробованные решения:

  1. Попробуйте внешний интерфейс, чтобы он игнорировал этот файл, так как это пустой файл. Но я не могу заставить его игнорировать.
  2. Попытка со стороны сервера обойти этот конкретный файл, изменив правила

ТИА.

Обновление: сообщение об ошибке UnCaught EvalError: отказался оценивать строку как Javascript, поскольку «unsafe-eval» не является разрешенным источником сценария в следующей директиве политики безопасности содержимого: «script-src 'self'»

в ./node_modules/aurelia-webpack-plugin/runtime/empty-entry.js

1 ответ

Кажется, файлу разрешено загружаться, поскольку он загружается из того же источника, и вы разрешили script-src 'self'.

Проблема, похоже, в том, что код в файле выполняет eval(), new Function(), setInterval() или setTimeout(), что требует разрешения 'unsafe-eval'. Это странно, учитывая, что файл должен быть пустым. Ошибка вашей консоли может предоставить вам прямую ссылку на вызывающий ошибку код.

Вы можете добавить «unsafe-eval» в script-src. Это сделало бы ваш CSP менее строгим, но, конечно, гораздо лучше установить "script-src 'self' 'unsafe-eval';" чем вообще не ограничивать скрипты CSP.

Другие вопросы по тегам