FTP Tasks
Properties Configuration Settings
The FTP Task adds SSL-enabled FTP send and receive capabilities to your SSIS Package.
Remarks
The FTP Task adds a complete FTP client to your SSIS Package that enables it with plaintext or SSL-secured file download and upload capability.
FTP Receive Task
The FTP Receive Task requires that a single property be set: FTPServer. You may also set an FTPPort if the server is not set to the default protocol port. If your FTP server requires authentication, you should set the User, Password and/or Account properties. If you wish to enable SSL, you can turn it on by setting an appropriate SSLCert and SSLStartMode as well as supplying an SSLAcceptServerCert.
The task will connect to the FTP server 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. If you wish to do any other PRE- or POST-GET operation, you can specify them as scripts through the BeforeGet and AfterGet properties, respectively.
FTP Send Task
The FTP Send Task requires both an FTPServer and a RemoteFile. If your server does not operate on the default FTP port, you will need to specify the correct port via FTPPort. For servers that do not allow anonymous uploads, you may also need to set User, Password, and/or Account. To enable SSL, you should select a client SSLCert and a SSLAcceptServerCert as well as an SSLStartMode.
The task will connect to the FTP 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 extension via TemporaryUploadExtension. If Overwrite is set to True, the task will delete or overwrite remote files as necessary to complete the operation.
If you wish to do any other PRE- or POST-PUT operation, you can specify them as scripts through the BeforePut and AfterPut properties, respectively.
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.
Account | The user Account for login. |
AfterConnect | A set of FTP commands to be executed immediately after connecting to the FTPServer . |
AfterGet | A set of FTP commands to be executed after the GET. |
BeforeGet | A set of FTP commands to be executed before the GET. |
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 FTP server. |
Firewall | A set of properties related to firewall access. |
FTPPort | The port for the FTP service (default is 21). |
FTPServer | The domain name or IP address of the FTP server. |
LocalDirectory | The directory on the local machine to write downloaded files to. |
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. |
Passive | Controls whether to direct the server into passive mode. Recommended if behind a firewall. |
Password | The password for login. |
PersistentConnection | Instructs the task whether to keep the connection to the server open. |
RemotePath | The current path in the FTP server. |
RuntimeLicense | Specifies the task runtime license key. |
SSLAcceptServerCert | Instructs the task to unconditionally accept the server certificate that matches the supplied certificate. |
SSLAcceptServerCertAcceptAny | Tells the task to accept any server certificate. |
SSLCert | The certificate to use for client authentication during the SSL handshake. |
SSLStartMode | Determines how the task starts the SSL negotiation. |
Timeout | A timeout for the task. |
TransferMode | The transfer mode (ASCII or Binary). If the value is 0 (default), the initial server mode will be used. |
User | The user id for login. |
UseSimpleDirList | Instructs the task to issue the NLST command instead of LIST. |
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.
Account | The user Account for login. |
AfterConnect | A set of FTP commands to be executed immediately after connecting to the FTPServer . |
AfterPut | A set of FTP commands to be executed after the PUT. |
Append | Whether or not the task should append data to the RemoteFile . |
BeforePut | A set of FTP commands to be executed before the PUT. |
Firewall | A set of properties related to firewall access. |
FTPPort | The port for the FTP service (default is 21). |
FTPServer | The domain name or IP address of the FTP server. |
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. |
Passive | Controls whether to direct the server into passive mode. Recommended if behind a firewall. |
Password | The password for login. |
PersistentConnection | Instructs the task whether to keep the connection to the server open. |
RemoteFile | The name of the destination file on the FTP server for uploading. |
RemotePath | The current path in the FTP server. |
RemoteTempPath | A temporary directory on the server to store files before moving them to RemotePath . |
RuntimeLicense | Specifies the task runtime license key. |
SSLAcceptServerCert | Instructs the task to unconditionally accept the server certificate that matches the supplied certificate. |
SSLAcceptServerCertAcceptAny | Tells the task to accept any server certificate. |
SSLCert | The certificate to use for client authentication during the SSL handshake. |
SSLStartMode | Determines how the task starts the SSL negotiation. |
Timeout | A timeout for the task. |
TransferMode | The transfer mode (ASCII or Binary). If the value is 0 (default), the initial server mode will be used. |
User | The user id for login. |
UseSimpleDirList | Instructs the task to issue the NLST command instead of LIST. |
Configuration Settings
The following is a list of configuration settings for the task with short descriptions. Click on the links for further details.
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. |
AutoSelectDataIP | Automatically select the data connection IP. |
DirEntryPattern | Allows the use of regular expressions to parse non-standard directory entry formats. |
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. |
MaxFilesPerPollingInterval | The maximum number of files that will be downloaded from the server during a single poll. |
CheckFileExists | Whether to check if the remote file exists before uploading. |
PortRange | Allows the specification of a port range the task listens to. |
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. |
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. |
ReuseSSLSessionInDI | Whether the SSL session will be reused for the DI connection. |
ReusePISSLSessionInDI | Whether the PI SSL session will be reused for the DI connection. |
UseClearCommandChannel | Allows for the Clear Command Channel (CCC) command. |
UseClearDataChannel | Allows for the PROT C command. |
UseFSwitch | Specifies whether or not the -F parameter is used when listing directory contents. |
UseMLSD | Uses listings for machine processing. |
UseProtWhenImplicit | Sends PROT P to the server. |
UseRemoteHostAddressForPassive | Instructs the task to use the FTPServer in passive mode. |
UseModeZ | Allows compression to be used when transferring data. |
ModeZCompressionLevel | Used to specify the level of compression used. |
ReuseSSLSession | Determines if the SSL session is reused. |
SSLCipherStrength | The minimum cipher strength used for bulk encryption. |
SSLEnabledProtocols | Used to enable/disable the supported security protocols. |
SSLIncludeCertChain | Whether the entire certificate chain is included in the SSLServerAuthentication event. |
SSLSecurityFlags | Flags that control certificate verification. |
SSLEnabledCipherSuites | The cipher suite to be used in an SSL negotiation. |
TLS12SignatureAlgorithms | Defines the allowed TLS 1.2 signature algorithms when UseInternalSecurityAPI is True. |
TLSNamedGroups | The supported (EC)DHE groups. |
TLS13SignatureAlgorithms | The allowed certificate signature algorithms. |
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. |