public class PassthruCifsAuthenticator extends CifsAuthenticatorBase implements org.alfresco.jlan.server.SessionListener
Authenticate users accessing the CIFS server by validating the user against a domain controller or other server on the network.
Modifier and Type | Field and Description |
---|---|
static int |
DefaultSessionTmo |
static int |
MaxCheckInterval |
static int |
MaxSessionTmo |
static int |
MinCheckInterval |
static int |
MinSessionTmo |
static long |
PassthruKeepAliveInterval |
m_md4Encoder
GUEST_USERNAME, m_config, m_random
AUTH_ACCDISABLED, AUTH_ALLOW, AUTH_BADPASSWORD, AUTH_BADUSER, AUTH_DISALLOW, AUTH_GUEST, AUTH_PASSEXPIRED, LANMAN, NoAccess, NTLM1, NTLM2, ReadOnly, SHARE_MODE, STANDARD_CHALLENGE_LEN, STANDARD_PASSWORD_LEN, USER_MODE, Writeable
Constructor and Description |
---|
PassthruCifsAuthenticator()
Passthru Authenticator Constructor
|
Modifier and Type | Method and Description |
---|---|
int |
authenticateShareConnect(org.alfresco.jlan.server.auth.ClientInfo client,
org.alfresco.jlan.server.core.SharedDevice share,
String sharePwd,
org.alfresco.jlan.server.SrvSession sess)
Authenticate the connection to a particular share, called when the SMB server is in share
security mode
|
int |
authenticateUser(org.alfresco.jlan.server.auth.ClientInfo client,
org.alfresco.jlan.server.SrvSession sess,
int alg)
Authenticate a session setup by a user
|
void |
closeAuthenticator()
Close the authenticator, perform cleanup
|
void |
generateNegotiateResponse(org.alfresco.jlan.smb.server.SMBSrvSession sess,
org.alfresco.jlan.smb.server.SMBSrvPacket respPkt,
boolean extendedSecurity)
Generate the CIFS negotiate response packet, the authenticator should add authentication specific fields
to the response.
|
org.alfresco.jlan.server.auth.AuthContext |
getAuthContext(org.alfresco.jlan.smb.server.SMBSrvSession sess)
Return an authentication context for the new session
|
int |
getServerCapabilities()
Return the server capability flags
|
Hashtable<String,org.alfresco.jlan.server.auth.passthru.PassthruDetails> |
getSessions() |
void |
initialize(org.alfresco.jlan.server.config.ServerConfiguration config,
org.springframework.extensions.config.ConfigElement params)
Initialize the authenticator via the config service
|
void |
processAlfrescoSessionSetup(org.alfresco.jlan.smb.server.SMBSrvSession sess,
org.alfresco.jlan.smb.server.SMBSrvPacket reqPkt)
Process the CIFS session setup request packet and build the session setup response
|
void |
processSessionSetup(org.alfresco.jlan.smb.server.SMBSrvSession sess,
org.alfresco.jlan.smb.server.SMBSrvPacket reqPkt)
Process the CIFS session setup request packet and build the session setup response.
|
void |
sessionClosed(org.alfresco.jlan.server.SrvSession sess)
SMB server session closed notification
|
void |
sessionCreated(org.alfresco.jlan.server.SrvSession sess)
SMB server session created notification
|
void |
sessionLoggedOn(org.alfresco.jlan.server.SrvSession sess)
User successfully logged on notification
|
void |
setPassthruServers(org.alfresco.jlan.server.auth.passthru.PassthruServers servers) |
protected boolean |
validateAuthenticationMode()
Validate that the authentication component supports the required mode.
|
afterPropertiesSet, checkForAdminUserName, destroy, doGuestLogon, doInTransaction, getAuthenticationComponent, getAuthenticationService, getAuthorityService, getHomeFolderForUser, getNodeService, getNTLMAuthenticator, getPersonService, initialize, isActive, mapUserNameToPerson, setActive, setAuthenticationComponent, setAuthenticationService, setAuthorityService, setCurrentUser, setDiskInterface, setNodeService, setPersonService, setTransactionService
allowGuest, authenticateUserPlainText, convertPassword, generateEncryptedPassword, getAccessMode, getCIFSConfig, getEnabledDialects, getEncryptionKeyLength, getEncryptor, getGuestUserName, getsecurityConfig, getSecurityMode, getStatusAsString, getUserDetails, hasDebug, hasExtendedSecurity, hasSessionCleanup, mapClientAddressToDomain, mapUnknownUserToGuest, setAccessMode, setAllowGuest, setConfig, setDebug, setExtendedSecurity, setGuestUserName, setMapToGuest, setSecurityMode, setSessionCleanup, toString, validatePassword
public static final int DefaultSessionTmo
public static final int MinSessionTmo
public static final int MaxSessionTmo
public static final int MinCheckInterval
public static final int MaxCheckInterval
public static final long PassthruKeepAliveInterval
public PassthruCifsAuthenticator()
Default to user mode security with encrypted password support.
public Hashtable<String,org.alfresco.jlan.server.auth.passthru.PassthruDetails> getSessions()
public void setPassthruServers(org.alfresco.jlan.server.auth.passthru.PassthruServers servers)
public int authenticateShareConnect(org.alfresco.jlan.server.auth.ClientInfo client, org.alfresco.jlan.server.core.SharedDevice share, String sharePwd, org.alfresco.jlan.server.SrvSession sess)
authenticateShareConnect
in interface org.alfresco.jlan.server.auth.ICifsAuthenticator
authenticateShareConnect
in class org.alfresco.jlan.server.auth.CifsAuthenticator
client
- ClientInfoshare
- SharedDevicesharePwd
- Stringsess
- SrvSessionpublic int authenticateUser(org.alfresco.jlan.server.auth.ClientInfo client, org.alfresco.jlan.server.SrvSession sess, int alg)
authenticateUser
in interface org.alfresco.jlan.server.auth.ICifsAuthenticator
authenticateUser
in class org.alfresco.jlan.server.auth.CifsAuthenticator
client
- ClientInfosess
- SrvSessionalg
- intpublic org.alfresco.jlan.server.auth.AuthContext getAuthContext(org.alfresco.jlan.smb.server.SMBSrvSession sess)
getAuthContext
in class org.alfresco.jlan.server.auth.CifsAuthenticator
public void generateNegotiateResponse(org.alfresco.jlan.smb.server.SMBSrvSession sess, org.alfresco.jlan.smb.server.SMBSrvPacket respPkt, boolean extendedSecurity) throws org.alfresco.jlan.server.auth.AuthenticatorException
generateNegotiateResponse
in interface org.alfresco.jlan.server.auth.ICifsAuthenticator
generateNegotiateResponse
in class org.alfresco.jlan.server.auth.CifsAuthenticator
sess
- SMBSrvSessionrespPkt
- SMBSrvPacketextendedSecurity
- booleanorg.alfresco.jlan.server.auth.AuthenticatorException
public void processSessionSetup(org.alfresco.jlan.smb.server.SMBSrvSession sess, org.alfresco.jlan.smb.server.SMBSrvPacket reqPkt) throws org.alfresco.jlan.smb.server.SMBSrvException
This is the boundary between alfresco and JLAN. So is responsible for logging and ensuring that the exceptions are correct for JLAN.
processSessionSetup
in interface org.alfresco.jlan.server.auth.ICifsAuthenticator
processSessionSetup
in class org.alfresco.jlan.server.auth.CifsAuthenticator
sess
- SMBSrvSessionreqPkt
- SMBSrvPacketorg.alfresco.jlan.smb.server.SMBSrvException
public void processAlfrescoSessionSetup(org.alfresco.jlan.smb.server.SMBSrvSession sess, org.alfresco.jlan.smb.server.SMBSrvPacket reqPkt) throws org.alfresco.jlan.smb.server.SMBSrvException
sess
- SMBSrvSessionreqPkt
- SMBSrvPacketorg.alfresco.jlan.smb.server.SMBSrvException
protected boolean validateAuthenticationMode()
CifsAuthenticatorBase
validateAuthenticationMode
in class CifsAuthenticatorBase
public void initialize(org.alfresco.jlan.server.config.ServerConfiguration config, org.springframework.extensions.config.ConfigElement params) throws org.alfresco.jlan.server.config.InvalidConfigurationException
initialize
in class CifsAuthenticatorBase
config
- ServerConfigurationparams
- ConfigElementorg.alfresco.jlan.server.config.InvalidConfigurationException
public int getServerCapabilities()
getServerCapabilities
in interface org.alfresco.jlan.server.auth.ICifsAuthenticator
getServerCapabilities
in class org.alfresco.jlan.server.auth.CifsAuthenticator
public void closeAuthenticator()
closeAuthenticator
in interface org.alfresco.jlan.server.auth.ICifsAuthenticator
closeAuthenticator
in class org.alfresco.jlan.server.auth.CifsAuthenticator
public void sessionClosed(org.alfresco.jlan.server.SrvSession sess)
sessionClosed
in interface org.alfresco.jlan.server.SessionListener
sess
- SrvSessionpublic void sessionCreated(org.alfresco.jlan.server.SrvSession sess)
sessionCreated
in interface org.alfresco.jlan.server.SessionListener
sess
- SrvSessionpublic void sessionLoggedOn(org.alfresco.jlan.server.SrvSession sess)
sessionLoggedOn
in interface org.alfresco.jlan.server.SessionListener
sess
- SrvSessionCopyright © 2005–2017 Alfresco Software. All rights reserved.