Skip to main content

Настройка Dependabot для работы с ограниченным доступом к Интернету

Можно настроить Dependabot для создания запросов на вытягивание обновлений версий и системы безопасности с помощью частных реестров, если GitHub Enterprise Server ограничен или нет, доступ к Интернету.

Сведения о обновлениях Dependabot

Можно использовать Dependabot updates для устранения уязвимостей и обновления зависимостей до последней версии в GitHub Enterprise Server. Для использования Dependabot updates требуется GitHub Actions с локальными средствами выполнения, настроенными для использования Dependabot. Dependabot оповещений и обновлений системы безопасности используют сведения из доступа к данным GitHub Advisory Database с помощью GitHub Connect. Дополнительные сведения см. в разделе "[AUTOTITLE" и "Управление локальными средствами выполнения для обновлений Dependabot в вашем предприятии](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise)".

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

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

  • Нет доступа к Интернету.
  • Доступ к ограниченным внутренним ресурсам, таким как частные реестры для Dependabot.

Ограничение доступа к Интернету для пользователей Dependabot

Перед настройкой Dependabotустановите Docker на локальном средстве выполнения. Дополнительные сведения см. в разделе Управление локальными средствами выполнения для обновлений Dependabot в вашем предприятии.

  1. В GitHub Enterprise Serverперейдите в github/dependabot-action репозиторий и получите сведения о dependabot-updater образах контейнеров из dependabot-proxy containers.json файла.

    Каждый выпуск GitHub Enterprise Server включает обновленный containers.json файл: https://HOSTNAME/github/dependabot-action/blob/ghes-VERSION/docker/containers.json Вы увидите версию файла GitHub.com по адресу: containers.json.

  2. Предварительно загрузите все образы контейнеров из программы GitHub Container registry в средство запуска Dependabot с помощью docker pull команды. Кроме того, предварительно загрузите образ, а затем предзагрузите dependabot-proxy только образы контейнеров для необходимых экосистем.

    Например, для поддержки npm и GitHub Actions можно использовать следующие команды, копируя сведения о изображениях для загрузки из containers.json файла, чтобы обеспечить правильную версию и SHA для каждого образа.

    docker pull ghcr.io/github/dependabot-update-job-proxy/dependabot-update-job-proxy:VERSION@SHA
    docker pull ghcr.io/dependabot/dependabot-updater-github-actions:VERSION@SHA
    docker pull ghcr.io/dependabot/dependabot-updater-npm:VERSION@SHA
    

    Note

    При обновлении до новой дополнительной версии GitHub Enterprise Serverили при обновлении действия Dependabotвручную необходимо обновить действие Dependabot с GitHub.com. Дополнительные сведения см. в разделе Синхронизация действий вручную из GitHub.com.

  3. После завершения добавления этих образов в средство выполнения можно ограничить доступ к Интернету с помощью средства запуска Dependabot и обеспечить доступ к частным реестрам для необходимых экосистем и для GitHub Enterprise Server.

    Сначала необходимо добавить изображения, так как Dependabot извлекает и извлекает dependabot-updater dependabot-proxy GitHub Container registry при запуске заданий Dependabot .

Проверка конфигурации командлетов Dependabot

  1. Для тестового репозитория настройте Dependabot для доступа к частным реестрам и удаления доступа к общедоступным реестрам. Дополнительные сведения см. в разделе "[AUTOTITLE" и "Настройка доступа к частным реестрам для Dependabot](/code-security/dependabot/working-with-dependabot/removing-dependabot-access-to-public-registries)".
  2. На вкладке "Аналитика" репозитория щелкните граф зависимостей, чтобы отобразить сведения о зависимостях.
  3. Щелкните Dependabot для отображения экосистем, настроенных для обновлений версий.
  4. Для экосистем, которые требуется протестировать, нажмите кнопку "Последнее проверенное время назад ", чтобы отобразить представление "Обновить журналы".
  5. Нажмите кнопку " Проверить наличие обновлений ", чтобы проверить наличие новых обновлений для этой экосистемы.

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

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