0

apacheftpサーバーを使用してftpサーバーをセットアップしようとしています http://mina.apache.org/ftpserver/

ファイルベースの管理を使用したいのですが、ログインできるユーザーは1人だけです。最初に、私はこの方法でファイルを作成します:

String username = "ftp";
String password = "ftp";
String ftproot = "data";        

// prepares the user manager
PropertiesUserManagerFactory userManagerFactory = new PropertiesUserManagerFactory();
userManagerFactory.setFile(new File(propFile));
userManagerFactory.setPasswordEncryptor(new SaltedPasswordEncryptor());
UserManager um = userManagerFactory.createUserManager();
// set up my user
BaseUser user = new BaseUser();
user.setName(username);
user.setPassword(password);
user.setHomeDirectory(ftproot);
List<Authority> authorities = new ArrayList<Authority>();
authorities.add(new WritePermission());        
user.setAuthorities(authorities);

um.save(user);
// adds the user
serverFactory.setUserManager(um);

ファイルは問題ないようです。起動するたびにこれらの手順を実行すると、ftpサーバーは正常に機能します。

このファイルを一度設定してから、プロパティファイルをロードするだけで、ユーザー/パスワードをコードから削除できるようにしたいと思います。

しばらく試してみましたが、この方法で実行することはできません。

どんな助けでも大歓迎です。よろしくお願いします!

4

1 に答える 1

0

さて、もう一度「テディベアに教えて」という方法はうまくいきました。

投稿してから2分後に解決策が見つかりました。

すべての構成ダンスを実行する代わりに、ユーザーマネージャーを設定するだけです。

userManagerFactory.setFile(new File(propFile));
userManagerFactory.setPasswordEncryptor(new SaltedPasswordEncryptor());
UserManager um = userManagerFactory.createUserManager();
serverFactory.setUserManager(um);

これが私の全体のロードconfigメソッドです。

これが誰かを助けることを願っています。

:Sですが、apacheftpサーバーにはもう少しドキュメントが必要だと思います。

于 2012-04-27T08:52:47.463 に答える