Błąd ERRUNEXPECTEDSECURITYLIBRARYSTATUS (czasami błędnie określany jako ERRUNEXPECTED lub INADEQUATESECURITY) pojawia się w przeglądarce Google Chrome przy próbie połączenia z niektórymi wewnętrznymi stronami, zwłaszcza na systemach Windows z usługami wykorzystującymi Windows Authentication (np. Qlik, SharePoint, RDP, aplikacje korporacyjne). W tym poradniku znajdziesz wyjaśnienie przyczyn, informacje dla adminów serwerów, developerów i użytkowników końcowych oraz szczegółowe instrukcje naprawy krok po kroku.
Przyczyny błędu
- Problem dotyczy połączenia z serwerem funkcjonującym na systemie Windows Server 2012 R2/2016 oraz klientem na Windows 10 i dotyczy przypadków, gdy uwierzytelnianie odbywa się za pomocą mechanizmów Windows (NTLM, Negotiate/Kerberos).
- Chrome domyślnie preferuje protokół HTTP/2, natomiast niektóre wersje serwerów Windows nie obsługują autoryzacji Windows nad HTTP/2 lub nie obsługują prawidłowo negocjacji TLS (ALPN – Application-Layer Protocol Negotiation), wymaganej przez HTTP/2.
- Negocjacja protokołu HTTP/2 i Windows Authentication (NTLM/Negotiate) nie działa prawidłowo, co prowadzi do komunikatu błędu bezpieczeństwa, a strona albo się długo ładuje, albo nie ładuje wcale.
- Nieprawidłowo skonfigurowane szyfrowanie (cipher suites) na serwerze również może przyczyniać się do tego błędu.
Jak rozpoznać problem?
- Chrome wyświetla komunikat – „This site can’t be reached”, „INADEQUATESECURITY”, „ERRUNEXPECTED”, „ERRUNEXPECTEDSECURITYLIBRARYSTATUS” lub „net::ERRUNEXPECTEDSECURITYLIBRARYSTATUS”.
- Strona ładuje się bardzo długo lub wcale.
- Problem występuje tylko w Chrome/Firefox, w Edge/IE/Private Browsing działa.
- Problem pojawia się na określonych serwerach Windows, zwłaszcza z autoryzacją Windows.
Poradnik dla webmasterów i adminów serwerów
1. Zdiagnozuj problem
- Sprawdź, czy problem dotyczy tylko Chrome/Firefox, a Edge/IE działa.
- Upewnij się, że serwer obsługuje prawidłowo Windows Authentication.
- Sprawdź, czy problem pojawia się przy połączeniu przez HTTPS/HTTP2.
2. Wyłącz HTTP/2 na serwerze
HTTP/2 jest główną przyczyną problemu. Aby go rozwiązać, należy wyłączyć obsługę HTTP/2 na serwerze Windows.
Krok po kroku:
- Otwórz Edytor rejestru (regedit.exe) na serwerze.
- Przejdź do klucza –
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters - Dodaj 2 nowe wartości DWORD (32-bit) –
EnableHttp2TlsEnableHttp2Cleartext
- Ustaw obie wartości na 0 (wyłączone).
- Zrestartuj serwer.
3. Popraw konfigurację cipher suites
Użyj narzędzia IIS Crypto do bezpiecznej zmiany prioritety szyfrów zgodnie z aktualnymi standardami bezpieczeństwa.
4. Testuj ponownie
Po wyłączeniu HTTP/2 i restarcie serwera, testuj dostęp do strony w Chrome. Powinien działać bez problemu.
Poradnik dla web deweloperów
- Unikaj implementacji Windows Authentication nad HTTP/2 na serwerach Windows 2012 R2/2016.
- Testuj połączenia wieloprotokołowe – upewnij się, że aplikacja działa poprawnie zarówno przy HTTP/1.1, jak i HTTP/2.
- Monitoruj zgłoszenia użytkowników dotyczące błędów bezpieczeństwa w Chrome.
- Rozważ alternatywne mechanizmy uwierzytelniania (np. OAuth, form-based), jeśli to możliwe.
Poradnik dla użytkowników końcowych
1. Tymczasowe obejście
- Użyj innej przeglądarki (Edge, Internet Explorer, Safari) – tam problem zwykle nie występuje.
- Spróbuj trybu incognito – czasem pomaga (w Chrome: Ctrl+Shift+N).
2. Wyłącz HTTP/2 na swoim komputerze (tylko dla zaawansowanych)
Jeśli jesteś administratorem swojego komputera, możesz wyłączyć HTTP/2 na kliencie (Windows 10):
- Otwórz Edytor rejestru (regedit.exe).
- Przejdź do –
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters - Dodaj 2 nowe wartości DWORD (32-bit) –
EnableHttp2TlsEnableHttp2Cleartext
- Ustaw obie na 0.
- Zrestartuj komputer.
3. Alternatywne rozwiązanie
Możesz uruchomić Chrome z parametrem:
chrome --disable-http2
Lub dodać flagę --disable-http2 w skrócie do Chrome. Uwaga: to rozwiązanie tymczasowe i może nie być dostępne we wszystkich wersjach Chrome.
Dodatkowe informacje
- Problem nie dotyczy Edge/IE, ponieważ te przeglądarki inaczej negocjują protokół i autoryzację.
- HTTP/2 jest szybszy i bezpieczniejszy, ale niektóre starsze serwery Windows nie obsługują go poprawnie z Windows Authentication.
- Microsoft i Google pracują nad poprawkami, ale na razie najlepszym rozwiązaniem jest wyłączenie HTTP/2 na problematycznych serwerach.
- Systemy Windows Server 2019/2022 nie mają już tego problemu lub jest on znacznie rzadszy.
Podsumowanie
Błąd ERRUNEXPECTEDSECURITYLIBRARYSTATUS w Chrome spowodowany jest nieprawidłową obsługą Windows Authentication nad HTTP/2 przez starsze serwery Windows. Rozwiązaniem jest wyłączenie HTTP/2 na serwerze (i opcjonalnie na kliencie) oraz poprawa konfiguracji szyfrowania. Po tych krokach autoryzacja Windows powinna działać bezproblemowo w Chrome. Jeśli aplikacja umożliwia zmianę mechanizmu uwierzytelniania, warto rozważyć alternatywne rozwiązania, by uniknąć tego problemu w przyszłości.

