]
Darran Lofthouse reassigned WFLY-7666:
--------------------------------------
Assignee: Darran Lofthouse (was: Harald Pehl)
Login to Management Console with empty username causes Internal
Server Error (status 500)
-----------------------------------------------------------------------------------------
Key: WFLY-7666
URL:
https://issues.jboss.org/browse/WFLY-7666
Project: WildFly
Issue Type: Bug
Components: Web Console
Affects Versions: 11.0.0.Alpha1
Reporter: Ondrej Lukas
Assignee: Darran Lofthouse
Priority: Blocker
In case when empty username is passed during authentication to Management Console then
exception is thrown to server log and Internal Server Error (status 500) is returned to
user (which leads to displaying "Connect to Management Interface" page. User is
not able to try to login again.
In WildFly 10.1.0 this scenario works fine - after passing empty username during
authentication, authentication failed and login window is displayed again. I request
blocker due to regression.
Exception thrown to server log:
{code}
ERROR [io.undertow.request] (management task-3) UT005071: Undertow request failed
HttpServerExchange{ GET /management request
{Accept=[text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8],
Accept-Language=[en-US,en;q=0.5], Accept-Encoding=[gzip, deflate], User-Agent=[Mozilla/5.0
(X11; Ubuntu; Linux x86_64; rv:44.0) Gecko/20100101 Firefox/44.0],
Connection=[keep-alive], Authorization=[Digest username="",
realm="ManagementRealm",
nonce="AAAAAwAAAlzTPVPLC0qPi6CaEhTCHZa+QjsuAjn3OsQXcuDYAxrOtc+rRMs=",
uri="/management", algorithm=MD5,
response="cbd764e6c09577625476340f7bcfc84d",
opaque="00000000000000000000000000000000"], Content-Type=[text/plain;
charset=utf-8], Cookie=[__utma=111872281.1874867570.1477040206.1479886566.1479982414.11;
__utmz=111872281.1477040206.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none);
__utmb=111872281.5.10.1479982414; __utmt=1; __utmc=111872281],
Referer=[http://localhost:9990/console/App.html], Host=[localhost:9990]} response
{X-Frame-Options=[SAMEORIGIN]}}: java.lang.IllegalArgumentException
at javax.security.auth.callback.NameCallback.<init>(NameCallback.java:90)
at
org.wildfly.security.http.impl.DigestAuthenticationMechanism.getH_A1(DigestAuthenticationMechanism.java:233)
at
org.wildfly.security.http.impl.DigestAuthenticationMechanism.validateResponse(DigestAuthenticationMechanism.java:189)
at
org.wildfly.security.http.impl.DigestAuthenticationMechanism.evaluateRequest(DigestAuthenticationMechanism.java:121)
at
org.wildfly.security.http.util.SetMechanismInformationMechanismFactory$1.evaluateRequest(SetMechanismInformationMechanismFactory.java:115)
at
org.wildfly.security.http.util.SecurityIdentityServerMechanismFactory$1.evaluateRequest(SecurityIdentityServerMechanismFactory.java:77)
at
org.wildfly.security.http.HttpAuthenticator$AuthenticationExchange.authenticate(HttpAuthenticator.java:106)
at
org.wildfly.security.http.HttpAuthenticator$AuthenticationExchange.access$100(HttpAuthenticator.java:90)
at org.wildfly.security.http.HttpAuthenticator.authenticate(HttpAuthenticator.java:74)
at
org.wildfly.elytron.web.undertow.server.SecurityContextImpl.authenticate(SecurityContextImpl.java:82)
at
io.undertow.security.handlers.AuthenticationCallHandler.handleRequest(AuthenticationCallHandler.java:50)
at io.undertow.server.Connectors.executeRootHandler(Connectors.java:207)
at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:809)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
{code}