Как улучшить или удалить жесткий код sftp пароль верблюд код - PullRequest
0 голосов
/ 24 ноября 2018

У меня есть следующий код: -

    public class FtpRouteBuilder extends RouteBuilder {
        @Override
        public void configure() throws Exception {
            try{
                from("file:c:/temp/input/")
                        .streamCaching()
                        .to("sftp://sftpuser@192.168.10.54:/sftpuser/?password=dev&passiveMode=true");
            }catch (Exception ex){
                System.out.printf("ex: "+ex.getMessage());
            }
        }
    }

Там у меня есть sftp пароль "dev" в коде.Это безобразноКак я могу удалить его и установить его лучше?

1 Ответ

0 голосов
/ 25 ноября 2018
  1. Ознакомьтесь с документацией вашего сервера sftp, чтобы узнать, как настроить доступ с использованием ключей SSH.Вам нужно будет сгенерировать пару ключей, если у вас ее еще нет (например, с помощью ssh-keygen), а затем поместить открытый ключ на сервер sftp.Не используйте парольную фразу.Если вы сделаете это, вам нужно будет добавить это к верблюжьему маршруту, чтобы он выглядел так же безобразно.

  2. Убедитесь, что вы можете сделать перевод с помощью FTP-клиента, используя свой закрытый ключ,т. е. проверьте ключи, прежде чем пытаться использовать их с верблюдом.

  3. Измените маршрут, чтобы использовать закрытый ключ

    from("file:c:/temp/input/")
        .streamCaching()
        .to("sftp://sftpuser@192.168.10.54:/sftpuser/?privateKeyFile=path-to-private-key-file&passiveMode=true");
    
...