Примечание.
Эта функция сейчас действует Публичный предварительный просмотр и может измениться.
Пакет по-прежнему устанавливается после изменения политики
Диспетчеры пакетов и прокси-серверы реестра могут повторно использовать ранее скачанные пакеты из локальных кэшей. Если новый запрос не достигнут GitHub package firewall, брандмауэр не может оценить пакет в соответствии с обновленной политикой. Это может позволить установить пакет после изменения политики или удалить исключение.
Проверка локального кэша npm
Проверьте: Устанавливается ли пакет с пустым кэшем npm в отдельной тестовой среде через ту же конечную точку брандмауэра?
-
Обратите внимание на точное имя пакета, версию и область, если применимо. Проверьте, разрешает ли эта версия политика предприятия или исключение.
-
В временном проекте за пределами исходного проекта настройте npm для использования конечной точки и проверки подлинности предприятия GitHub package firewall , включая параметры реестра по умолчанию и области. Сохраните исходный проект и файл блокировки без изменений и не очищайте общий кэш npm. См . раздел AUTOTITLE.
-
Установите точную версию с помощью нового пустого каталога кэша. Замените
PACKAGE-NAME,EXACT-VERSIONа такжеEMPTY-CACHE-DIRECTORYна имя пакета, версию и путь к каталогу кэша. Параметр--ignore-scriptsпредотвращает выполнение скриптов жизненного цикла пакета.npm install PACKAGE-NAME@EXACT-VERSION \ --cache EMPTY-CACHE-DIRECTORY --ignore-scripts -
Сравните результат с исходным проектом:
- Если брандмауэр блокирует тест, проверьте установленные пакеты исходного проекта, кэш, конфигурацию реестра и блокировку для различий. Один блокированный тест не определяет, какое различие допускает исходную установку.
- Если тест выполнен успешно, убедитесь, что запросы для этой версии достигли конечной точки брандмауэра предприятия, а затем повторно проверьте политику и исключения. Не предполагайте, что npm использует кэшированное содержимое.
Кэширование artifactory
Примечание.
Это руководство применяется только к экспериментальной интеграции Artifactory для пакетов npm. Даже при использовании пустого локального кэша npm artifactory может обслуживать кэшированное содержимое без отправки нового запроса через брандмауэр.
Если npm извлекает пакет из Artifactory, проверьте, обслуживалось ли artifactory кэшированное содержимое. Кроме того, убедитесь, что виртуальный репозиторий npm использует удаленный брандмауэр и не включает удаленный, который извлекает пакет непосредственно из общедоступного реестра npm. См . раздел AUTOTITLE.