我正在尝试将数据从SFTP复制到blob,但是在创建SFTP源时卡住了。
我有详细的连接信息,可以轻松地在Filezilla或WinSCP上进行连接。但是,我无法在Azure数据工厂中使用它。
我不是在使用代码,而是在用户界面上。
创建SFTP源的页面上的连接详细信息: 通过集成运行时连接:AutoResolveIntegrationRuntime(默认)
Host: xyz
Port: 22 (can't remove it as it doesn't like it)
SSH Host Key Validation: Enable SSH Host Key Validation
SSH Host Key Finger-print: taken from WinSCP - Session - Server/protocol information
Authentication type: SSH Public Key Authentication -can't use basic as the private key holds the security info
User name:XXX
Private Key Type: Use Key Content
Private key content: loaded the .ppk file, tried also tried loading the .pem file and got different errors
Pass Phrase: none
在WinSCP或FileZilla中设置此sftp时,它会自动将提供的.pem文件转换为.ppk。 当我将.ppk文件加载到ADF中时,出现错误:为'SshPublicKey'身份验证类型提供了无效的Sftp凭据。 当我加载.pem文件时,得到:连接到Sftp服务器'spiderftp.firstgroup.com',SocketErrorCode:'TimedOut',遇到网络问题。
我还尝试了SSH主机密钥验证中的“禁用SSH主机密钥验证”,并且没有区别。
我还打开了PuttyGen中的.ppk文件,并使用了主机的指纹,但仍然没有运气。
根据我加载的文件,只会出现这两个错误。
在网上找不到有关此内容的任何信息,请多多指教。
答案 0 :(得分:1)
您已经在本文档中阅读了此说明吗?
SFTP连接器支持RSA / DSA OpenSSH密钥。确保您的密钥文件内容以“ ----- BEGIN [RSA / DSA] PRIVATE KEY -----”开头。如果私钥文件是ppk格式的文件,请使用Putty工具将.ppk转换为OpenSSH格式。
答案 1 :(得分:1)
今天可以进行这项工作。像您一样,可以使用WinSCP进行连接,而在使用ADF时失败。
刘芳分享的链接包含了我们的答案,但我的问题不是私钥。我怀疑方的建议解决了您的问题,我在这里分享我的答案,以帮助可能遇到类似问题的其他人。
我的问题: 在ADF中使用私钥身份验证时,密码将成为密码短语,并且您将不再能够提供密码。 为解决此问题,我们为用户禁用了密码身份验证,并且SFTP连接开始工作。
如文档中所述。 密码短语用于解密私密密钥(如果已被加密)。
也值得注意: