Para uma conta de proxy explícita, passe um objeto de credenciais para -ProxyCredential:

$proxyAccount = Get-Credential
Invoke-WebRequest -Uri https://example.com/ -Proxy http://proxy.example:8080 -ProxyCredential $proxyAccount

Substitua o ponto de extremidade pelo serviço aprovado. Get-Credential solicita uma conta em vez de incorporar uma senha na linha de comando. Essa conta vai para o intermediário; as credenciais de destino são um parâmetro separado e não podem responder a um 407 do proxy.

Se o esquema de autenticação do proxy e a identidade do processo suportarem autenticação integrada, escolha -ProxyUseDefaultCredentials. Não o combine com uma credencial de proxy explícita na mesma solicitação.

Consulte a referência da versão do PowerShell que executa o script. O Windows PowerShell e o PowerShell moderno diferem na implementação e na disponibilidade de parâmetros; as versões suportadas também oferecem -NoProxy para uma solicitação direta explícita.

Quando o mesmo script se comporta de forma diferente como tarefa

Inspecione as entradas relevantes de $PSDefaultParameterValues e a configuração de proxy suportada pelo processo. Um perfil pode adicionar no início da sessão padrões de proxy específicos do comando. Uma tarefa agendada pode ignorar esse perfil e ser executada com outra identidade, embora o arquivo do script não mude.

Compare a URL de destino, o ponto de extremidade escolhido, o método de proxy exigido, a versão do PowerShell e as credenciais explícitas versus as padrão, mantendo os segredos ocultos. Se a autenticação do proxy funcionar e o destino retornar 401, investigue o login desse destino em vez de mover a senha do proxy para o parâmetro de credenciais de origem.

Artigos relacionados