Skip to main content

Configurando o acesso a registros privados para Dependabot

Você pode configurar o Dependabot para acessar dependências armazenadas em registros privados. Você pode armazenar informações de autenticação, como senhas e tokens de acesso, como segredos criptografados e, em seguida, referenciá-las no arquivo de configuração do Dependabot. Você também pode adicionar o Dependabot à lista de IPs permitidos dos registros.

Sobre registros privados

Dependabot version updates mantém suas dependências atualizadas. Dependabot pode acessar registros públicos. Além disso, você pode conceder a Dependabot version updates acesso a registros de pacotes privados e repositórios privados de GitHub para que você possa manter suas dependências privadas e internas tão atualizadas quanto suas dependências públicas.

Na maioria dos ecossistemas, as dependências privadas geralmente são publicadas em registros de pacotes privados. Esses registros privados são semelhantes aos equivalentes públicos, mas exigem autenticação.

Exemplos de como configurar o Dependabot para acessar somente registros privados removendo as chamadas para registros públicos. Para obter mais informações, confira "Removendo o acesso do Dependabot a registros públicos".

Configurando registros privados

Você configura o acesso do Dependabot a registros privados no arquivo dependabot.yml. A chave de nível superior registries é opcional e especifica detalhes de autenticação. Você pode permitir que todos os registros definidos sejam usados definindo registries como "*".

# Allow Dependabot to use all the defined registries

version: 2
registries: "*"

Como alternativa, você pode listar os registros que a atualização pode usar. Para fazer isso, use o nome do registro, conforme definido na seção registries de nível superior do arquivo dependabot.yml.

Você utiliza as seguintes opções para especificar as configurações de acesso. As configurações do registro precisam conter um type e uma url e, normalmente, uma combinação de username e password ou um token.

