I'm not sure I understand exactly what it is you're trying to do, but if I had to do a workaround (via CGI) I'd do the following:
- create a "permissions" table with usernames and passwords
- accept file uploads via CGI authenticating against that table
- after accepting the upload, connect to the FTP server with your default account
- upload the file via Net::FTP
- disconnect and return the status through CGI
The obvious downside to this, is the time required to do multiple file transfers. First you'd need to upload the file to the webserver and then transfer the same file to the FTP server. This could take a while depending on the size of the file!
Of course, I would also check with the server admin if this is a problem (and I would think it is, or else (s)he would have granted FTP access to your users in the first place). Instead of using FTP, I am currently working on a
Virtual Filesystem with MySQL, so that users can share and store files via HTTPS. As soon as I finish it, I will be posting the code to the
Code Catacombs.
#!/home/bbq/bin/perl
# Trust no1!