Ich verwende Invoke-WebRequest mit einem Client-Zertifikat gegen eine PODE HTTPS-Serverinstanz (siehe dieses GitHub-Problem für seine Implementierung, die auf Windows Server 2019 ausgeführt wird). Aufrufe/Anfragen führen zu einem Zeitlimit:
Code: Select all
$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
-Wa, wenn ich dies in PowerShell 7.2.2 ausführe, funktioniert es bei der ersten und nachfolgenden Aufrufe korrekt. /> [*] Wenn ich das Client -Zertifikat von der Anfrage ausschließe, tritt das Verhalten immer noch unabhängig aus ( Client -Zertifikate sind nicht erforderlich, selbst wenn es gemäß SSLStream.AuthenticateasServeraSync aktiviert ist. /> Im Netzwerk werden keine transparenten Proxys verwendet. Kein DPI -IPS wirkt sich auf den TCP -Verkehr aus. Das Verhalten findet auf einer lokalen PowerShell 5.1 -Instanz auf dem Server statt, auf dem der HTTPS -Dienst selbst (Pode) gehostet wird. Das Verhalten tritt in PowerShell 5.1 nicht auf, wenn ich eine lokale MITMproxy-Instanz über den Proxy -Parameter für den Invoke-WebRequest angeben kann. />
Code: Select all
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]::Tls12
ändert das Verhalten nicht.
Schannel -Konfiguration auf dem Client ist Standard, die Schannel -Server -Konfiguration unterstützt TLS 1.0, TLS 1.1 und TLS 1.2 und zugehörige Ciphersuiten. HTTPS -Server? Ist dieses
Problem auf der clientseitigen oder serverseitigen Ausgabe? Meine Konfiguration oder ein Fehler?