B sunucusunda etkileşimli olarak çalışan bir web isteği, aynı komut orada PowerShell remoting üzerinden çalıştırıldığında 407 alabilir. A'dan B'ye oturum açmak, bu kimliği B'nin sonraki kimlik doğrulama alışverişi için otomatik olarak devretmez.

A → remoting session on B → HTTP proxy → website

Desteklenen tasarımlardan biri, giden istek için proxy hesabını açıkça sağlamaktır . Mevcut bir PSSession ve uygun şekilde alınmış bir PSCredential nesnesiyle:

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
}

Kimlik bilgisi nesnesi proxy'nin amaçlanan hesabı içindir. Oturum yine normal remoting kimlik doğrulamasını kullanır ve herhangi bir web sitesi oturum açması o site isteğinin parçası olarak kalır.

Bu, ilk oturum açmanın otomatik devredilmesine güvenmeyi önler. Ancak uzak ana bilgisayarın sağlanan hesap malzemesini amaçlanan yönetim tasarımının parçası olarak işlemesini gerektirir. Yönetilen bir RunAs uç noktası veya kısıtlı hizmet erişimi gibi diğer mimarilerin kendi yapılandırma gereksinimleri vardır.

Varsayılan proxy kimlik bilgileri yanlış varsayım idiyse, uzak komutun hangi hesap altında çalıştığını ve proxy'nin istediği kimlik doğrulamayı kaydedin. Daha uzun bir web isteği zaman aşımı eksik kimlik bilgilerini sağlayamaz.

New-PSSessionOption üzerindeki proxy seçenekleri remoting bağlantısının kendisiyle ilgilidir. B'nin dışa dönük web bağlantısı proxy'ye ihtiyaç duyduğunda Invoke-WebRequest'i uzak betik bloğunun içinde yapılandırın.

İlgili makaleler