Compartilhar via


Executar um agente auto-hospedado por trás de um proxy Web

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

Quando o agente auto-hospedado requer um proxy Web, você pode informar o agente sobre o proxy durante a configuração. Isso permite que seu agente se conecte ao Azure Pipelines ou ao TFS por meio do proxy. Isso, por sua vez, permite que o agente obtenha fontes e baixe artefatos. Por fim, ele passa os detalhes do proxy para tarefas que também precisam de configurações de proxy para acessar a Web.

Azure Pipelines, TFS 2018 RTM e mais recente

(Aplica-se ao agente versão 2.122 e versões mais recentes.)

Para permitir que o agente seja executado atrás de um proxy web, passe --proxyurl, --proxyusername e --proxypassword durante a configuração do agente.

Por exemplo:

./config.cmd --proxyurl http://127.0.0.1:8888 --proxyusername "myuser" --proxypassword "mypass"

Armazenamos sua credencial de proxy de forma responsável em cada plataforma para evitar vazamento acidental. No Linux, a credencial é criptografada com uma chave simétrica com base na ID do computador. No macOS, usamos o conjunto de chaves. No Windows, usamos o Repositório de Credenciais.

Observação

O agente versão 122.0, que foi fornecido com o TFS 2018 RTM, tem um problema conhecido ao ser configurado como um serviço no Windows. Como o Repositório de Credenciais do Windows é por usuário, você deve configurar o agente usando o mesmo usuário que o serviço executará. Por exemplo, para configurar a execução do serviço do agente como mydomain\buildadmin, você deve iniciar config.cmd como mydomain\buildadmin. Você pode fazer isso fazendo logon no computador com esse usuário ou usando Run as a different user no shell do Windows.

Como o agente lida com o proxy em uma tarefa de build ou liberação

O agente falará com o serviço do Azure DevOps/TFS por meio do proxy Web especificado no .proxy arquivo.

Como o código da tarefa Get Source em builds e a tarefa Download Artifact em versões também é inserido no agente, essas tarefas seguirão a configuração de proxy do arquivo .proxy.

O agente expõe a configuração de proxy por meio de variáveis de ambiente para cada execução de tarefa. Os autores de tarefas precisam usar métodos azure-pipelines-task-lib para recuperar a configuração de proxy e manipular o proxy dentro de sua tarefa.

Observe que muitas ferramentas não usam automaticamente as configurações de proxy configuradas pelo agente. Por exemplo, ferramentas como curl e dotnet podem exigir variáveis de ambiente proxy, como http_proxy também ser definidas no computador.

Especificar URLs de bypass de proxy

Crie um .proxybypass arquivo no diretório raiz do agente que especifica expressões regulares (na sintaxe ECMAScript) para corresponder às URLs que devem ignorar o proxy. Por exemplo:

github\.com
bitbucket\.com

Habilitar a autenticação básica para configuração de proxy

A configuração do agente pode não ser compatível com determinadas configurações de proxy corporativo que usam a autenticação NTLM padrão e você pode receber 407 authentication errors. Nesses casos, você pode habilitar a autenticação básica para o proxy adicionando o sinalizador --usebasicauthforproxy durante a configuração do agente, desde que o proxy dê suporte ao retrocesso para a autenticação básica.

Por exemplo:

./config.cmd --proxyurl http://proxy.company.com:port --proxyusername <userNamePlaceholder> --proxypassword <passwordPlaceholder> --usebasicauthforproxy