SFTP Tasks
Properties Configuration Settings
The SFTP Task adds SSH-secured file transfer capabilities to your SSIS Package.
Remarks
The SFTP Task adds a complete SFTP client to your SSIS Package that enables it with SSH-secured file download and upload functionality.
SFTP Receive Task
The SFTP Receive Task requires that a single property be set: SSHHost. You may also set an SSHPort if the server is not running on the default SSH port. In order to authenticate with the SSH server, you will need to specify an SSHUser, and either SSHPassword or SSHCert depending upon the SSHAuthMode to be used.
The task will connect to the SFTP server every PollingInterval and list the directory specified by RemotePath. All files that match the FileMask will be downloaded and submitted to the SSIS Package as individual messages. In order to guarantee that files are not downloaded multiple times, you may set the DeleteMode.
SFTP Send Task
The SFTP Send Task requires both an SSHHost and a RemoteFile. You may also set an SSHPort if the server is not running on the default SSH port. In order to authenticate with the SSH server, you will need to specify an SSHUser, and either SSHPassword or SSHCert depending upon the SSHAuthMode to be used.
The task will connect to the SFTP server whenever it has a message to send. The task will attempt to upload to the specified RemotePath. In order to prevent parallel processing by another application before your upload is complete, you may need to set a temporary upload directory via RemoteTempPath. If the temporary directory is set, the file will first be uploaded to the specified temporary directory, and will be moved to the final destination path once the upload has completed. If Overwrite is set to True, the task will delete or overwrite remote files as necessary to complete the operation.
Receiver Property List
The following is the full list of the properties of the receiver task with short descriptions. Click on the links for further details.
AfterConnect | A set of FTP-style commands to be executed immediately after connecting to the SSHHost . |
AfterGet | A set of FTP-style commands to be executed after the download. |
BeforeGet | A set of FTP-style commands to be executed before the download. |
Delete | Controls if the remote file is deleted after download. |
DirList | String denoting the name of the variable which contains the last directory listing entries. |
FileMask | Indicates the type of files to download from the SSH server. |
Firewall | A set of properties related to firewall access. |
LocalDirectory | The directory on the local machine where files are downloaded. |
LogFile | The file to write logging information to at runtime. |
LogMode | What information gets logged during task execution. |
Operation | The operation which will be executed by the FTP task. |
Other | Defines a set of configuration settings to be used by the task. |
Overwrite | Whether or not the task should overwrite files during transfer. |
PersistentConnection | Instructs the task whether to keep the connection to the server open. |
RemotePath | The current path on the SSH server. |
RuntimeLicense | Specifies the task runtime license key. |
SSHAcceptServerHostKey | Instructs the task to accept the server host key that matches the supplied key. |
SSHAcceptServerHostKeyAcceptAny | Tells the task to accept any server certificate. |
SSHAuthMode | The type of authentication used by the task. |
SSHCert | The certificate to use for client authentication during the SSH handshake. |
SSHCompressionAlgorithms | A comma-separated list of compression algorithms allowed for this connection. |
SSHHost | The address of the SSH host. |
SSHPassword | The password for SSH password-based authentication. |
SSHPort | The port on the SSH server where the SSH service is running; by default, 22. |
SSHUser | The username for SSH authentication. |
Timeout | A timeout for the task. |
Sender Property List
The following is the full list of the properties of the sender task with short descriptions. Click on the links for further details.
AfterConnect | A set of FTP-style commands to be executed immediately after connecting to the SSHHost . |
AfterPut | A set of FTP-style commands to be executed after the upload. |
Append | Whether or not the task should append data to the RemoteFile . |
BeforePut | A set of FTP-style commands to be executed before the upload. |
Firewall | A set of properties related to firewall access. |
LocalFile | The path to a local file for upload. |
LogFile | The file to write logging information to at runtime. |
LogMode | What information gets logged during task execution. |
Other | Defines a set of configuration settings to be used by the task. |
Overwrite | Whether or not the task should overwrite files during transfer. |
PersistentConnection | Instructs the task whether to keep the connection to the server open. |
RemoteFile | The name of the destination file on the SSH server for uploading. |
RemotePath | The current path on the SSH server. |
RemoteTempPath | A temporary directory on the server to store files before moving them to RemotePath . |
RuntimeLicense | Specifies the task runtime license key. |
SSHAcceptServerHostKey | Instructs the task to accept the server host key that matches the supplied key. |
SSHAcceptServerHostKeyAcceptAny | Tells the task to accept any server certificate. |
SSHAuthMode | The type of authentication used by the task. |
SSHCert | The certificate to use for client authentication during the SSH handshake. |
SSHCompressionAlgorithms | A comma-separated list of compression algorithms allowed for this connection. |
SSHHost | The address of the SSH host. |
SSHPassword | The password for SSH password-based authentication. |
SSHPort | The port on the SSH server where the SSH service is running; by default, 22. |
SSHUser | The username for SSH authentication. |
Timeout | A timeout for the task. |
Configuration Settings
The following is a list of configuration settings for the task with short descriptions. Click on the links for further details.
DisableRealPath | Controls whether or not the SSH_FXP_REALPATH request is sent. |
DownloadCacheFile | When set, only new files will be downloaded from the server. |
DownloadCacheFileDuration | The number of minutes that a file name will remain in the download cache. |
EnableFileDetailsComparison | Whether the receive task should consider metadata differences when deciding whether to download a file again. |
FileMaskDelimiter | Specifies a delimiter to use for setting multiple file masks. |
IgnoreFileMaskCasing | Instructs the task to ignore casing of when FileMask is set. |
LocalFile | The name of the LocalFile to which the remote file will be saved. |
Logoff | Whether or not to logoff from the server after execution. |
FilePermissions | Specifies the permissions of a file to be set after a successful upload. |
MaxFileData | Specifies the maximum payload size of an SFTP packet. |
MaxFilesPerPollingInterval | The maximum number of files that will be downloaded from the server during a single poll. |
RecursiveDownload | When true, all files and folders in the RemotePath are downloaded recursively. |
RecursiveUpload | When true, all files and folders in the folder specified in LocalFile are uploaded recursively. |
ProtocolVersion | The highest allowable SFTP version to use. |
ListDirBeforeDownload | Determines if the directory is listed on download. |
LocalEOL | When TransferMode is set, this specifies the line ending for the local system. |
PreserveFileTime | Preserves the file's timestamps during transfer. |
ServerEOL | When TransferMode is set, this specifies the line ending for the remote system. |
SSHFingerprintHashAlgorithm | The algorithm used to calculate the fingerprint. |
TransferMode | The transfer mode (ASCII or Binary). |
RenameTo | A filename to which RemoteFile will be renamed. |
RenameMode | The condition under which RenameTo is used. |
TemporaryDownloadExtension | An extension to be appended during download. |
TemporaryUploadExtension | An extension to be appended during upload. |
KeyRenegotiationThreshold | Sets the threshold for the SSH Key Renegotiation. |
LogSSHPackets | If True, detailed SSH packet logging is performed. |
SSHAcceptServerHostKeyFingerPrint | Instructs the task to accept the server's host key with this fingerprint. |
SSHEncryptionAlgorithms | A comma-separated list containing all allowable compression algorithms. |
SSHKeyExchangeAlgorithms | Specifies the supported key exchange algorithms. |
SSHMacAlgorithms | Specifies the supported Mac algorithms. |
SSHPublicKeyAlgorithms | Specifies the supported public key algorithms. |
SSHPubKeyAuthSigAlgorithms | Specifies the signature algorithm when attempting public key authentication. |
AbsoluteTimeout | Determines whether timeouts are inactivity timeouts or absolute timeouts. |
LocalHost | The name of the local host or user-assigned IP interface through which connections are initiated or accepted. |
TcpNoDelay | Whether or not to delay when sending packets. |
UseInternalSecurityAPI | Tells the task whether or not to use the system security libraries or an internal implementation. |
PersistedConnectionTimeout | How long to leave a persisted connection alive. |