Database user managerYou can store user user information in a database. JDBC is used to access the database. This user manager has been tested using MySQL Database JDBC librariesYou must include the required JAR files for your database in the classpath of FtpServer. Typically you would do this by placing the JAR files in <INSTALL_DIR>/common/lib. Example<db-user-manager>
<data-source>
<beans:bean class="some.datasoure.class" />
</data-source>
<insert-user>INSERT INTO FTP_USER (uid, userpassword,
homedirectory, enableflag, writepermission, idletime, uploadrate,
downloadrate) VALUES ('{uid}', '{userpassword}', '{homedirectory}',
'{enableflag}', '{writepermission}', {idletime}, {uploadrate},
{downloadrate})</insert-user>
<update-user>UPDATE FTP_USER SET
userpassword='{userpassword}',homedirectory='{homedirectory}',enableflag='{enableflag}',writepermission='{writepermission}',idletime={idletime},uploadrate={uploadrate},downloadrate={downloadrate}
WHERE uid='{uid}'</update-user>
<delete-user>DELETE FROM FTP_USER WHERE uid = '{uid}'
</delete-user>
<select-user>SELECT uid, userpassword, homedirectory,
enableflag, writepermission, idletime, uploadrate, downloadrate FROM
FTP_USER WHERE uid = '{uid}'</select-user>
<select-all-users>SELECT uid FROM FTP_USER ORDER BY uid
</select-all-users>
<is-admin>SELECT uid FROM FTP_USER WHERE uid='{uid}' AND
uid='admin'</is-admin>
<authenticate>SELECT uid from FTP_USER WHERE uid='{uid}' AND
userpassword='{userpassword}'</authenticate>
</db-user-manager>
Configuration Parametersdb-user-manager element
Data source configurationThe data source must be configured as described by the database provider. You can also use the general purpose BasicDataSource Example using the BasicDataSource to connect to MySQL<data-source> <beans:bean class="org.apache.commons.dbcp.BasicDataSource"> <beans:property name="driverClassName" value="com.mysql.jdbc.Driver" /> <beans:property name="url" value="jdbc:mysql://localhost/ftpd" /> <beans:property name="username" value="myuser" /> <beans:property name="password" value="secret" /> </beans:bean> </data-source> FTP_USER Table Structure
|