From 59fbd8bc99c613bd6134b09971fb78359efac79c Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Mon, 10 Jan 2011 13:13:30 +0000 Subject: [PATCH] 324505 Implement API login git-svn-id: svn+ssh://dev.eclipse.org/svnroot/rt/org.eclipse.jetty/jetty/trunk@2634 7e9141cc-0065-0410-87d8-b60c137991c4 --- VERSION.txt | 1 + .../authentication/DeferredAuthentication.java | 11 ++++++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/VERSION.txt b/VERSION.txt index b5563be02ae..69a456c05a5 100644 --- a/VERSION.txt +++ b/VERSION.txt @@ -11,6 +11,7 @@ jetty-7.3.0-SNAPSHOT + 333481 Handle UTF-32 codepoints + 333608 tlds defined in web.xml are not picked up + 333679 Refactored jetty-jmx. Moved mbeans to modules. + + 324505 Implement API login jetty-7.2.2.v20101205 5 December 2010 + JETTY-1308 327109 (re)fixed AJP handling of empty packets diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/DeferredAuthentication.java b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/DeferredAuthentication.java index 78c9c32c75e..ab9583f771a 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/DeferredAuthentication.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/DeferredAuthentication.java @@ -27,18 +27,20 @@ import javax.servlet.http.HttpServletResponse; import org.eclipse.jetty.security.Authenticator; import org.eclipse.jetty.security.IdentityService; import org.eclipse.jetty.security.ServerAuthException; +import org.eclipse.jetty.security.UserAuthentication; import org.eclipse.jetty.server.Authentication; +import org.eclipse.jetty.server.UserIdentity; import org.eclipse.jetty.util.IO; import org.eclipse.jetty.util.log.Log; public class DeferredAuthentication implements Authentication.Deferred { - protected final Authenticator _authenticator; + protected final LoginAuthenticator _authenticator; private IdentityService _identityService; private Object _previousAssociation; - public DeferredAuthentication(Authenticator authenticator) + public DeferredAuthentication(LoginAuthenticator authenticator) { if (authenticator == null) throw new NullPointerException("No Authenticator"); @@ -113,7 +115,10 @@ public class DeferredAuthentication implements Authentication.Deferred */ public Authentication login(String username, String password) { - return null; // TODO implement + UserIdentity user = _authenticator.getLoginService().login(username,password); + if (user!=null) + return new UserAuthentication("API",user); + return null; } /* ------------------------------------------------------------ */