Click here to Skip to main content
Licence CPOL
First Posted 19 Feb 2008
Views 45,604
Bookmarked 22 times

SFTP with SSIS Packages

By | 19 Feb 2008 | Article
An easy approach to access SFTP sites from SSIS packages.
 
Part of The SQL Zone sponsored by
See Also

Introduction

By default, SQL Server Integration Services (SSIS) do not support access to SFTP sites. One way of getting it done is by using third party software, which might be expensive. If you have simpler needs, then this article is for you. It's a kind of workaround, but it works.

Background

I had this situation in my project where I should update my SSIS package to retrieve files from an SFTP site rather than the regular FTP. The problem starts here, SSIS does not support the SFTP protocol by default. I did a lot of search on the internet and with all my friends. What I could figure out was that the only method is to use third party extensions (which are definitely pricey). My requirement was very simple, and only needed to download files, for which it was not feasible to purchase a third party software. After lots of research, I would do it with a work-around. I thought my experience would be useful to someone else.

Using the Code

There's a free tool called WinSCP which provides a command line utility to communicate with SFTP sites. You just need to understand the scripting language for the command line and execute the executable from SSIS.

What you need to do

  1. Install the WinSCP client utility from http://winscp.net/eng/download.php
  2. The command line utility is located at C:\Program Files\WinSCP\WinSCP.Com.
  3. Create a script file (say myscript.txt). The following sample might give you some idea:
  4. option batch on
    option confirm off
    open sftp://user:password@ipaddress:port
    cd mydir
    option transfer binary
    get *.dat c:\mylocaldir
    # Move the contents on remove folder
    mv *.dat ./backup/*
    close
    exit
  5. Invoke the WinSCP.com executable from SSIS (or a scheduled task in Windows) with the following syntax:
  6. "C:\Program Files\WinSCP\WinSCP.com" -script=c:\myscript.txt

Summary

If you have a problem statement wherein you need to perform simpler tasks from SFTP web sites viz. retrieving or uploading files, and do not wish to spend much time and money, then you can go with this workaround. If you face any issues, please email me at prashant.baker@yahoo.com. You can also find some documentation/samples on the WinSCP web site.

You can find this article at my blog - http://prashantbaker.blogspot.com/search/label/SSIS.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

About the Author

Clement Prashant Baker

Architect
Pixel Systems Inc.
United States United States

Member

Prashant has around 8 years of experience in the IT industry. As an solutions architect (in India) he has designed/implemented couple of prestigious banking products, which now are being implented across the country. Since couple of years, he has been focussing on designing/implementing EAI/B2B applications using BizTalk Server. He is currently residing in New Jersey, USA.

Sign Up to vote   Poor Excellent
Add a reason or comment to your vote: x
Votes of 3 or less require a comment

Comments and Discussions

 
You must Sign In to use this message board. (secure sign-in)
 
Search this forum  
 FAQ
    Noise  Layout  Per page   
  Refresh
AnswerExcellent PinmemberJerseyNo105:20 21 Nov '11  
GeneralMy vote of 5 PinmemberRussBell9:35 31 Jan '11  
GeneralGuide to using WinSCP as task in SSIS Pinmemberprikryl21:22 1 Apr '09  
QuestionConnecting WinSCP with SSIS Pinmemberavik106:36 24 Oct '08  
Hi,
I am new to ssis.
not able to use sftp via winScp through ssis.
Please elaborate.
 
Aka

AnswerRe: Connecting WinSCP with SSIS PinmemberEugene Mayeski21:20 19 Dec '08  

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

Permalink | Advertise | Privacy | Mobile
Web04 | 2.5.120529.1 | Last Updated 19 Feb 2008
Article Copyright 2008 by Clement Prashant Baker
Everything else Copyright © CodeProject, 1999-2012
Terms of Use
Layout: fixed | fluid