| Termin | Definicja |
|---|---|
| Invoke-WebRequest kończy się błędem SSL |
Czym jest błąd SSL w poleceniu Invoke-WebRequestKomunikat o błędzie SSL podczas wykonywania W praktyce warto odróżnić błąd negocjacji TLS od problemu z samym adresem URL. Do pierwszej grupy należą między innymi komunikaty o niezgodnym protokole bezpieczeństwa, zerwaniu połączenia lub braku wspólnego zestawu szyfrów. Inaczej interpretuje się ostrzeżenie dotyczące zaufania do certyfikatu, niezgodnej nazwy domenowej, przekroczenia terminu ważności certyfikatu albo braku dostępu do serwera wystawcy certyfikatu. Każdy z tych przypadków może pojawić się przy Kontekst techniczny i porównanie sposobów diagnozy - Invoke-WebRequest kończy się błędem SSLW Windows PowerShell działanie Takie ustawienie zmienia preferencję protokołu dla bieżącego procesu PowerShell. Nie naprawia uszkodzonego magazynu certyfikatów, nie omija błędnej konfiguracji serwera i nie zastępuje aktualizacji systemu. Jeżeli serwer wymaga innej wersji TLS obsługiwanej przez dane środowisko, należy sprawdzić dokumentację używanej wersji PowerShell i systemu Windows, zamiast bezwarunkowo kopiować tę samą konfigurację do każdego komputera. W PowerShell 7 polecenie korzysta z nowszego stosu .NET, dlatego zachowanie może różnić się od Windows PowerShell uruchamianego w starszym systemie. Przydatne jest porównanie rezultatu z narzędziem Nie powinno się traktować wyłączenia walidacji certyfikatu jako właściwej naprawy. Parametry omijające sprawdzanie zaufania mogą być przydatne wyłącznie w kontrolowanym środowisku testowym, ponieważ pozwalają na połączenie z serwerem, którego tożsamość nie została potwierdzona. W skryptach używanych produkcyjnie bezpieczniej jest ustalić przyczynę ostrzeżenia, uzupełnić zaufane certyfikaty, poprawić nazwę hosta lub usunąć nieprawidłowe pośrednictwo proxy. Typowe problemy powodujące nieudane żądanie HTTPSNajczęstszą przyczyną jest niezgodność wersji TLS pomiędzy klientem a serwerem. Starsze środowisko może próbować rozpocząć połączenie według ustawień, które zostały wycofane z użycia, podczas gdy serwer wymaga nowszej konfiguracji. Zdarza się również odwrotna sytuacja: aktualny klient łączy się ze starym urządzeniem lub aplikacją, która obsługuje jedynie przestarzałe mechanizmy. W takim przypadku wymuszenie TLS 1.2 nie przyniesie rezultatu, a właściwym kierunkiem jest aktualizacja serwera lub zmiana punktu końcowego. Drugą grupę stanowią błędy certyfikatu. Należy sprawdzić, czy zegar systemowy wskazuje prawidłową datę i godzinę, czy certyfikat obejmuje używaną nazwę domenową oraz czy łańcuch certyfikatów prowadzi do zaufanego urzędu certyfikacji. Problem może wynikać także z brakującego certyfikatu pośredniego, przechwytywania ruchu HTTPS przez firmowy program ochronny albo niepełnego magazynu zaufanych certyfikatów w systemie. Nie można pomijać ustawień sieciowych. Błędny adres serwera proxy, wymagana autoryzacja proxy, filtr zapory, kontrola ruchu w sieci firmowej lub nieprawidłowy DNS mogą być zgłaszane jako błąd połączenia SSL, mimo że źródło problemu znajduje się poza samym TLS. Warto sprawdzić zmienne środowiskowe związane z proxy, konfigurację WinHTTP oraz możliwość rozwiązania nazwy domenowej. Dobrą praktyką jest zapisanie pełnego komunikatu i kodu wyjątku, ponieważ krótki tekst wyświetlony w konsoli często nie pokazuje pierwotnej przyczyny. W skryptach automatyzujących pobieranie danych dodatkowych komplikacji dostarczają przekierowania, wymagany nagłówek Kiedy trzeba oddać urządzenie do diagnozy - Invoke-WebRequest kończy się błędem SSLZgłoszenie do serwisu jest uzasadnione, gdy błąd powtarza się po sprawdzeniu adresu, daty systemowej, aktualizacji PowerShell i podstawowej konfiguracji sieci, szczególnie jeśli problem występuje na kilku skryptach albo blokuje cykliczną automatyzację. Pomoc techniczna może wtedy przeanalizować pełny komunikat wyjątku, wersję Windows, wersję PowerShell, certyfikaty, proxy, reguły zapory oraz różnice między połączeniem z przeglądarki i z konsoli. Nie należy usuwać certyfikatów ani wyłączać ochrony HTTPS bez ustalenia, jaki element rzeczywiście odrzuca połączenie. W warszawskim serwisie komputerowym można również zlecić sprawdzenie laptopa, a jego diagnoza jest wykonywana bez opłat. Przed przekazaniem urządzenia warto przygotować adres, który wywołuje błąd, kompletny tekst komunikatu, fragment skryptu bez haseł i tokenów oraz informację, czy połączenie działa z innej sieci. Takie dane ułatwiają odtworzenie problemu i pozwalają odróżnić lokalną niezgodność TLS od awarii serwera lub ograniczeń narzuconych przez sieć. |