Skip to main content
Мы публикуем частые обновления нашей документации, и перевод этой страницы, возможно, еще выполняется. Актуальные сведения см. в документации на английском языке.

Сведения о проверке зависимостей

Проверка зависимостей позволяет перехватывать небезопасные зависимости до того, как они попадут в среду выполнения, и получать сведения о лицензиях, зависимых элементах и сроке существования зависимостей.

Проверка зависимостей включена в состав GitHub Enterprise Cloud для общедоступных репозиториев. Чтобы использовать проверку зависимостей в частных репозиториях, принадлежащих организациям, необходимо иметь лицензию на GitHub Advanced Security. Дополнительные сведения см. в разделе Сведения о GitHub Advanced Security.

Сведения о проверке зависимостей

Проверка зависимостей помогает разобраться в изменениях зависимостей и понять их влияние на безопасность в каждом запросе на вытягивание. Он обеспечивает понятную визуализацию изменений зависимостей с расширенным диффеном на вкладке "Измененные файлы" запроса на вытягивание. Функция проверки зависимостей позволяет получить следующую информацию:

  • Добавленные, удаленные и обновленные зависимости, а также даты их выпуска.
  • Количество проектов, в которых используются эти компоненты.
  • Данные об уязвимостях для этих зависимостей.

Если запрос на вытягивание предназначен для ветви репозитория по умолчанию и содержит изменения манифестов пакета или файлов блокировки, вы можете отобразить проверку зависимостей, чтобы увидеть, что изменилось. Проверка зависимостей содержит сведения об изменениях косвенных зависимостей в файлах блокировки и сообщает, имеются ли известные уязвимости в каких-либо добавленных или обновленных зависимостях.

Иногда может потребоваться просто обновить версию одной зависимости в манифесте и создать запрос на вытягивание. Однако если обновленная версия этой прямой зависимости также имеет обновленные зависимости, запрос на вытягивание может иметь больше изменений, чем ожидалось. Проверка зависимостей для каждого файла манифеста и блокировки позволяет легко узнать, что изменилось, и содержат ли какие-либо из новых версий зависимостей известные уязвимости.

Просмотрев проверки зависимостей в запросе на вытягивание и изменив все зависимости, помеченные как уязвимые, можно избежать добавления уязвимостей в проект. Дополнительные сведения о том, как работает проверка зависимостей, см. в разделе Проверка изменений зависимостей в запросе на вытягивание.

Дополнительные сведения о настройке проверки зависимостей см. в разделе Настройка проверки зависимостей.

Dependabot alerts обнаружит уязвимости, которые уже имеются в ваших зависимостях, но гораздо лучше избежать потенциальных проблем, чем позднее тратить время на их устранение. Дополнительные сведения о Dependabot alerts см. в разделе Сведения об оповещениях Dependabot.

Проверка зависимостей поддерживает те же языки и экосистемы управления пакетами, что и граф зависимостей. Дополнительные сведения см. в разделе Сведения о графе зависимостей.

Дополнительные сведения о функциях цепочки поставок, доступных в GitHub Enterprise Cloud, см. в разделе Сведения о безопасности цепочки поставок.

Включение проверки зависимостей

Функция проверки зависимостей становится доступной при включении графа зависимостей. Дополнительные сведения см. в разделе Включение графа зависимостей.

Принудительное применение проверки зависимостей

Это действие доступно для всех общедоступных репозиториев, а также для частных репозиториев, для которых включено GitHub Advanced Security.

Вы можете использовать Действие проверки зависимостей в репозитории для принудительного применения проверок зависимостей в запросах на вытягивание. Это действие проверяет наличие уязвимых версий зависимостей, представленных изменениями версии пакета в запросах на вытягивание, и предупреждает о связанных с ними уязвимостях системы безопасности. Это позволяет лучше отслеживать изменения в запросе на вытягивание и предотвращать добавление уязвимостей в репозиторий. Дополнительные сведения см. на веб-сайте dependency-review-action.

Снимок экрана: запуск рабочего процесса, использующего действие проверки зависимостей.

По умолчанию проверка Действие проверки зависимостей завершится ошибкой при обнаружении уязвимых пакетов. Ошибка проверки блокирует объединение запроса на вытягивание, если владелец репозитория потребовал обязательную проверку зависимостей. Дополнительные сведения см. в разделе Сведения о защищенных ветвях.

Действие использует REST API проверки зависимостей для получения различий между базовой фиксацией и головной фиксацией. API проверки зависимостей можно использовать для получения различий изменений зависимостей, включая данные об уязвимостях, между любыми двумя фиксациями в репозитории. Дополнительные сведения см. в разделе Граф зависимостей.

Вы можете настроить Действие проверки зависимостей в соответствии со своими потребностями. Например, можно указать уровень серьезности, при котором действие будет завершаться сбоем, или задать список разрешенных или запрещенных лицензий. Дополнительные сведения см. в разделе Настройка проверки зависимостей.