Für ein explizites Proxy-Konto übergeben Sie ein Anmeldeinformationsobjekt an -ProxyCredential:

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

Ersetzen Sie den Endpunkt durch den freigegebenen Dienst. Get-Credential fragt nach einem Konto, statt ein Kennwort in die Befehlszeile einzubetten. Dieses Konto geht an den Vermittler; Ziel-Anmeldeinformationen sind ein separater Parameter und können eine 407 des Proxys nicht beantworten.

Wenn das Authentifizierungsschema des Proxys und die Prozessidentität integrierte Authentifizierung unterstützen, wählen Sie stattdessen -ProxyUseDefaultCredentials. Kombinieren Sie es nicht mit expliziten Proxy-Anmeldeinformationen in derselben Anforderung.

Prüfen Sie die Referenz für die PowerShell-Version, die das Skript ausführt. Windows PowerShell und modernes PowerShell unterscheiden sich in Implementierung und Parameterverfügbarkeit; unterstützte Versionen bieten außerdem -NoProxy für eine explizite direkte Anforderung.

Wenn dasselbe Skript sich als Aufgabe anders verhält

Prüfen Sie relevante $PSDefaultParameterValues-Einträge und die vom Prozess unterstützte Proxy-Konfiguration. Ein Profil kann beim Sitzungsstart befehlsspezifische Proxy-Standardwerte hinzufügen. Eine geplante Aufgabe kann dieses Profil auslassen und unter anderer Identität laufen, obwohl die Skriptdatei unverändert bleibt.

Vergleichen Sie Ziel-URL, gewählten Endpunkt, erforderliche Proxy-Methode, PowerShell-Version sowie explizite gegenüber Standard-Anmeldeinformationen und halten Sie Geheimnisse unkenntlich. Wenn die Proxy-Authentifizierung gelingt und das Ziel 401 zurückgibt, untersuchen Sie diese Ziel-Anmeldung, statt das Proxy-Kennwort in den Parameter für Ursprungs-Anmeldeinformationen zu verschieben.

Ähnliche Artikel