Desde PowerShell 3.0, PSDefaultParameterValues pode fornecer valores de proxy predeterminados para chamadas web repetidas:

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

Estas asignacións conservan os valores predeterminados non relacionados do dicionario. Un parámetro Proxy explícito ten prioridade sobre o valor predeterminado correspondente. Manteña as claves específicas do comando en vez de facer coincidir todos os parámetros de nome similar cun wildcard. Para unha sesión separada de sitio público onde se permiten intermediarios públicos, escolla un candidato da lista de proxy HTTP só cando non haxa valores predeterminados de ProxyCredential nin de ProxyUseDefaultCredentials nin credenciais de proxy explícitas definidas.

Se o proxy usa a identidade actual de Windows, engada os valores predeterminados correspondentes:

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

Pon as entradas escollidas no profile axeitado cando as futuras sesións interactivas deban recibilas. Para outra rede, substitúa os seus valores ou elimine as entradas propias desta configuración:

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

A eliminación restaura a selección normal de parámetros. O cmdlet pode seguir usando a súa configuración de sistema ou de contorno admitida; eliminar un valor predeterminado non solicita explicitamente unha conexión directa.

Artigos relacionados