För ett explicit proxykonto skickar du ett autentiseringsobjekt till -ProxyCredential:

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

Byt ut slutpunkten mot den godkända tjänsten. Get-Credential frågar efter ett konto i stället för att bädda in ett lösenord på kommandoraden. Kontot går till mellanhanden; målets autentiseringsuppgifter är en separat parameter och kan inte svara på en 407 från proxyn.

Om proxyns autentiseringsschema och processens identitet stöder integrerad autentisering väljer du -ProxyUseDefaultCredentials i stället. Kombinera det inte med explicita proxyuppgifter i samma begäran.

Kontrollera referensen för den PowerShell-version som kör skriptet. Windows PowerShell och moderna PowerShell skiljer sig i implementering och parametertillgänglighet; versioner som stöds erbjuder också -NoProxy för en explicit direkt begäran.

När samma skript beter sig annorlunda som en uppgift

Granska relevanta $PSDefaultParameterValues-poster och den proxykonfiguration som processen stöder. En profil kan vid sessionsstart lägga till kommandospecifika proxystandardvärden. En schemalagd uppgift kan hoppa över den profilen och köra som en annan identitet, trots att skriptfilen är oförändrad.

Jämför mål-URL, vald slutpunkt, nödvändig proxy-metod, PowerShell-version och explicita kontra standarduppgifter, med hemligheter maskerade. Om proxyautentiseringen lyckas och målet returnerar 401, undersök inloggningen till det målet i stället för att flytta proxylösenordet till parametern för ursprungsuppgifter.

Relaterade artiklar