INTEGRITY Документация

Замена небезопасных JS-библиотек

Эта функция, будучи включённой, автоматически переписывает URL внешних JavaScript-библиотек так, чтобы они указывали на библиотеки, размещённые у Cloudflare. Это повышает безопасность и производительность и снижает риск внедрения вредоносного кода.

Эта операция перезаписи в настоящее время поддерживает polyfill — JavaScript-библиотека, размещённая в polyfill.io.

Как это работает

Когда функция включена, Cloudflare будет проверять проксируемый HTTP(S)-трафик на script теги с src , указывающим на потенциально небезопасный сервис, и замените src (значение) эквивалентной ссылкой, размещённой на cdnjs.

Переписанный URL сохранит исходную схему URL (http:// или https://).

Для polyfill.io перезаписи URL, все 3.* версии polyfill поддерживаются в рамках /v3 . Кроме того, /v2 также поддерживается. Если неизвестная версия запрашивается по пути /v3 , Cloudflare перепишет URL, чтобы использовать последнюю версию 3.* версия библиотеки (в настоящее время 3.111.0).

Доступность

Функция доступна на всех тарифных планах Cloudflare и включена по умолчанию на планах Free.


Configure

  1. В панели управления Cloudflare перейдите в раздел Security Settings .

    Перейдите в Settings ↗
  2. Включите или отключите Замена небезопасных JavaScript-библиотек (включить или отключить).

Выполните PATCH запрос, аналогичный следующему:

Необходимые разрешения API-токена

Хотя бы одно из следующих разрешения токена обязательно:
  • Zone Settings Write
Изменение настройки зоны
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/settings/replace_insecure_js" \
	--request PATCH \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"value": "on"
	}'

Заключительные замечания

Поскольку pages.dev зон находятся на плане Free, Замена небезопасных JavaScript-библиотек включена по умолчанию в этих зонах, и отключить её невозможно.