Proxy vjerodajnice na drugom PowerShell skoku
Predajte namijenjeni proxy račun za Invoke-WebRequest na udaljenom poslužitelju umjesto da pretpostavljate da je remoting prijava delegirana.
Web zahtjev koji interaktivno radi na poslužitelju B može dobiti 407 kada se ista naredba tamo izvrši putem PowerShell remotinga. Prijava s A na B ne delegira automatski taj identitet za sljedeću autentifikacijsku razmjenu na B.
A → remoting session on B → HTTP proxy → website
Jedan podržani pristup je da se proxy račun izričito preda za odlazni zahtjev. Uz postojeći PSSession i ispravno pribavljen objekt PSCredential:
Invoke-Command -Session $session -ArgumentList $proxyCredential -ScriptBlock {
param([pscredential]$outboundProxyCredential)
$requestOptions = @{
Uri = 'https://api.example/'
Proxy = 'http://proxy.example:8080'
ProxyCredential = $outboundProxyCredential
}
Invoke-WebRequest @requestOptions
}
Objekt vjerodajnica namijenjen je predviđenom računu proxyja. Sesija i dalje koristi uobičajenu remoting autentifikaciju, a svaka prijava na web-mjesto ostaje dio zahtjeva prema tom mjestu.
Time se izbjegava oslanjanje na automatsko delegiranje prve prijave. Zahtijeva pak da udaljeni host obrađuje predani materijal računa kao dio predviđenog administrativnog dizajna. Druge arhitekture, poput upravljane RunAs završne točke ili ograničenog pristupa servisu, imaju vlastite zahtjeve za konfiguraciju.
Ako su zadane proxy vjerodajnice bile pogrešna pretpostavka, zabilježite račun pod kojim se izvršava udaljena naredba i autentifikaciju koju proxy traži. Dulje vremensko ograničenje web zahtjeva ne može osigurati vjerodajnice koje nedostaju.
Proxy opcije na New-PSSessionOption odnose se na samu remoting vezu. Konfigurirajte Invoke-WebRequest unutar udaljenog script bloka kada je B-ova odlazna web veza ta koja treba proxy.