【问题标题】:Is it possible to change a users SFTP password (renci.sshnet)是否可以更改用户 SFTP 密码(renci.sshnet)
【发布时间】:2017-01-29 17:09:42
【问题描述】:

有谁知道是否可以使用 SSH.NET 库 (Renci.SshNet) 以编程方式更改 SFTP 站点上的用户密码?无论哪种方式,我都无法找到任何确定的东西。

如果是,我将不胜感激您能提供的任何指针。

【问题讨论】:

标签: c# sftp change-password ssh.net


【解决方案1】:

没有。虽然 SSH 协议中有一个 API 可以根据请求更改密码,但 SSH.NET 库并未实现​​显式请求。

在 SSH.NET 库中,您只能在服务器要求时更改密码。通常,当先前的密码已过期时,服务器会要求更改密码。在 SSH.NET 库中,这个服务器请求被实现为 PasswordExpired 事件。


如果你愿意修改 SSH.NET 库,请参阅PasswordAuthenticationMethod.Session_UserAuthenticationPasswordChangeRequiredReceived 方法。它发送密码更改请求,如下所示:

_session.SendMessage(
    new RequestMessagePassword(
        ServiceName.Connection, Username, _password, eventArgs.NewPassword))

如果您实现自己的AuthenticationMethod,在Authenticate 方法的实现中直接使用eventArgs.NewPassword 发送RequestMessagePassword,它应该可以满足您的需求。

【讨论】:

    猜你喜欢
    • 2011-06-26
    • 1970-01-01
    • 2015-10-26
    • 2011-08-14
    • 2022-11-29
    • 2019-01-14
    • 2012-05-15
    • 1970-01-01
    • 2011-10-01
    相关资源
    最近更新 更多