Skip to main content

Configurando o Dependabot para trabalhar com acesso limitado à Internet

Você pode configurar Dependabot para gerar solicitações de pull para atualizações de versão e segurança usando registros privados quando sua instância do GitHub Enterprise Server tiver acesso limitado ou não à Internet.

Sobre atualizações do Dependabot

Você pode usar Dependabot updates para corrigir vulnerabilidades e manter as dependências atualizadas para a versão mais recente no sua instância do GitHub Enterprise Server. Dependabot updates exigem GitHub Actions com executores auto-hospedados configurados para uso de Dependabot. Os alertas do Dependabot e as atualizações de segurança usam informações do GitHub Advisory Database acessados usando GitHub Connect. Para obter mais informações, confira "Gerenciar executores auto-hospedados para atualizações de Dependabot na sua empresa" e "Habilitando o Dependabot para sua empresa."

O Dependabot pode acessar registros públicos por padrão e você pode configurar o Dependabot para também acessar registros privados. Como alternativa, se sua instância do GitHub Enterprise Server tiver acesso limitado ou sem acesso à Internet, você poderá configurar Dependabot para usar apenas registros privados como fonte para atualizações de segurança e versão. Para obter informações sobre quais ecossistemas têm suporte como registros privados, confira "Removendo o acesso do Dependabot a registros públicos."

As instruções a seguir pressupõem que você precisa configurar executores de Dependabot com as limitações a seguir.

  • Sem acesso à internet.
  • Acesso a recursos internos limitados, como registros privados para Dependabot.

Restringindo o acesso à Internet para executores de Dependabot

Antes de configurar o Dependabot, instale o Docker em seu executor auto-hospedado. Para obter mais informações, confira "Gerenciar executores auto-hospedados para atualizações de Dependabot na sua empresa".

  1. Em sua instância do GitHub Enterprise Server, navegue até o github/dependabot-action repositório e recupere informações sobre as imagens de contêiner dependabot-updater e dependabot-proxy do arquivo containers.json.

    Cada versão do GitHub Enterprise Server inclui um arquivo atualizado containers.json em: https://HOSTNAME/github/dependabot-action/blob/ghes-VERSION/docker/containers.json. Você pode conferir a versão de GitHub.com do arquivo em: containers.json.

  2. Pré-carregar todas as imagens de contêiner do GitHub Container registry no executor do Dependabot usando o comando docker pull. Como alternativa, pré-carregar a imagem dependabot-proxy e pré-carregar apenas as imagens de contêiner para os ecossistemas necessários.

    Por exemplo, para dar suporte a npm e GitHub Actions você pode usar os comandos a seguir, copiando detalhes das imagens a serem carregadas do arquivo containers.json para garantir que você tenha a versão correta e SHA para cada imagem.

    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
    

    Nota: Você precisará repetir esta etapa ao atualizar para uma nova versão secundária do GitHub Enterprise Server ou se atualizar manualmente a ação Dependabot do GitHub.com. Para obter mais informações, confira "Sincronizar ações do GitHub.com manualmente".

  3. Quando terminar de adicionar essas imagens ao executor, você estará pronto para restringir o acesso à Internet ao executor do Dependabot, garantindo que ele ainda possa acessar seus registros privados para os ecossistemas necessários e para sua instância do GitHub Enterprise Server.

    Você deve adicionar as imagens primeiro porque os executores do Dependabot efetuam pull dependabot-updater e dependabot-proxy do GitHub Container registry quando os trabalhos do Dependabot começam a ser executados.

Verificando a configuração de executores de Dependabot

  1. Para um repositório de teste, configure Dependabot para acessar registros privados e remover o acesso a registros públicos. Para obter mais informações, confira "Configurando o acesso a registros privados para Dependabot" e "Removendo o acesso do Dependabot a registros públicos."
  2. Na guia Insights do repositório, clique em Grafo de dependência para exibir detalhes das dependências.
  3. Clique em Dependabot para exibir os ecossistemas configurados para atualizações de versão.
  4. Para ecossistemas que você deseja testar, clique em Hora da Última verificação TIME atrás para mostrar "Atualizar logs".
  5. Clique em Verificar se há atualizações para marcar novas atualizações para dependências desse ecossistema.

Quando o marcar de atualizações for concluído, você deverá marcar exibição "Atualizar logs" para verificar se o Dependabot acessou os registros privados configurados no sua instância do GitHub Enterprise Server para marcar para atualizações de versão.

Depois de verificar se a configuração está correta, peça aos administradores do repositório que atualizem suas configurações de Dependabot para usar apenas registros privados. Para obter mais informações, confira "Removendo o acesso do Dependabot a registros públicos".