Invoke-webrequest работает только один раз в экземпляре PowerShell 5.1 против экземпляра HTTP-сервера PodeC#

Место общения программистов C#
Anonymous
Invoke-webrequest работает только один раз в экземпляре PowerShell 5.1 против экземпляра HTTP-сервера Pode

Сообщение Anonymous »

Я использую Invoke-webrequest с помощью клиентского сертификата против экземпляра HTTPS Server Pode (см. В этой проблеме GitHub для ее реализации, работающего на Windows Server 2019) в Windows PowerShell 5.1.19041.1645 (.NET Framework 4.8.04084, работая на Windows 10). приведет к тайм -ауту: < /p>

Код: Выделить всё

$Certificate = Get-ChildItem -Path Cert:\LocalMachine\My | Where-Object { $_.Thumbprint -eq 'FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF' } # As Administrator
Invoke-WebRequest -Uri 'https://api.example.com/api/v1.0/test' -Certificate $Certificate -TimeoutSec 10
-Ва, если я запускаю это в PowerShell 7.2.2, он будет правильно функционировать на первых и последующих вызовах. Я исключаю сертификат клиента из запроса, поведение по -прежнему происходит независимо ( сертификаты клиентов не требуются даже при включении, согласно sslstream. Прозрачные прокси используются в сети. Ни один DPI IPS не влияет на трафик TCP. Поведение происходит на местном экземпляре PowerShell 5.1 на сервере, размещая саму службу HTTPS (PODE). < /Li>
[*] Когда я указываю прокси, проблема исчезает. Поведение не происходит в PowerShell 5.1, когда я указываю локальный экземпляр MITMProxy через параметр Proxy , чтобы вызвать webrequest .
[*] Запросы, сделанные на другие веб-серверы, преуспевают в первых и последующих запросах. />

Код: Выделить всё

[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]::Tls12
не изменяет поведение.
Конфигурация Schannel на клиенте является стандартной, конфигурация сервера Schannel поддерживает TLS 1.0, TLS 1.1 и TLS 1.2 и связанные с ними цифкерсовые. Https server?
Похоже, что есть собственная реализация HTTP (podehttprequest.cs) и имеет дело с использованием SSLStream < /code> (poderequest.cs), так что, возможно, есть ошибка Pode? Эта проблема на стороне клиента или на стороне сервера? Моя конфигурация или ошибка?

Подробнее здесь: https://stackoverflow.com/questions/724 ... -pode-http

Вернуться в «C#»