fr.paris.lutece.plugins.mylutece.authentication
Class MultiLuteceAuthentication

java.lang.Object
  extended by fr.paris.lutece.plugins.mylutece.authentication.MultiLuteceAuthentication
All Implemented Interfaces:
fr.paris.lutece.portal.service.security.LuteceAuthentication

public class MultiLuteceAuthentication
extends java.lang.Object
implements fr.paris.lutece.portal.service.security.LuteceAuthentication

Manages serveral MyLuteceAuthentication. Call registerAuthentication(LuteceAuthentication) to register your authentication and removeAuthentication(String) to unregister it.


Constructor Summary
MultiLuteceAuthentication()
           
 
Method Summary
 boolean findResetPassword(javax.servlet.http.HttpServletRequest request, java.lang.String strLogin)
          
 java.lang.String getAccessControledTemplate()
          Returns the access controled template
 java.lang.String getAccessDeniedTemplate()
          Returns the access denied template
 fr.paris.lutece.portal.service.security.LuteceUser getAnonymousUser()
          
 java.lang.String getAuthServiceName()
          
 java.lang.String getAuthType(javax.servlet.http.HttpServletRequest request)
          
 java.lang.String getDoLoginUrl()
          Returns the DoLogin URL of the Authentication Service.
 java.lang.String getDoLogoutUrl()
          Returns the disconnect URL of the Authentication Service.
 fr.paris.lutece.portal.service.security.LuteceUser getHttpAuthenticatedUser(javax.servlet.http.HttpServletRequest request)
          Finds the http authenticated user.
 java.lang.String getIconUrl()
          No icon directlty shown for this authentication.
 java.util.List<fr.paris.lutece.portal.service.security.LuteceAuthentication> getListLuteceAuthentication()
          Returns all known security authentication services
 java.lang.String getLoginPageUrl()
          Returns the Login page URL of the Authentication Service.
 java.lang.String getLostPasswordPageUrl()
          Returns the lost password URL of the Authentication Service.
 fr.paris.lutece.portal.service.security.LuteceAuthentication getLuteceAuthentication(java.lang.String strKey)
          Gets the authentication by its key
 java.lang.String getName()
          Always null, not supposed to be identifiable
 java.lang.String getNewAccountPageUrl()
          Returns the new account page URL of the Authentication Service
Tries to get authentication specific new account page url form request (passed through LocalVariables ), default otherswise.
 java.lang.String getPluginName()
          Always null, this implementation is not plugin related.
 java.lang.String getResetPasswordPageUrl(javax.servlet.http.HttpServletRequest request)
          
 java.lang.String[] getRolesByUser(fr.paris.lutece.portal.service.security.LuteceUser user)
          
 fr.paris.lutece.portal.service.security.LuteceUser getUser(java.lang.String strUserLogin)
          Tries to get user from any authentication.
 java.util.Collection<fr.paris.lutece.portal.service.security.LuteceUser> getUsers()
          Gets all known users from all authentications.
 java.lang.String getViewAccountPageUrl()
          Returns the View account page URL of the Authentication Service
Tries to get authentication specific view account page url form request (passed through LocalVariables ), default otherswise.
 boolean isDelegatedAuthentication()
          
 boolean isExternalAuthentication()
          
 boolean isMultiAuthenticationSupported()
          
 boolean isUserInRole(fr.paris.lutece.portal.service.security.LuteceUser user, javax.servlet.http.HttpServletRequest request, java.lang.String strRole)
          
 boolean isUsersListAvailable()
          Returns false.
 fr.paris.lutece.portal.service.security.LuteceUser login(java.lang.String strUserName, java.lang.String strUserPassword, javax.servlet.http.HttpServletRequest request)
          
 void logout(fr.paris.lutece.portal.service.security.LuteceUser user)
          
static void registerAuthentication(fr.paris.lutece.portal.service.security.LuteceAuthentication authentication)
          Registers an authentication.
static void removeAuthentication(java.lang.String strAuthenticationName)
          Removes the authentication from managed authentication
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MultiLuteceAuthentication

public MultiLuteceAuthentication()
Method Detail

registerAuthentication

