Package org.apache.wiki.auth.login
Class WebContainerLoginModule
java.lang.Object
org.apache.wiki.auth.login.AbstractLoginModule
org.apache.wiki.auth.login.WebContainerLoginModule
- All Implemented Interfaces:
LoginModule
public class WebContainerLoginModule extends AbstractLoginModule
Logs in a user by extracting authentication data from an Http servlet
session. First, the module tries to extract a Principal object out of the
request directly using the servlet requests's getUserPrincipal()
method. If one is found, authentication succeeds. If there is no
Principal in the request, try calling getRemoteUser()
. If
the remoteUser
exists but the UserDatabase can't find a matching
profile, a generic WikiPrincipal is created with this value. If neither
userPrincipal
nor remoteUser
exist in the request, the login fails.
This module must be used with a CallbackHandler that supports the following Callback types:
HttpRequestCallback
- supplies the Http request object, from which the getRemoteUser and getUserPrincipal are extractedUserDatabaseCallback
- supplies the user database for looking up the value of getRemoteUser
After authentication, the Subject will contain the Principal that represents the logged-in user.
- Since:
- 2.3
-
Field Summary
Fields Modifier and Type Field Description protected static org.apache.log4j.Logger
log
Fields inherited from class org.apache.wiki.auth.login.AbstractLoginModule
m_handler, m_options, m_principals, m_state, m_subject, NULL
-
Constructor Summary
Constructors Constructor Description WebContainerLoginModule()
-
Method Summary
Modifier and Type Method Description boolean
login()
Logs in the user.Methods inherited from class org.apache.wiki.auth.login.AbstractLoginModule
abort, commit, initialize, logout
-
Field Details
-
log
-
-
Constructor Details
-
WebContainerLoginModule
public WebContainerLoginModule()
-
-
Method Details
-
login
Logs in the user.- Specified by:
login
in interfaceLoginModule
- Specified by:
login
in classAbstractLoginModule
- Returns:
true
if the commit succeeded, orfalse
if this LoginModule should be ignored.- Throws:
LoginException
- if the authentication fails- See Also:
LoginModule.login()
-