Ab PowerShell 3.0 kann PSDefaultParameterValues Proxy-Standardwerte für wiederholte Webaufrufe bereitstellen:

$PSDefaultParameterValues['Invoke-WebRequest:Proxy'] = 'http://proxy.example:8080'
$PSDefaultParameterValues['Invoke-RestMethod:Proxy'] = 'http://proxy.example:8080'

Diese Zuweisungen erhalten unabhängige Standardwerte im Wörterbuch. Ein expliziter Proxy-Parameter überschreibt den entsprechenden Standardwert. Halten Sie die Schlüssel befehlsspezifisch, statt jeden gleichnamigen Parameter per Wildcard zu treffen. Wählen Sie für eine getrennte Sitzung einer öffentlichen Website, in der öffentliche Vermittler zulässig sind, nur dann einen Kandidaten aus der HTTP-Proxy-Liste, wenn keine Standardwerte für ProxyCredential oder ProxyUseDefaultCredentials und keine expliziten Proxy-Anmeldeinformationen gesetzt sind.

Wenn der Proxy die aktuelle Windows-Identität verwendet, fügen Sie die entsprechenden Standardwerte hinzu:

$PSDefaultParameterValues['Invoke-WebRequest:ProxyUseDefaultCredentials'] = $true
$PSDefaultParameterValues['Invoke-RestMethod:ProxyUseDefaultCredentials'] = $true

Legen Sie die gewählten Einträge im passenden Profil ab, wenn künftige interaktive Sitzungen sie erhalten sollen. Ersetzen Sie für ein anderes Netzwerk deren Werte oder entfernen Sie die Einträge, die zu dieser Einrichtung gehören:

$PSDefaultParameterValues.Remove('Invoke-WebRequest:Proxy')
$PSDefaultParameterValues.Remove('Invoke-RestMethod:Proxy')
$PSDefaultParameterValues.Remove('Invoke-WebRequest:ProxyUseDefaultCredentials')
$PSDefaultParameterValues.Remove('Invoke-RestMethod:ProxyUseDefaultCredentials')

Das Entfernen stellt die gewöhnliche Parameterauswahl wieder her. Das Cmdlet kann weiterhin seine unterstützte System- oder Umgebungskonfiguration verwenden; das Entfernen eines Standardwerts fordert nicht ausdrücklich eine direkte Verbindung an.

Ähnliche Artikel