Egy B kiszolgálón interaktívan működő webkérés 407-et kaphat, amikor ugyanaz a parancs ott PowerShell remotingon keresztül fut. Az A-ból B-be történő bejelentkezés nem delegálja automatikusan ezt az identitást B következő hitelesítési cseréjéhez.

A → remoting session on B → HTTP proxy → website

Egy támogatott megoldás, hogy a proxyfiókot kifejezetten megadjuk a kimenő kéréshez. Meglévő PSSessionnel és megfelelően beszerzett PSCredential objektummal:

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
}

A hitelesítő objektum a proxy szándékolt fiókjához tartozik. A munkamenet továbbra is a szokásos remoting-hitelesítését használja, és bármely webhely-bejelentkezés az adott webhely kérésének része marad.

Ez elkerüli az első bejelentkezés automatikus delegálására való támaszkodást. Ehhez viszont a távoli gazdagépnek a szándékolt adminisztrációs kialakítás részeként kell kezelnie az átadott fiókanyagot. Más architektúráknak, például egy felügyelt RunAs végpontnak vagy korlátozott szolgáltatáshozzáférésnek, saját konfigurációs követelményei vannak.

Ha az alapértelmezett proxy hitelesítő adatok voltak a hibás feltételezés, jegyezze fel a fiókot, amely alatt a távoli parancs fut, és a hitelesítést, amelyet a proxy kér. A hosszabb webkérési időkorlát nem tud hiányzó hitelesítő adatokat biztosítani.

A New-PSSessionOption proxybeállításai magára a remoting-kapcsolatra vonatkoznak. Konfigurálja az Invoke-WebRequestet a távoli parancsblokkon belül, amikor B kifelé irányuló webkapcsolata az, amelyiknek proxyra van szüksége.

Kapcsolódó cikkek