You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为WinSCP PowerShell会话配置添加私钥(基于官网示例)

为WinSCP PowerShell代码添加私钥配置

实现方法

要添加私钥认证,需修改SessionOptions的属性配置:移除原有的Password字段(私钥认证无需密码),添加私钥文件路径;若你的私钥设置了保护密码,还需补充私钥密码项。

配置代码位置

私钥相关配置直接放在$sessionOptions的属性哈希表中,与HostName、UserName等配置同级即可。

修改后的完整代码

# Setup session options
$sessionOptions = New-Object WinSCP.SessionOptions -Property @{
    Protocol = [WinSCP.Protocol]::Sftp
    HostName = "example.com"
    UserName = "user"
    # 移除原Password项,添加私钥文件路径
    SshPrivateKeyPath = "C:\path\to\your\privatekey.ppk" # 替换为你的私钥实际路径
    # 如果私钥有保护密码,取消下面一行注释并填写对应密码
    # SshPrivateKeyPassphrase = "your_private_key_passphrase"
    SshHostKeyFingerprint = "ssh-rsa 2048 xxxxxxxxxxx..."
}
 
$session = New-Object WinSCP.Session
 
# Connect
$session.Open($sessionOptions)

注意事项

  • 私钥文件建议使用WinSCP生成的.ppk格式,若为OpenSSH格式私钥,需先转换为PPK格式后再使用。
  • 确保运行脚本的账号拥有私钥文件的读取权限,避免因权限不足导致认证失败。

内容的提问来源于stack exchange,提问作者ecuso

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 04:50:01