Skip to main content

Сведения об обновлениях для системы безопасности Dependabot

Dependabot может исправить уязвимые зависимости, создавая запросы на вытягивание с помощью обновлений системы безопасности.

Кто может использовать эту функцию?

Dependabot security updates доступен для следующих репозиториев:

  • Все репозитории на GitHub Enterprise Server

Note

Администратор сайта должен настроить Dependabot updates для ваш экземпляр GitHub Enterprise Server, прежде чем использовать эту функцию. Дополнительные сведения см. в разделе Включение Dependabot для предприятия.

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

Сведения о Dependabot security updates

Dependabot security updates упрощает исправление уязвимых зависимостей в репозитории. Обычно файл добавляется в репозиторий dependabot.yml , чтобы включить Dependabot security updates. Затем вы настроите параметры в этом файле, чтобы сообщить Dependabot о том, как поддерживать репозиторий.

Сведения о поддерживаемых репозиториях и экосистемах см. в разделе "Поддерживаемые экосистемы и репозитории Dependabot".

Если включить Dependabot security updates, при возникновении оповещения Dependabot для уязвимой зависимости в граф зависимостей репозитория автоматически пытается исправить Dependabot. Дополнительные сведения см. в разделе "[AUTOTITLE" и "Сведения об оповещениях Dependabot](/code-security/dependabot/dependabot-security-updates/configuring-dependabot-security-updates)".

Note

Между параметрами, указанными в dependabot.yml файле, и оповещениями системы безопасности Dependabot отсутствуют, кроме того, что оповещения будут закрыты при слиянии связанных запросов на вытягивание, созданных Dependabot для обновлений системы безопасности.

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

Note

Если для репозитория включены Dependabot security updates, Dependabot автоматически попытается открыть запросы на вытягивание для разрешения всех открытых оповещений Dependabot с доступным исправлением. Если вы предпочитаете настраивать оповещения Dependabot открывает запросы на вытягивание, следует оставить Dependabot security updates отключен и создать правило автообъезда. Дополнительные сведения см. в разделе «Настройка правил автоматической сортировки для определения приоритетов оповещений Dependabot».

GitHub может отправлять Dependabot alerts в репозитории, затронутые уязвимостью, раскрытой недавно опубликованной рекомендацией по безопасности GitHub. Дополнительные сведения см. в разделе Просмотр рекомендаций по безопасности в базе данных рекомендаций по GitHub.

Dependabot проверяет возможность обновления уязвимой зависимости до исправленной версии без нарушения графа зависимостей для репозитория. Затем Dependabot создает запрос на вытягивание, чтобы обновить зависимость до минимальной версии, которая включает исправление, и связывает запрос на вытягивание с оповещением Dependabot или сообщает об ошибке в оповещении. Дополнительные сведения см. в разделе Устранение ошибок Dependabot.

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

Note

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

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

Когда Dependabot вызывает запросы на вытягивание, такие запросы могут быть предназначены для обновлений безопасности или версий:

  • Dependabot security updates  — это автоматизированные запросы на вытягивание, позволяющие обновлять зависимости с известными уязвимостями.
  • Dependabot version updates  — это автоматизированные запросы на вытягивание, позволяющие поддерживать зависимости в актуальном состоянии, даже если у них нет уязвимостей. Чтобы проверить состояние обновлений версии, откройте вкладку "Аналитика" в репозитории, а затем "График зависимостей" и Dependabot.

Если включить Dependabot security updates, части конфигурации также могут повлиять на запросы на вытягивание, созданные для Dependabot version updates. Это связано с тем, что некоторые параметры конфигурации являются общими для обоих типов обновлений. Дополнительные сведения см. в разделе Параметры конфигурации для файла dependabot.yml.

Прежде чем включить Dependabot updates, необходимо настроить ваш экземпляр GitHub Enterprise Server для использования GitHub Actions с локальными средствами выполнения. GitHub Actions требуется для Dependabot version updates и Dependabot security updates для выполнения в GitHub Enterprise Server. Дополнительные сведения см. в разделе "Включение Dependabot для предприятия".

Dependabot security updates может исправить уязвимые зависимости в GitHub Actions. При включении обновлений системы безопасности Dependabot автоматически создает запрос на вытягивание для обновления уязвимых данных GitHub Actions, используемых в рабочих процессах до минимальной исправленной версии.

Сведения о запросах на вытягивание для обновлений системы безопасности

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

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

Note

Рекомендуется использовать автоматизированные тесты и процессы принятия, чтобы проверки выполнялись до объединения запроса на вытягивание. Это особенно важно, если предлагаемая версия для обновления содержит дополнительные функциональные возможности или изменение, которое нарушает код проекта. Дополнительные сведения о непрерывной интеграции см. в разделе "Сведения о непрерывной интеграции с GitHub Actions".

О автоматической деактивации Dependabot updates

Сведения об уведомлениях для обновлений системы безопасности Dependabot

Вы можете отфильтровать уведомления по GitHub для отображения обновлений системы безопасности Dependabot. Дополнительные сведения см. в разделе Управление уведомлениями из папки "Входящие".