org.apache.ftpserver.usermanager
Class LdapUserManager

java.lang.Object
  extended by org.apache.ftpserver.usermanager.AbstractUserManager
      extended by org.apache.ftpserver.usermanager.LdapUserManager
All Implemented Interfaces:
UserManager

public class LdapUserManager
extends AbstractUserManager

Ldap based user manager class where the object class is ftpusers. This has been tested with OpenLDAP. The BaseUser object will be serialized in LDAP. Here the assumption is that the java object schema is available (RFC 2713).


Field Summary
 
Fields inherited from class org.apache.ftpserver.usermanager.AbstractUserManager
ATTR_ENABLE, ATTR_HOME, ATTR_LOGIN, ATTR_MAX_DOWNLOAD_RATE, ATTR_MAX_IDLE_TIME, ATTR_MAX_LOGIN_NUMBER, ATTR_MAX_LOGIN_PER_IP, ATTR_MAX_UPLOAD_RATE, ATTR_PASSWORD, ATTR_WRITE_PERM
 
Constructor Summary
LdapUserManager()
           
 
Method Summary
 User authenticate(Authentication authentication)
          User authentication.
 void configure()
          Instantiate LDAP based UserManager implementation.
 void delete(java.lang.String userName)
          Delete user.
 void dispose()
          Close user manager.
 boolean doesExist(java.lang.String name)
          User existance check.
 java.lang.String getAdminName()
          Get the admin name.
 java.lang.String[] getAllUserNames()
          Get all user names.
 java.lang.String getLdapAdminDn()
           
 java.lang.String getLdapAdminPassword()
           
 java.lang.String getLdapAuthentication()
           
 java.lang.String getLdapUrl()
           
 java.lang.String getLdapUserBaseDn()
           
 User getUserByName(java.lang.String name)
          Get user object.
 boolean isAdmin(java.lang.String login)
           
 void save(User user)
          Save user.
 void setAdminName(java.lang.String adminName)
          Set the name to use as the administrator of the server.
 void setLdapAdminDn(java.lang.String ldapAdminDn)
           
 void setLdapAdminPassword(java.lang.String ldapAdminPassword)
           
 void setLdapAuthentication(java.lang.String ldapAuthentication)
           
 void setLdapUrl(java.lang.String ldapUrl)
           
 void setLdapUserBaseDn(java.lang.String ldapUserBaseDn)
           
 
Methods inherited from class org.apache.ftpserver.usermanager.AbstractUserManager
setAdmin
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LdapUserManager

public LdapUserManager()
Method Detail

configure

public void configure()
               throws FtpException
Instantiate LDAP based UserManager implementation.

Throws:
FtpException

getAdminName

public java.lang.String getAdminName()
Get the admin name.

Specified by:
getAdminName in interface UserManager
Overrides:
getAdminName in class AbstractUserManager

isAdmin

public boolean isAdmin(java.lang.String login)
                throws FtpException
Specified by:
isAdmin in interface UserManager
Overrides:
isAdmin in class AbstractUserManager
Returns:
true if user with this login is administrator
Throws:
FtpException

getAllUserNames

public java.lang.String[] getAllUserNames()
                                   throws FtpException
Get all user names.

Throws:
FtpException

getUserByName

public User getUserByName(java.lang.String name)
                   throws FtpException
Get user object.

Throws:
FtpException

authenticate

public User authenticate(Authentication authentication)
                  throws AuthenticationFailedException
User authentication.

Throws:
AuthenticationFailedException

save

public void save(User user)
          throws FtpException
Save user.

Throws:
FtpException

doesExist

public boolean doesExist(java.lang.String name)
                  throws FtpException
User existance check.

Throws:
FtpException

delete

public void delete(java.lang.String userName)
            throws FtpException
Delete user.

Throws:
FtpException

dispose

public void dispose()
Close user manager.


getLdapUrl

public java.lang.String getLdapUrl()

setLdapUrl

public void setLdapUrl(java.lang.String ldapUrl)

getLdapAdminDn

public java.lang.String getLdapAdminDn()

setLdapAdminDn

public void setLdapAdminDn(java.lang.String ldapAdminDn)

getLdapAdminPassword

public java.lang.String getLdapAdminPassword()

setLdapAdminPassword

public void setLdapAdminPassword(java.lang.String ldapAdminPassword)

getLdapAuthentication

public java.lang.String getLdapAuthentication()

setLdapAuthentication

public void setLdapAuthentication(java.lang.String ldapAuthentication)

setAdminName

public void setAdminName(java.lang.String adminName)
Description copied from class: AbstractUserManager
Set the name to use as the administrator of the server. The default value is "admin".

Overrides:
setAdminName in class AbstractUserManager
Parameters:
adminName - The administrator user name

getLdapUserBaseDn

public java.lang.String getLdapUserBaseDn()

setLdapUserBaseDn

public void setLdapUserBaseDn(java.lang.String ldapUserBaseDn)


Copyright © 2003-2008 The Apache Software Foundation. All Rights Reserved.