Rebex.net отладка аутентификации

#sftp #filezilla #rebex

Вопрос:

В настоящее время я работаю над приложением, которое использует SFTP. Наши пользователи используют клиент FileZilla для загрузки файлов, которые хранятся в хранилище Azure, а затем эти файлы обрабатываются нашим api. В настоящее время мы обнаружили ошибку, когда файл от пользователя A был сохранен в каталоге пользователя B(его там не должно быть). Я хотел бы смоделировать процесс, в котором пользователь проходит аутентификацию через filezilla в моей локальной среде, а затем загружает файлы. Когда я отлаживал код, он всегда доходил до этого пункта ниже, но я не могу войти в код. Я предполагаю, что если я войду в файловую систему и нажму кнопку quickconnect, она автоматически достигнет точки останова, в которой пользователь проходит аутентификацию, но я не смог этого сделать. Как вы отлаживаете это в своей локальной среде. Подумайте об этом как о локальном хосте в веб-разработке, как мне добиться такой же функциональности, я хотел бы просто войти в систему и посмотреть, что находится внутри этого кода.

 server = new FileServer();
 

// Я хочу войти в это и посмотреть, что внутри, как вызвать это событие???

 server.Authentication  = (sender, e) =>
{
    MyDbUser myUser;

    // try authenticating the user against a custom user database
    if (MyUserDatabase.TryAuthenticate(
        e.UserName, e.Password, out myUser))
    {
        // construct a user object
        var user = new FileServerUser(myUser.UserName, null, myUser.VirtualRoot);

        // accept authentication attempt with this user object
        e.Accept(user);
    }
    else
    {
        // reject authentication attempt
        e.Reject();
    }
};
 

Комментарии:

1. Файловый сервер приходит из ссылки на Rebex.Net.Server

Ответ №1:

Итак, чтобы войти в это событие, вам нужно запустить приложение в локальной среде, а при запуске сервера выбрать sftp и целевой порт 22. Затем вы должны разрешить входящее правило брандмауэра для этого порта(не забудьте отключить его, как только вы остановите сеанс отладки). В filezilla вы должны использовать 127.0.0.1 в качестве хоста, а затем просто ввести свое имя пользователя и пароль, которые будут проверены на соответствие вашей пользовательской аутентификации. Таким образом, вы можете запустить его в своей локальной среде. Как только вы нажмете кнопку quickconnect, она попадет в точку останова внутри сервера.Идентификация