Invoke-WebRequest: надання облікових даних проксі в PowerShell
Invoke-WebRequest має окремі параметри для облікових даних проксі. Облікові дані призначення та успішний вхід у браузері їх не замінюють.
Для явного облікового запису проксі передайте об'єкт облікових даних у -ProxyCredential:
$proxyAccount = Get-Credential
Invoke-WebRequest -Uri https://example.com/ -Proxy http://proxy.example:8080 -ProxyCredential $proxyAccountЗамініть кінцеву точку схваленим сервісом. Get-Credential запитує обліковий запис, а не вбудовує пароль у командний рядок. Цей запис передається посереднику; облікові дані призначення — окремий параметр, і вони не можуть відповісти на 407 від проксі.
Якщо схема автентифікації проксі та ідентичність процесу підтримують вбудовану автентифікацію, виберіть -ProxyUseDefaultCredentials. Не комбінуйте його з явними обліковими даними проксі в тому самому запиті.
Перевірте довідку для версії PowerShell, яка виконує сценарій. Windows PowerShell і сучасний PowerShell різняться реалізацією та доступністю параметрів; підтримувані версії також надають -NoProxy для явного прямого запиту.
Коли той самий сценарій поводиться інакше як завдання
Перегляньте відповідні записи $PSDefaultParameterValues і конфігурацію проксі, яку підтримує процес. Профіль може під час запуску сеансу додати стандартні налаштування проксі для конкретної команди. Заплановане завдання може пропустити цей профіль і працювати під іншою ідентичністю, навіть якщо файл сценарію не змінено.
Порівняйте URL призначення, вибрану кінцеву точку, потрібний метод проксі, версію PowerShell і явні та стандартні облікові дані, приховуючи секрети. Якщо автентифікація проксі успішна, а призначення повертає 401, дослідіть вхід на це призначення, а не переносьте пароль проксі в параметр облікових даних джерела.