In the latest release of BulletProof FTP Server, we’ve added the ability to import users via the “Bulk Import (CSV)” button, located in the User Manager. A CSV-File is a flat-text-file that contains a list of records (one per row) with a defined set of field-values for that record. This is analogous to a spreadsheet, such as Microsoft Excel and is often used as a method of getting data in/out of a spreadsheet.
To this end, we’ve developed a function that allows you to IMPORT user-accounts from another source, using a CSV file. Below is a list of fields that are supported for import. In this list, the first record you see is “ACCOUNTNAME”, this is a MANDATORY record as it is the unique-primary-key for the data. If ACCOUNTNAME exists, the data will be updated. If not, a new user-account will be created and all of the data will be set to the provided information. All other fields are optional, but each row in the CSV-file must contain the same fields as defined in the first header-record.
NOTE: Executing this functionality can be automated from the command-line utility “bpftpserver-adduser.exe”. Please see this HOWTO for more information.
EXAMPLE:
In the following example, we are defining a CSV file to import 11 new user-accounts (mmc000 to mmc010). Below you will find the first row contains the list of columns each row/record will contain; subsequent rows contain the data for the accounts. Please note, this is generic data and in this case, I choose to make a simple list of account-names that are prefixed with “mmc” and then use a 3-digit number. The intention is to show the power and flexibility; as each user-account can be assigned their own home-directory (c:\ftp\mmc999), groups, login-name, passwords, etc.
"AccountName","ACCESSRIGHTS_PACKED","Enabled","EnableLogin","Login","EnablePass","Pass","GroupName"
"mmc000","C:\ftp\mmc000;RWDAMLSK","1","1","mmc000","1","mmc000","mmc-group-0"
"mmc001","C:\ftp\mmc001;RWDAMLSK","1","1","mmc001","1","mmc001","mmc-group-0"
"mmc002","C:\ftp\mmc002;RWDAMLSK","1","1","mmc002","1","mmc002","mmc-group-0"
"mmc003","C:\ftp\mmc003;RWDAMLSK","1","1","mmc003","1","mmc003","mmc-group-0"
"mmc004","C:\ftp\mmc004;RWDAMLSK","1","1","mmc004","1","mmc004","mmc-group-0"
"mmc005","C:\ftp\mmc005;RWDAMLSK","1","1","mmc005","1","mmc005","mmc-group-0"
"mmc006","C:\ftp\mmc006;RWDAMLSK","1","1","mmc006","1","mmc006","mmc-group-0"
"mmc007","C:\ftp\mmc007;RWDAMLSK","1","1","mmc007","1","mmc007","mmc-group-0"
"mmc008","C:\ftp\mmc008;RWDAMLSK","1","1","mmc008","1","mmc008","mmc-group-0"
"mmc009","C:\ftp\mmc009;RWDAMLSK","1","1","mmc009","1","mmc009","mmc-group-0"
"mmc010","C:\ftp\mmc010;RWDAMLSK","1","1","mmc010","1","mmc010","mmc-group-0"
SUPPORTED FIELDS AVAILABLE TO BULK-IMPORT
Commonly Used Fields
FIELD_NAME |
FIELD_TYPE |
DEFAULT |
MANDATORY |
ACCOUNTNAME |
STRING |
“” |
TRUE |
AccessRights_Packed |
STRING |
“” |
|
Enabled |
BOOLEAN |
True |
|
EnableLogin |
BOOLEAN |
True |
|
Login |
STRING |
“” |
|
EnablePass |
BOOLEAN |
True |
|
Pass |
STRING |
“” |
|
EnableGroup |
BOOLEAN |
False |
|
GroupName |
STRING |
“” |
|
UseGroupHomeDir |
BOOLEAN |
False |
|
Lesser Lesser Used Fields
FIELD_NAME |
FIELD_TYPE |
DEFAULT |
MANDATORY |
AddHomeLink |
BOOLEAN |
False |
|
AddLinkFromFile |
BOOLEAN |
False |
|
AddLinks |
BOOLEAN |
False |
|
AllowChangePassword |
BOOLEAN |
False |
|
AllowNoop |
BOOLEAN |
True |
|
BannedFiles_PACKED |
STRING |
“” |
|
By-Pass_MaxUser |
BOOLEAN |
False |
|
ChgDirMsgFile |
STRING |
“” |
|
DefaultGroupQuotaCredit |
INTEGER |
-1 |
|
DefaultGroupRatioCredit |
INTEGER |
-1 |
|
EnableMaxConPerIP |
BOOLEAN |
False |
|
EnableMaxUsers |
BOOLEAN |
False |
|
EnableSITECHAT |
BOOLEAN |
False |
|
EnableSITEWHO |
BOOLEAN |
False |
|
Hide hidden Files |
BOOLEAN |
False |
|
Home-IP |
STRING |
“” |
|
IPACLList_PACKED |
STRING |
“” |
|
Info_Address |
STRING |
“” |
|
Info_City |
STRING |
“” |
|
Info_Email |
STRING |
“” |
|
Info_Fax |
STRING |
“” |
|
Info_Name |
STRING |
“” |
|
Info_Notes |
STRING |
“” |
|
Info_PhoneHome |
STRING |
“” |
|
Info_PhoneWork |
STRING |
“” |
|
LinksFile |
STRING |
“” |
|
LoginMsgFile |
STRING |
“” |
|
MaxConPerIP |
INTEGER |
1 |
|
MaxSpeedEnabled |
BOOLEAN |
False |
|
MaxSpeedRcv |
INTEGER |
512 |
|
MaxSpeedSnd |
INTEGER |
512 |
|
MaxUsers |
INTEGER |
0 |
|
QuotaCurrent |
INTEGER |
0 |
|
QuotaEnabled |
BOOLEAN |
False |
|
QuotaMax |
INTEGER |
0 |
|
RatioCredit |
INTEGER |
0 |
|
RatioDown |
INTEGER |
1 |
|
RatioEnabled |
BOOLEAN |
False |
|
RatioMethod |
INTEGER |
0 |
|
RatioUp |
INTEGER |
1 |
|
RelativePath |
BOOLEAN |
False |
|
ResolveLNK |
BOOLEAN |
True |
|
ShowChangeDirMsg |
BOOLEAN |
False |
|
ShowLoginMsg |
BOOLEAN |
False |
|
TimeOutEnabled |
BOOLEAN |
True |
|
Timeout |
INTEGER |
600 |
|
TreatLinksAs |
BOOLEAN |
True |
|