Починаючи з PowerShell 3.0, PSDefaultParameterValues може задавати проксі-значення за замовчуванням для повторюваних веб-викликів:

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

Ці призначення зберігають сторонні значення за замовчуванням у словнику. Явний параметр Proxy перекриває відповідне значення за замовчуванням. Тримайте ключі прив'язаними до конкретної команди, а не зіставляйте всі однойменні параметри за допомогою wildcard. Для окремого сеансу публічного сайту, де дозволено публічних посередників, вибирайте кандидата зі списку HTTP-проксі лише якщо не задано значення за замовчуванням ProxyCredential чи ProxyUseDefaultCredentials і немає явних облікових даних проксі.

Якщо проксі використовує поточне удостовірення Windows, додайте відповідні значення за замовчуванням:

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

Розмістіть вибрані записи у відповідному profile, якщо майбутні інтерактивні сеанси мають їх отримувати. Для іншої мережі замініть їхні значення або видаліть записи, що належать цьому налаштуванню:

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

Видалення відновлює звичайний вибір параметрів. cmdlet усе ще може використовувати підтримувану ним конфігурацію системи або середовища; видалення значення за замовчуванням явно не вимагає прямого підключення.

Схожі статті