You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by db...@apache.org on 2012/03/16 09:24:06 UTC
svn commit: r1301372 -
/openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatSecurityService.java
Author: dblevins
Date: Fri Mar 16 08:24:05 2012
New Revision: 1301372
URL: http://svn.apache.org/viewvc?rev=1301372&view=rev
Log:
TOMEE-153: Refined exception handling around failed logins from app and ejb clients
Modified:
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatSecurityService.java
Modified: openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatSecurityService.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatSecurityService.java?rev=1301372&r1=1301371&r2=1301372&view=diff
==============================================================================
--- openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatSecurityService.java (original)
+++ openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatSecurityService.java Fri Mar 16 08:24:05 2012
@@ -27,6 +27,7 @@ import org.apache.openejb.spi.CallerPrin
import org.apache.tomee.loader.TomcatHelper;
import javax.security.auth.Subject;
+import javax.security.auth.login.CredentialNotFoundException;
import javax.security.auth.login.LoginException;
import java.io.Serializable;
import java.security.Principal;
@@ -63,7 +64,9 @@ public class TomcatSecurityService exten
throw new LoginException("No Tomcat realm available");
}
- Principal principal = defaultRealm.authenticate(username, password);
+ final Principal principal = defaultRealm.authenticate(username, password);
+ if (principal == null) throw new CredentialNotFoundException(username);
+
Subject subject = createSubject(defaultRealm, principal);
UUID token = registerSubject(subject);
return token;