SSH.NET Аутентификация только через закрытый ключ (аутентификация с открытым ключом)

Попытка аутентификации через имя пользователя и приватный ключ только с использованием текущей библиотеки SSH.NET. Я не могу получить пароль от пользователя, так что об этом не может быть и речи.

вот что я делаю сейчас

Renci.SshNet.ConnectionInfo conn = 
    new ConnectionInfo(hostName, port, username, new AuthenticationMethod[]
        {
            new PasswordAuthenticationMethod(username, ""), 
            new PrivateKeyAuthenticationMethod(username, new PrivateKeyFile[] 
                   { new PrivateKeyFile(privateKeyLocation, "") }),
        });

using (var sshClient = new SshClient(conn))
{
    sshClient.Connect();
} 

Теперь, если я удалюPasswordAuthenticationMethod отAuthenticationMethod[] массив Я получаю исключение для не найдено подходящего метода аутентификации. Если я пытаюсь передать (имя хоста, порт, имя пользователя, keyfile2) как таковой

var keyFile = new PrivateKeyFile(privateKeyLocation);
var keyFile2 = new[] {keyFile};

опять же, подходящий метод не найден.

Кажется, я должен использоватьConnectionInfo объект, как я изложил выше, но, похоже, он оцениваетPasswordAuthenticationMethod и не могу войти (так как я не предоставляю пароль) и никогда не оцениваетPrivateKeyAuthMethod... это так? Есть ли какой-либо другой способ аутентификации с использованием только имени пользователя или имени хоста и личного ключа с использованием SSH.NET lib?

Ответы на вопрос(3)

Ваш ответ на вопрос