Class SimpleAcceptOrRejectAllAuthenticationComponentImpl
- java.lang.Object
-
- org.alfresco.repo.security.authentication.AbstractAuthenticationComponent
-
- org.alfresco.repo.security.authentication.SimpleAcceptOrRejectAllAuthenticationComponentImpl
-
- All Implemented Interfaces:
AuthenticationComponent,AuthenticationContext,NLTMAuthenticator
public class SimpleAcceptOrRejectAllAuthenticationComponentImpl extends AbstractAuthenticationComponent implements NLTMAuthenticator
This implementation of an AuthenticationComponent can be configured to accept or reject all attempts to login. This only affects attempts to login using a user name and password. Authentication filters etc. could still support authentication but not via user names and passwords. For example, where they set the current user using the authentication component. Then the current user is set in the security context and asserted to be authenticated. By default, the implementation rejects all authentication attempts.- Author:
- Andy Hind
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.alfresco.repo.security.authentication.AuthenticationComponent
AuthenticationComponent.UserNameValidationMode
-
-
Constructor Summary
Constructors Constructor Description SimpleAcceptOrRejectAllAuthenticationComponentImpl()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description net.sf.acegisecurity.Authenticationauthenticate(net.sf.acegisecurity.Authentication token)The default is not to support Authentication token base authenticationvoidauthenticateImpl(java.lang.String userName, char[] password)Default unsupported authentication implementation - as of 2.1 this is the best way to implement your own authentication component as it will support guest login - prior to this direct over ride for authenticate(String , char[]) was used.java.lang.StringgetMD4HashedPassword(java.lang.String userName)Get the MD4 password hash, as required by NTLM based authentication methods.NTLMModegetNTLMMode()Get the enum that describes NTLM integration.protected net.sf.acegisecurity.UserDetailsgetUserDetails(java.lang.String userName)We actually have an acegi object so override the default method.protected booleanimplementationAllowsGuestLogin()voidsetAccept(boolean accept)voidsetAuthenticationDao(net.sf.acegisecurity.providers.dao.AuthenticationDao authenticationDao)voidsetSupportNtlm(boolean supportNtlm)-
Methods inherited from class org.alfresco.repo.security.authentication.AbstractAuthenticationComponent
authenticate, clearCurrentSecurityContext, getAllowGuestLogin, getCurrentAuthentication, getCurrentUserName, getDefaultAdministratorUserNames, getDefaultGuestUserNames, getGuestUserName, getGuestUserName, getNodeService, getNumberFailedAuthentications, getNumberSuccessfulAuthentications, getPersonService, getSystemUserName, getSystemUserName, getTransactionService, getUserDomain, guestUserAuthenticationAllowed, isCurrentUserTheSystemUser, isGuestUserName, isSystemUserName, onAuthenticate, onFail, setAllowGuestLogin, setAuthenticationContext, setCurrentAuthentication, setCurrentUser, setCurrentUser, setDefaultAdministratorUserNameList, setDefaultAdministratorUserNames, setDefaultGuestUserNameList, setDefaultGuestUserNames, setGuestUserAsCurrentUser, setNodeService, setPersonService, setSystemUserAsCurrentUser, setSystemUserAsCurrentUser, setTransactionService, setUserDetails, setUserRegistrySynchronizer
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.alfresco.repo.security.authentication.AuthenticationComponent
authenticate, getDefaultAdministratorUserNames, getDefaultGuestUserNames, guestUserAuthenticationAllowed, setCurrentUser, setCurrentUser, setGuestUserAsCurrentUser
-
Methods inherited from interface org.alfresco.repo.security.authentication.AuthenticationContext
clearCurrentSecurityContext, getCurrentAuthentication, getCurrentUserName, getGuestUserName, getGuestUserName, getSystemUserName, getSystemUserName, getUserDomain, isCurrentUserTheSystemUser, isGuestUserName, isSystemUserName, setCurrentAuthentication, setSystemUserAsCurrentUser, setSystemUserAsCurrentUser, setUserDetails
-
-
-
-
Method Detail
-
setAuthenticationDao
public void setAuthenticationDao(net.sf.acegisecurity.providers.dao.AuthenticationDao authenticationDao)
-
setAccept
public void setAccept(boolean accept)
-
setSupportNtlm
public void setSupportNtlm(boolean supportNtlm)
-
authenticateImpl
public void authenticateImpl(java.lang.String userName, char[] password) throws org.alfresco.repo.security.authentication.AuthenticationExceptionDescription copied from class:AbstractAuthenticationComponentDefault unsupported authentication implementation - as of 2.1 this is the best way to implement your own authentication component as it will support guest login - prior to this direct over ride for authenticate(String , char[]) was used. This will still work.- Overrides:
authenticateImplin classAbstractAuthenticationComponent- Parameters:
userName- Stringpassword- char[]- Throws:
org.alfresco.repo.security.authentication.AuthenticationException
-
implementationAllowsGuestLogin
protected boolean implementationAllowsGuestLogin()
- Specified by:
implementationAllowsGuestLoginin classAbstractAuthenticationComponent
-
getMD4HashedPassword
public java.lang.String getMD4HashedPassword(java.lang.String userName)
Description copied from interface:NLTMAuthenticatorGet the MD4 password hash, as required by NTLM based authentication methods.- Specified by:
getMD4HashedPasswordin interfaceNLTMAuthenticator- Parameters:
userName- the user name- Returns:
- the m d4 hashed password
-
getNTLMMode
public NTLMMode getNTLMMode()
Description copied from interface:NLTMAuthenticatorGet the enum that describes NTLM integration.- Specified by:
getNTLMModein interfaceNLTMAuthenticator- Returns:
- the NTLM mode
-
authenticate
public net.sf.acegisecurity.Authentication authenticate(net.sf.acegisecurity.Authentication token) throws org.alfresco.repo.security.authentication.AuthenticationExceptionThe default is not to support Authentication token base authentication- Specified by:
authenticatein interfaceNLTMAuthenticator- Parameters:
token- Authentication- Returns:
- Authentication
- Throws:
org.alfresco.repo.security.authentication.AuthenticationException- the authentication exception
-
getUserDetails
protected net.sf.acegisecurity.UserDetails getUserDetails(java.lang.String userName)
We actually have an acegi object so override the default method.- Overrides:
getUserDetailsin classAbstractAuthenticationComponent- Parameters:
userName- String- Returns:
- UserDetails
-
-