SFTP Delivery Method

The preferred method for file transfer protocol (FTP) delivery is the SFTP secure delivery method. The SFTP delivery method allows an exported file to be delivered to an external system and is often used when the output files are large or when a different or remote system is in use.

The SFTP delivery method allows use of Ed25519, ECDSA, RSA-SHA2-256, and RSA-SHA2-512 cryptographic keys and includes an automatic 30-second timeout to set the OIEP as 'Failed' and prevent indefinite attempts. A dropdown selection is available for the Host Name parameter to ensure correct entries. Dropdown selections are available for the Host Name, and SSH Private Key parameters to ensure correct entries.

The SFTP (Deprecated) Delivery Method allows only RSA encryption, does not feature timeout capability, and parameters require that text be manually entered.

For information on the OIEP FTP delivery method, refer to the FTP Delivery Method.

In an OIEP, the delivery method is displayed on the Configuration tab of the editor in the Delivery Method section.

This delivery method is also available in Export Manager as defined in the SFTP (Deprecated) Delivery Method.

Prerequisites

Multiple entries can be added to the dropdown parameters using dynamic properties. Each configuration entry must have a unique integer or alpha identifier (indicated by [*]) as described below. When duplicate identifiers exist, only the last value is displayed in the dropdown.

Configure data for the dropdown parameters:

  1. Host Name. Prior to configuration, the Host Name dropdown parameter is blank. Provide a selection for the dropdown parameter via the case-sensitive SFTP.DeliveryHostname.[*] configuration property. As an example:

    SFTP.DeliveryHostname.1=sftp.acme.com
    SFTP.DeliveryHostname.2=sftp.zenithco.com

    Using this configuration property example, two host names are displayed in the 'Host Name' dropdown.

  2. SSH Private Key. Prior to configuration, the SSH Private Key dropdown parameter is blank. Provide a selection for the dropdown parameter via the case-sensitive SFTP.SshPrivateKey.Location.[*] configuration property. As an example:

    SFTP.SshPrivateKey.Location.rsa=/users/helm/Documents/sftp/rsakey
    SFTP.SshPrivateKey.Location.ecdsa=/users/whel/Documents/sftp/ecdsakey
    

    Using this configuration property example, two private keys are displayed in the 'SSH Private Key' dropdown parameter.

Configuration

For information on a parameter, hover over the parameter field to display help text.

  1. Click the Select Delivery Method list to display the dropdown and select SFTP.

  2. In Host Name, from the dropdown, select the host name of the SFTP server to be used for the delivery.

  3. In User Name, enter the user name that has access to log on to the FTP server.

  4. In Password, enter the password that will be used to log on to the FTP server. If using the 'SSH private key', leave this field blank.

  5. In SSH Private Key, if necessary, from the dropdown, select the full path to the Secure Shell (SSH) key file. If you added a password in the Password field, leave this field blank.

  6. In Passphrase, enter the passphrase that accompanies the SSH key entered, if applicable. If the 'SSH Private Key' does not have a passphrase or you are not using an 'SSH Private Key', leave this field blank.

  7. In File Name Template, to create the file name used for the output, enter template variables (identified with a $), static text, or use a combination of both. The default template is $filename-$timestamp(yyyy-MM-dd_HH.mm.ss).$extension. Depending on the settings of the configuration, the default template outputs a file name similar to 'GenericXML-2020-07-30_14.07.44.xml.'

    Note: The 'Zip before upload' parameter also has an impact on the file name.

    Each variable is described below:

    • $filename: For event-based OIEPs, this variable is replaced with text to indicate the format of the delivered file as specified in the Output Templates section, except for STEPXML when the first and last Event IDs are used. For example, the output file name could be 'csv-2020-07-30_14.09.40.csv' or '1804038-1804038.xml' to indicate that STEPXML was used for a single event.

    • $timestamp: This variable is replaced with the time in year-day-month-hour-minutes-seconds-milliseconds, excluding the dashes. For example, 20161511094709625 is used for an export on 15 NOV 2016 at 9:47:09:625 AM.

      Adding a definition for the arrangement of the date / time elements provides a way to generate a more readable date. Static characters can be included to separate the timestamp elements and individual elements can be ordered as required, as shown below.

      Note: To revert the $timestamp variable so that it uses the legacy definition (milliseconds between January 1, 1970, and the time when the file is uploaded), contact Stibo Systems Support.

      $timestamp(ddMMyyyy): The timestamp is modified to display day-month-year (excluding dashes) and is output as '15112016' for 15 NOV 2016.

      $timestamp(yyyy-MM-dd_HH.mm.ss): The timestamp is modified to display year-month-day_hour.minutes.seconds (including the dashes, underscore, and periods) and is output as '2016-11-15_09.32.43' for 2016 NOV 15 at 9:32.43 AM.

    • $extension: This variable is replaced with the extension of the output file based on the selected format in the Output Templates section (as defined in the OIEP - Event-Based - Output Templates Section or the OIEP - Select Objects - Output Templates Section topics). For XML-based formats, the output file is set with the .XML extension, while Excel files use .XLS, and comma-separated values use .CSV. For event-based OIEPs with the STEPXML format, the first and last Event IDs are used. For example, the output file name could be '1804038-1804038.xml' to indicate that STEPXML was used for a single event.

      Note: The File Name Template does not support conversions of file formats and can only be used to deliver files in the format specified on the Configuration tab > Output Templates section of the outbound integration endpoint.

  8. In Zip Before Upload, select an option from the dropdown to specify if the output file should be delivered in a .ZIP (compressed) file format.

    • Yes uses 'result_0' before the timestamp variable and the extension ZIP. For example, a zipped STEPXML output with the default File Name Template exported on 30 JUL 2020 results in an output .ZIP file named 'result_0-2020-07-30_14.07.44.zip.' The contents of the ZIP file would follow the $filename variable applied in the 'File name template' parameter.

    • No uses the 'File name template' for the file name along with the appropriate extension for the selected data format.

  9. On the Edit Delivery Configuration dialog, click the OK button to save the delivery method.