Invoke-WebRequest: oppgje proxy-legitimasjon i PowerShell
Invoke-WebRequest har eigne parameterar for proxy-legitimasjon. Legitimasjon for målet og vellukka innlogging i nettlesaren erstattar dei ikkje.
For ein eksplisitt proxy-konto, send eit legitimasjonsobjekt til -ProxyCredential:
$proxyAccount = Get-Credential
Invoke-WebRequest -Uri https://example.com/ -Proxy http://proxy.example:8080 -ProxyCredential $proxyAccountErstatt endepunktet med den godkjende tenesta. Get-Credential spør om ein konto i staden for å byggje inn eit passord på kommandolinja. Denne kontoen går til mellomleddet; mållegitimasjon er ein eigen parameter og kan ikkje svare på ein 407 frå proxyen.
Viss autentiseringsskjemaet til proxyen og identiteten til prosessen støttar integrert autentisering, vel -ProxyUseDefaultCredentials i staden. Ikkje kombiner det med eksplisitt proxy-legitimasjon i same førespurnad.
Sjekk referansen for PowerShell-versjonen som køyrer skriptet. Windows PowerShell og moderne PowerShell skil seg i implementasjon og parametertilgang; støtta versjonar tilbyr også -NoProxy for ein eksplisitt direkte førespurnad.
Når det same skriptet oppfører seg annleis som ei oppgåve
Undersøk relevante $PSDefaultParameterValues-oppføringar og proxykonfigurasjonen prosessen støttar. Ein profil kan ved øktstart leggje til kommandospesifikke proxy-standardverdiar. Ei planlagd oppgåve kan hoppe over denne profilen og køyre som ein annan identitet, sjølv om skriptfila er uendra.
Samanlikn mål-URL, valt endepunkt, påkravd proxy-metode, PowerShell-versjon og eksplisitt kontra standardlegitimasjon, medan løyndomar blir haldne sladda. Viss proxyautentiseringa lukkast og målet returnerer 401, undersøk innlogginga til målet i staden for å flytte proxy-passordet til parameteren for opphavslegitimasjon.