Opção                Descrição
typeIdentifica o tipo de registro. Veja a lista completa de tipos abaixo.
urlA URL a ser usada para acessar as dependências deste registro. O protocolo é opcional. Se não for especificado, https:// é assumido. Dependabot adiciona ou ignora barras à direita, conforme necessário.
usernameO nome de usuário que Dependabot usa para acessar o registro.
username é o nome de usuário ou endereço de e-mail da conta.
passwordUma referência a um segredo de Dependabot que contém a senha para o usuário especificado. Para obter mais informações, confira "Configurando o acesso a registros privados para Dependabot".
password é a senha da conta especificada pelo nome de usuário. Se a conta for uma conta GitHub, você poderá usar um GitHub personal access token no lugar da senha.
keyUma referência a um segredo de Dependabot que contém uma chave de acesso para este registro. Para obter mais informações, confira "Configurando o acesso a registros privados para Dependabot".
tokenUma referência a um segredo de Dependabot que contém um token de acesso para este registro. Para obter mais informações, confira "Configurando o acesso a registros privados para Dependabot".
token é usado para fornecer um token de acesso para um sistema externo e não deve ser usado para fornecer um GitHub personal access token. Caso queira usar um GitHub personal access token, você deverá fornecê-lo como uma senha.
replaces-basePara registros , se o valor booliano for true, Dependabot resolverá dependências usando a URL especificada em vez de a URL base desse ecossistema específico. Por exemplo, para registros com type: python-index, se o valor booliano é true, o pip resolve as dependências usando a URL especificada em vez de a URL base do Índice de Pacote Python (por padrão, https://pypi.org/simple).

Para obter mais informações sobre as opções de configuração disponíveis, como usá-las e sobre os tipos compatíveis, confira "Opções de configuração para o arquivo dependabot.yml".

Armazenando credenciais para o Dependabot usar

Para conceder a Dependabot acesso aos registros privados compatíveis com GitHub, armazene o token de acesso ou o segredo do Registro no repositório de segredos para seu repositório ou organização.

Sobre os segredos criptografados do Dependabot

Os segredos de Dependabot são credenciais criptografadas que você cria no nível de organização ou no nível do repositório. Ao adicionar um segredo no nível da organização, é possível especificar quais repositórios podem acessar o segredo. Você pode usar segredos para permitir que Dependabot atualize as dependências localizadas nos registros dos pacotes privados. Quando você adiciona um segredo, ele é criptografado antes de alcançar GitHub e permanece criptografado até que seja usado por Dependabot para acessar um registro de pacote privado.

Os segredos do Dependabot também incluem segredos usados por fluxos de trabalho de GitHub Actions disparados por solicitações de pull do Dependabot. O próprio Dependabot pode não usar esses segredos, mas eles são exigidos pelos fluxos de trabalho. Para obter mais informações, confira "Automatizando o Dependabot com GitHub Actions".

Depois de adicionar um segredo do Dependabot, referencie-o no arquivo de configuração dependabot.yml assim: ${{secrets.NAME}}, em que "NAME" é o nome escolhido para o segredo. Por exemplo:

password: ${{secrets.MY_ARTIFACTORY_PASSWORD}}

Para obter mais informações, confira "Opções de configuração para o arquivo dependabot.yml".

Nomear os seus segredos

O nome de um segredo de Dependabot:

  • Só pode conter caracteres alfanuméricos ([A-Z], [0-9]) ou sublinhados (_). Espaços não são permitidos. Se você inserir letras minúsculas, elas serão alteradas para maiúsculas.
  • Não precisa começar com o prefixo GITHUB_.
  • Não precisa começar com um número.

Adicionar um repositório secreto para Dependabot

Para criar segredos para um repositório de conta pessoal, você deve ser o proprietário do repositório. Para criar segredos para um repositório da organização, você precisa ter acesso de admin.

  1. No GitHub.com, navegue até a página principal do repositório.

  2. Abaixo do nome do repositório, clique em Configurações. Caso não consiga ver a guia "Configurações", selecione o menu suspenso , clique em Configurações.

    Captura de tela de um cabeçalho de repositório que mostra as guias. A guia "Configurações" é realçada por um contorno laranja-escuro.

  3. Na seção "Segurança" da barra lateral, selecione Segredos e variáveis, then click Dependabot .

  4. Clique em Novo segredo de repositório.

  5. Digite um nome para o segredo na caixa de entrada Nome.

  6. Insira o valor para o seu segredo.

  7. Clique em Adicionar segredo.

    O nome do segredo está listado na página de segredos do Dependabot. Clique em Atualizar para alterar o valor secreto. Clique em Remover para excluir o segredo.

Adicionar um segredo de organização para Dependabot

Ao criar um segredo em uma organização, você pode usar uma política para limitar quais repositórios podem acessar esse segredo. Por exemplo, você pode conceder acesso a todos os repositórios ou limitar o acesso a apenas repositórios privados ou a uma lista específica de repositórios.

Para criar segredos no nível da organização, você precisa ter acesso de admin.

  1. No GitHub.com, navegue até a página principal da organização.

  2. No nome da sua organização, clique Configurações. Caso não consiga ver a guia "Configurações", selecione o menu suspenso , clique em Configurações.

    Captura de tela das guias no perfil de uma organização. A guia "Configurações" está contornada em laranja escuro.

  3. Na seção "Segurança" da barra lateral, selecione Segredos e variáveis, then click Dependabot .

  4. Clique em Novo segredo da organização.

  5. Digite um nome para o segredo na caixa de entrada Nome.

  6. Insira o Valor do segredo.

  7. Na lista suspensa Acesso do repositório, escolha uma política de acesso.

  8. Se você escolheu Repositórios selecionados:

    • Clique em .
    • Na caixa de diálogo, selecione os repositórios que podem acessar esse segredo.
    • Clique em Atualizar seleção.
  9. Clique em Adicionar segredo.

    O nome do segredo está listado na página de segredos do Dependabot. Clique em Atualizar para alterar o valor do segredo ou a respectiva política de acesso. Clique em Remover para excluir o segredo.

Como configurar regras de IP do firewall

Você pode adicionar Dependabot à lista de IPs permitidos dos registros.

Se o registro privado estiver configurado com uma lista de IP permitidos, encontre os endereços IP usados pelo Dependabot para acessar o registro no ponto de extremidade da meta API, sob a chave dependabot. Para obter mais informações, confira "Pontos de extremidade da API REST para metadados".