Skip to main content

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

Dependabot может исправить уязвимые зависимости, создавая pull requests с обновлениями безопасности.

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

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

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

Примечание.

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

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

Около Dependabot security updates

Dependabot security updates Это упростит вам исправление уязвимых зависимостей в вашем репозитории.

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

Вы можете добавить dependabot.yml конфигурационный файл в репозиторий для настройки Dependabot поведения, включая графики обновлений, настройки pull request и зависимости, которые следует отслеживать. Дополнительные сведения см. в разделе О файле dependabot.yml. Затем вы настраиваете параметры в этом файле, чтобы показать Dependabot , как защитить зависимости, на которые опирается ваш репозиторий.

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

Примечание.

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

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

Примечание.

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

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

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

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

Примечание.

Для NPM Dependabot это вызовет pull request на обновление явно определённой зависимости до защищённой версии, даже если это означает обновление родительской зависимости или зависимости, или даже удаление подзависимости, которая больше не нужна родительской системе. Для других экосистем Dependabot нельзя обновлять косвенную или транзитивную зависимость, если это также требует обновления родительской зависимости. Дополнительные сведения см. в разделе Ошибки dependabot.

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

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

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

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

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

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

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

Чтобы уменьшить количество отображаемых запросов на вытягивание, можно включить сгруппированные обновления безопасности для группированных наборов зависимостей (на экосистему пакетов). Dependabot затем создаёт один pull request, чтобы одновременно обновить как можно больше уязвимых зависимостей в группе до защищённых версий.

Для обновлений Dependabot безопасности будут группировать зависимости из разных каталогов в каждой экосистеме при определённых условиях и конфигурациях. Dependabot не будет группировать зависимости из разных экосистем пакетов и не объединяет обновления безопасности с обновлениями версий.****

Вы можете включить сгруппированные pull-запросы Dependabot security updates одним или обоими из следующих способов.

  • Чтобы сгруппировать как можно больше доступных обновлений безопасности, между каталогами и в каждой экосистеме, включите группировку в настройках «Advanced Security» для вашего репозитория или в разделе «Глобальные настройки Advanced Security » для вашей организации.
  • Для более детального управления группировкой, например группирования по имени пакета, зависимостей разработки и рабочей среды, уровня SemVer или нескольких каталогов для каждой экосистемы, добавьте параметры dependabot.yml конфигурации в файл конфигурации в репозитории.

Примечание.

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

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

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

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

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

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