Support kerberos IllegalArgumentException

closes #10672
This commit is contained in:
Tomohiro Nagai 2022-03-10 00:41:29 +09:00 committed by Marek Posolda
parent ba369a2c2b
commit a4f6134ba3

View File

@ -70,6 +70,7 @@ public class KerberosUsernamePasswordAuthenticator {
logger.debugf("Message from kerberos: %s", message);
checkKerberosServerAvailable(le);
checkKerberosUsername(le);
// Bit cumbersome, but seems to work with tested kerberos servers
boolean exists = (!message.contains("Client not found"));
@ -92,6 +93,7 @@ public class KerberosUsernamePasswordAuthenticator {
return true;
} catch (LoginException le) {
checkKerberosServerAvailable(le);
checkKerberosUsername(le);
logger.debug("Failed to authenticate user " + username, le);
return false;
@ -110,6 +112,13 @@ public class KerberosUsernamePasswordAuthenticator {
}
}
protected void checkKerberosUsername(LoginException le) {
String message = le.getMessage();
if (message.contains("IllegalArgumentException")) {
throw new ModelException("Kerberos illegal username", le);
}
}
/**
* Returns true if user was successfully authenticated against Kerberos