IntelliJ WebLogic BEA-090078

Autor
Damian
Terlecki
3 minuty
Inne

BEA-090078 to błąd informujący o zablokowaniu konta na serwerze WebLogic na skutek przekroczenia limitu nieprawidłowych prób zalogowania. Mimo podania poprawnych danych logowania, natrętny błąd objawia się co pewien czas przy startowania serwera z poziomu IDE IntelliJ (wersja 2021.3.3 i starsze). Z dużym prawdopodobieństwem, gdy zamkniemy edytor w trakcie działania serwera i wybierzemy opcję terminate, przy kolejnym jego uruchomieniu zobaczymy wspomniany błąd.

IntelliJ
<15-Apr-2022 18:01:00,492 o'clock CEST> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to RUNNING.> 
<15-Apr-2022 18:01:05,359 o'clock CEST> <Notice> <Security> <BEA-090078> <User weblogic in security realm myrealm has had  5 invalid login attempts, locking account for 30 minutes.> 

Możemy odblokować użytkownika z poziomu innego konta, jednak ponowne uruchomienie zwyczajnie resetuje blokadę. Natomiast reset hasła za pomocą pliku boot.properties nie jest tutaj rozwiązaniem problemu. Przy próbie połączenia z IDE w celu zatrzymania serwera widzimy hasło, inne niż ustawiliśmy, spoza zakresu ASCII:

C:\wls\domains\admin\bin\stopWebLogic.cmd weblogic �w�F`�G�Ể t3://localhost:7001
Disconnected from the target VM, address: '127.0.0.1:6690', transport: 'socket'
Disconnected from server
Stopping Weblogic Server...

Process finished with exit code 0

Initializing WebLogic Scripting Tool (WLST) ...

Welcome to WebLogic Server Administration Scripting Shell

Type help() for help on available commands

Connecting to t3://localhost:7001 with userid weblogic ...
This Exception occurred at Fri Apr 15 18:09:43 CEST 2022.
javax.naming.AuthenticationException: User failed to be authenticated. [Root exception is java.lang.SecurityException: User failed to be authenticated.]
Problem invoking WLST - Traceback (innermost last):
  File "C:\wls\domains\admin\shutdown.py", line 1, in ?
  File "<iostream>", line 19, in connect
  File "<iostream>", line 553, in raiseWLSTException
WLSTException: Error occurred while performing connect : User failed to be authenticated. 
Use dumpStack() to view the full stacktrace :

Done

Wartość hasła pochodzi z pliku KeePass wskazanego przez konfigurację IDE: Settings > Appearance & Behavior > System Settings > Passwords. Rozwijając ikonkę opcji, możemy ustawić własne hasło do pliku i otworzyć go podglądając zapisane informacje. Szukane hasło znajdziemy poprzez CREDENTIAL_ALIAS zapisany w konfiguracji projektu .idea/workspace.xml. To w tym miejscu zauważymy niepoprawne znaki.

Obejściem problemu jest ponowne wpisanie hasła w konfiguracji uruchomieniowej WebLogica w IntelliJ. Przy tym należy zwrócić uwagę, aby zmiany faktycznie zostały zaaplikowane. Aby przycisk zapisania zmian się podświetlił konieczna może być zmiana nazwy użytkownika na inną i z powrotem. Z kolei rezygnacja z zamykania IDE z wykorzystaniem funkcji terminate powinna zapobiec występowaniu błędu.