public static void registerAuthentication(fr.paris.lutece.portal.service.security.LuteceAuthentication authentication)
Registers an authentication. Should be called at plugin init/install.

Parameters:
authentication - the authentication to register.

removeAuthentication

public static void removeAuthentication(java.lang.String strAuthenticationName)
Removes the authentication from managed authentication

Parameters:
strAuthenticationName - the authentication key

getLoginPageUrl

public java.lang.String getLoginPageUrl()
Returns the Login page URL of the Authentication Service.
Tries to get authentication specific login page url form request (passed through LocalVariables ), default otherswise.

Specified by:
getLoginPageUrl in interface fr.paris.lutece.portal.service.security.LuteceAuthentication
Returns:
The URL authentication specific login page url, default otherswise.

getDoLoginUrl

public java.lang.String getDoLoginUrl()
Returns the DoLogin URL of the Authentication Service.
Tries to get authentication specific dologin page url form request (passed through LocalVariables ), default otherswise.

Specified by:
getDoLoginUrl in interface fr.paris.lutece.portal.service.security.LuteceAuthentication
Returns:
The URL

getNewAccountPageUrl

public java.lang.String getNewAccountPageUrl()
Returns the new account page URL of the Authentication Service
Tries to get authentication specific new account page url form request (passed through LocalVariables ), default otherswise.

Specified by:
getNewAccountPageUrl in interface fr.paris.lutece.portal.service.security.LuteceAuthentication
Returns:
The URL

getViewAccountPageUrl

public java.lang.String getViewAccountPageUrl()
Returns the View account page URL of the Authentication Service
Tries to get authentication specific view account page url form request (passed through LocalVariables ), default otherswise.

Specified by:
getViewAccountPageUrl in interface fr.paris.lutece.portal.service.security.LuteceAuthentication
Returns:
The URL

getLostPasswordPageUrl

public java.lang.String getLostPasswordPageUrl()
Returns the lost password URL of the Authentication Service.
Tries to get authentication specific lost password page url form request (passed through LocalVariables ), default otherswise.

Specified by:
getLostPasswordPageUrl in interface fr.paris.lutece.portal.service.security.LuteceAuthentication
Returns:
The URL

findResetPassword

public boolean findResetPassword(javax.servlet.http.HttpServletRequest request,
                                 java.lang.String strLogin)

Specified by:
findResetPassword in interface fr.paris.lutece.portal.service.security.LuteceAuthentication

getResetPasswordPageUrl

public java.lang.String getResetPasswordPageUrl(javax.servlet.http.HttpServletRequest request)

Specified by:
getResetPasswordPageUrl in interface fr.paris.lutece.portal.service.security.LuteceAuthentication

getDoLogoutUrl

public java.lang.String getDoLogoutUrl()
Returns the disconnect URL of the Authentication Service.
Tries to get authentication specific dologout page url form request (passed through LocalVariables ), default otherswise.

Specified by:
getDoLogoutUrl in interface fr.paris.lutece.portal.service.security.LuteceAuthentication
Returns:
The URL

getAccessDeniedTemplate

public java.lang.String getAccessDeniedTemplate()
Returns the access denied template

Specified by:
getAccessDeniedTemplate in interface fr.paris.lutece.portal.service.security.LuteceAuthentication
Returns:
The template

getAccessControledTemplate

public java.lang.String getAccessControledTemplate()
Returns the access controled template

Specified by:
getAccessControledTemplate in interface fr.paris.lutece.portal.service.security.LuteceAuthentication
Returns:
The template

getAnonymousUser

public fr.paris.lutece.portal.service.security.LuteceUser getAnonymousUser()

Specified by:
getAnonymousUser in interface fr.paris.lutece.portal.service.security.LuteceAuthentication

getAuthServiceName

public java.lang.String getAuthServiceName()

Specified by:
getAuthServiceName in interface fr.paris.lutece.portal.service.security.LuteceAuthentication

getAuthType

public java.lang.String getAuthType(javax.servlet.http.HttpServletRequest request)

Specified by:
getAuthType in interface fr.paris.lutece.portal.service.security.LuteceAuthentication

getHttpAuthenticatedUser

public fr.paris.lutece.portal.service.security.LuteceUser getHttpAuthenticatedUser(javax.servlet.http.HttpServletRequest request)
Finds the http authenticated user.

