This is an old revision of the document!

Documentation » Using WinSCP » Guides » Scripting/Automation »

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 abort
option confirm off
open mysession -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 mysession argument to open command with specification of SFTP connection in form sftp://username:password@hostname or use name of stored session.
  • Replace hostkey fingerprint after hostkey switch of open open 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 executable (by default C:\Program Files\WinSCP\WinSCP.exe) into Executable;
  • In Arguments specify “/script=<pathtoyourscript>”;
  • You may want to set WorkingDirectory to path, where you want to download files to/upload files from, if you do not use absolute paths in your script.

Further Reading

Other References

Advertisement

  1. SFTP is also incorrectly known as Secure FTP.Back
  2. Note that depending on encryption method, the hostkey may have different format than shown in the exampleBack

Last modified: by martin