Соединение SFTP через Java с запросом странной аутентификации

Итак, я пишу небольшую программу, которой необходимо подключиться к удаленному серверу через SFTP, извлечь файл и затем обработать файл. Я наткнулся на JSch через некоторые ответы здесь, и это выглядело идеально для этой задачи. Пока все просто в использовании, и у меня все работает, но я хотел бы исправить одну незначительную вещь. Я использую следующий код для подключения и извлечения файла:

    JSch jsch = new JSch();
    Session session = null;
    try {
        session = jsch.getSession("username", "127.0.0.1", 22);
        session.setConfig("StrictHostKeyChecking", "no");
        session.setPassword("password");
        session.connect();

        Channel channel = session.openChannel("sftp");
        channel.connect();
        ChannelSftp sftpChannel = (ChannelSftp) channel;
        sftpChannel.cd(REMOTE_FTP_DIR);
        sftpChannel.lcd(INCOMING_DIR);
        sftpChannel.get(TMP_FILE, TMP_FILE);
        sftpChannel.exit();
        session.disconnect();
    } catch (JSchException e) {
        e.printStackTrace();
    } catch (SftpException e) {
        e.printStackTrace();
    }

Итак, это работает, и я получаю файл. Я запускаю этот код на сервере Linux, и когда я запускаю код, JSch запрашивает у меня имя пользователя и пароль Kerberos. Это выглядит так:

Имя пользователя Kerberos [george]:

Пароль Kerberos для george:

Я просто нажимаю Enter для обоих вопросов, и затем программа продолжает работать без проблем. Однако мне нужно, чтобы этот код был автоматизирован с помощью задачи cron, и поэтому я бы не хотел, чтобы он приостанавливал программу, чтобы задать мне эти два вопроса. Есть ли что-то, что я не поставляю, чтобы он не спрашивал об этом? Что-то, что мне нужно сделать, чтобы он перестал спрашивать? Надеюсь, у кого-то есть идеи. Спасибо.

42
задан cardician 4 June 2012 в 13:14
поделиться