This is an old revision of the document!
SFTP Task for SSIS
This guide contains description of creating SFTP file transfer task for SSIS using WinSCP1.
WinSCP offers scripting interface that you can use to automate file transfers to/from SFTP server.
Before starting you should:
Advertisement
Script file
Start by creating WinSCP script file to transfer your files.
Below you can see basic script example for downloading file from SFTP server. For details see guide to automation or detailed documentation of scripting functionality.
option batch on option confirm off open yoursession -hostkey="ssh-rsa 1024 xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx" get /remotepath/data.dat c:\localpath\ exit
In the script you need at least to:
- Replace
yoursession
argument toopen
command with specification of SFTP connection in formsftp://username@password:hostname
or use name of stored session. - Replace hostkey fingerprint after
hostkey
switch of openopen
command with actual fingerprint of your SFTP/SSH server hostkey;2 - Replace paths after
get
command with actual paths to remote file to download from and local directory to download to.
Advertisement
Save the script into file accessible from SSIS.
SSIS task
In SSIS, add new Execute Process task to control flow of your package. In the Execute Process Task Editor:
- Put path to WinSCP console interface tool (by default
C:\Program Files\WinSCP\WinSCP.com
) into Executable; - In Arguments specify “
/script=<pathtoyourscript>
”.
Further Reading
- FAQ about SFTP task hanging when run from SSIS;
- Scripting documentation;
- Command-line parameters;
- Guide to scripting;
- FAQs about scripting;
- Troubleshooting.