public class SecurityContextLoginModule extends Object implements LoginModule
LoginModule that uses an Acegi Security SecurityContext to provide authentication.This LoginModule
provides opposite functionality to the JaasAuthenticationProvider API, and should not really be used in
conjunction with it.
The JaasAuthenticationProvider allows Acegi to authenticate against Jaas.
The SecurityContextLoginModule allows a Jaas based application to authenticate against Acegi. If there is no
Authentication in the SecurityContextHolder the login() method will throw a LoginException by default.
This functionality can be changed with the ignoreMissingAuthentication option by setting it to "true".
Setting ignoreMissingAuthentication=true will tell the SecurityContextLoginModule to simply return false and be
ignored if the authentication is null.
| Constructor and Description |
|---|
SecurityContextLoginModule() |
| Modifier and Type | Method and Description |
|---|---|
boolean |
abort()
Abort the authentication process by forgetting the Acegi Security
Authentication. |
boolean |
commit()
Authenticate the
Subject (phase two) by adding the Acegi Security
Authentication to the Subject's principals. |
void |
initialize(Subject subject,
CallbackHandler callbackHandler,
Map sharedState,
Map options)
Initialize this
LoginModule. |
boolean |
login()
Authenticate the
Subject (phase one) by extracting the Acegi Security
Authentication from the current SecurityContext. |
boolean |
logout()
Log out the
Subject. |
public boolean abort()
throws LoginException
Authentication.abort in interface LoginModuleLoginModule should be ignored.LoginException - if the abort failspublic boolean commit()
throws LoginException
Subject (phase two) by adding the Acegi Security
Authentication to the Subject's principals.commit in interface LoginModuleLoginModule should be ignored.LoginException - if the commit failspublic void initialize(Subject subject, CallbackHandler callbackHandler, Map sharedState, Map options)
LoginModule. Ignores the callback handler, since the code establishing the
LoginContext likely won't provide one that understands Acegi Security. Also ignores the
sharedState and options parameters, since none are recognized.initialize in interface LoginModulesubject - the Subject to be authenticated. callbackHandler - is ignoredsharedState - is ignoredoptions - are ignoredpublic boolean login()
throws LoginException
Subject (phase one) by extracting the Acegi Security
Authentication from the current SecurityContext.login in interface LoginModuleLoginModule should be ignored.LoginException - if the authentication failspublic boolean logout()
throws LoginException
Subject.logout in interface LoginModuleLoginModule should be ignored.LoginException - if the logout failsCopyright © 2016. All rights reserved.