SFTP Task (SSIS Control Flow Custom Component)
As the name says it, this custom "Control Flow" component can be used to send/receive files via a SFTP Connection.
- System requirements:
- Microsoft SQL Server 2012 - for SSIS development
- Microsoft Visual Studio 2012/2013 - for component development
Please take a look at the
documentation page to see how you can use it.
Some very important remarks: this component is based on the
SharpSSH (ver. 126.96.36.199) library developed by
As he specify on the home page of his library, the actual SFTP component that I made, may be summarized as follows:
- SharpSSH is pure .NET, but it depends on
Mentalis.org Crypto Library for encryption and integrity functions.
- SSH2 protocol support
- SSH File Transfer Protocol (SFTP)
- Secure Copy (SCP)
- Key exchange: diffie-hellman-group-exchange-sha1, diffie-hellman-group1-sha1
- Cipher: 3des-cbc, aes128-cbc
- MAC: hmac-md5
- Host key type: ssh-rsa, ssh-dss
- Userauth: password, private key (RSA, DSA) - only OpenSSH version is supported
- Port Forwarding
- Stream Forwarding
- Remote Exec
- Generating DSA and RSA key pairs
- Changing the passphrase for a private key
So here we are. I've done minimal cleanup, and the code isn't perfect (and there are few comments) but I could not find anything similar online
for free and I thought the best thing to do would be to share the code today instead of waiting to polish it before sharing it.
The initial public release is online so everyone should be able to download the code to use (and tweak) on their own.
Note: I'd really appreciate any feedback on whether you think the project isn't feasible, whether you'd like to use it if it were more mature, and that sort of thing. Leave comments or email me at