Specified by:
getHttpAuthenticatedUser in interface fr.paris.lutece.portal.service.security.LuteceAuthentication
Parameters:
request - the reuqest
Returns:
the first successfully recovered user, null otherwise.

getRolesByUser

public java.lang.String[] getRolesByUser(fr.paris.lutece.portal.service.security.LuteceUser user)

Specified by:
getRolesByUser in interface fr.paris.lutece.portal.service.security.LuteceAuthentication

getUser

public fr.paris.lutece.portal.service.security.LuteceUser getUser(java.lang.String strUserLogin)
Tries to get user from any authentication.
Due to huge calculation, this method should not be called often.

Specified by:
getUser in interface fr.paris.lutece.portal.service.security.LuteceAuthentication
Parameters:
strUserLogin - user login
Returns:
the LuteceUser found, null otherwise.

getUsers

public java.util.Collection<fr.paris.lutece.portal.service.security.LuteceUser> getUsers()
Gets all known users from all authentications.

Specified by:
getUsers in interface fr.paris.lutece.portal.service.security.LuteceAuthentication
Returns:
all kown users list.

isExternalAuthentication

public boolean isExternalAuthentication()

Specified by:
isExternalAuthentication in interface fr.paris.lutece.portal.service.security.LuteceAuthentication

isUserInRole

public boolean isUserInRole(fr.paris.lutece.portal.service.security.LuteceUser user,
                            javax.servlet.http.HttpServletRequest request,
                            java.lang.String strRole)

Specified by:
isUserInRole in interface fr.paris.lutece.portal.service.security.LuteceAuthentication

isUsersListAvailable

public boolean isUsersListAvailable()
Returns false. User list should not be directly recovered, due to use CPU usage.

Specified by:
isUsersListAvailable in interface fr.paris.lutece.portal.service.security.LuteceAuthentication
Returns:
false.

login

public fr.paris.lutece.portal.service.security.LuteceUser login(java.lang.String strUserName,
                                                                java.lang.String strUserPassword,
                                                                javax.servlet.http.HttpServletRequest request)
                                                         throws javax.security.auth.login.LoginException,
                                                                fr.paris.lutece.portal.service.security.LoginRedirectException

Specified by:
login in interface fr.paris.lutece.portal.service.security.LuteceAuthentication
Throws:
javax.security.auth.login.LoginException
fr.paris.lutece.portal.service.security.LoginRedirectException

logout

public void logout(fr.paris.lutece.portal.service.security.LuteceUser user)

Specified by:
logout in interface fr.paris.lutece.portal.service.security.LuteceAuthentication

isMultiAuthenticationSupported

public boolean isMultiAuthenticationSupported()

Specified by:
isMultiAuthenticationSupported in interface fr.paris.lutece.portal.service.security.LuteceAuthentication

getLuteceAuthentication

public fr.paris.lutece.portal.service.security.LuteceAuthentication getLuteceAuthentication(java.lang.String strKey)
Gets the authentication by its key

Parameters:
strKey - the key
Returns:
the LuteceAuthentication found, null otherwise.

isDelegatedAuthentication

public boolean isDelegatedAuthentication()

Specified by:
isDelegatedAuthentication in interface fr.paris.lutece.portal.service.security.LuteceAuthentication

getListLuteceAuthentication

public java.util.List<fr.paris.lutece.portal.service.security.LuteceAuthentication> getListLuteceAuthentication()
Returns all known security authentication services

Returns:
all known security authentication services

getIconUrl

public java.lang.String getIconUrl()
No icon directlty shown for this authentication.

Specified by:
getIconUrl in interface fr.paris.lutece.portal.service.security.LuteceAuthentication
Returns:
icon url

getName

public java.lang.String getName()
Always null, not supposed to be identifiable

Specified by:
getName in interface fr.paris.lutece.portal.service.security.LuteceAuthentication
Returns:
null

getPluginName

public java.lang.String getPluginName()
Always null, this implementation is not plugin related.

Specified by:
getPluginName in interface fr.paris.lutece.portal.service.security.LuteceAuthentication
Returns:
null


Copyright © 2012 Mairie de Paris. All Rights Reserved.