Class SftpConnectorConfig

java.lang.Object
software.amazon.awssdk.services.transfer.model.SftpConnectorConfig
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<SftpConnectorConfig.Builder,SftpConnectorConfig>

@Generated("software.amazon.awssdk:codegen") public final class SftpConnectorConfig extends Object implements SdkPojo, Serializable, ToCopyableBuilder<SftpConnectorConfig.Builder,SftpConnectorConfig>

Contains the details for an SFTP connector object. The connector object is used for transferring files to and from a partner's SFTP server.

See Also:
  • Method Details

    • userSecretId

      public final String userSecretId()

      The identifier for the secret (in Amazon Web Services Secrets Manager) that contains the SFTP user's private key, password, or both. The identifier must be the Amazon Resource Name (ARN) of the secret.

      • Required when creating an SFTP connector

      • Optional when updating an existing SFTP connector

      Returns:
      The identifier for the secret (in Amazon Web Services Secrets Manager) that contains the SFTP user's private key, password, or both. The identifier must be the Amazon Resource Name (ARN) of the secret.

      • Required when creating an SFTP connector

      • Optional when updating an existing SFTP connector

    • hasTrustedHostKeys

      public final boolean hasTrustedHostKeys()
      For responses, this returns true if the service returned a value for the TrustedHostKeys property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • trustedHostKeys

      public final List<String> trustedHostKeys()

      The public portion of the host key, or keys, that are used to identify the external server to which you are connecting. You can use the ssh-keyscan command against the SFTP server to retrieve the necessary key.

      TrustedHostKeys is optional for CreateConnector. If not provided, you can use TestConnection to retrieve the server host key during the initial connection attempt, and subsequently update the connector with the observed host key.

      The three standard SSH public key format elements are <key type>, <body base64>, and an optional <comment>, with spaces between each element. Specify only the <key type> and <body base64>: do not enter the <comment> portion of the key.

      For the trusted host key, Transfer Family accepts RSA and ECDSA keys.

      • For RSA keys, the <key type> string is ssh-rsa.

      • For ECDSA keys, the <key type> string is either ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, or ecdsa-sha2-nistp521, depending on the size of the key you generated.

      Run this command to retrieve the SFTP server host key, where your SFTP server name is ftp.host.com.

      ssh-keyscan ftp.host.com

      This prints the public host key to standard output.

      ftp.host.com ssh-rsa AAAAB3Nza...<long-string-for-public-key

      Copy and paste this string into the TrustedHostKeys field for the create-connector command or into the Trusted host keys field in the console.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasTrustedHostKeys() method.

      Returns:
      The public portion of the host key, or keys, that are used to identify the external server to which you are connecting. You can use the ssh-keyscan command against the SFTP server to retrieve the necessary key.

      TrustedHostKeys is optional for CreateConnector. If not provided, you can use TestConnection to retrieve the server host key during the initial connection attempt, and subsequently update the connector with the observed host key.

      The three standard SSH public key format elements are <key type>, <body base64>, and an optional <comment>, with spaces between each element. Specify only the <key type> and <body base64>: do not enter the <comment> portion of the key.

      For the trusted host key, Transfer Family accepts RSA and ECDSA keys.

      • For RSA keys, the <key type> string is ssh-rsa.

      • For ECDSA keys, the <key type> string is either ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, or ecdsa-sha2-nistp521, depending on the size of the key you generated.

      Run this command to retrieve the SFTP server host key, where your SFTP server name is ftp.host.com.

      ssh-keyscan ftp.host.com

      This prints the public host key to standard output.

      ftp.host.com ssh-rsa AAAAB3Nza...<long-string-for-public-key

      Copy and paste this string into the TrustedHostKeys field for the create-connector command or into the Trusted host keys field in the console.

    • maxConcurrentConnections

      public final Integer maxConcurrentConnections()

      Specify the number of concurrent connections that your connector creates to the remote server. The default value is 5 (this is also the maximum value allowed).

      This parameter specifies the number of active connections that your connector can establish with the remote server at the same time. Increasing this value can enhance connector performance when transferring large file batches by enabling parallel operations.

      Returns:
      Specify the number of concurrent connections that your connector creates to the remote server. The default value is 5 (this is also the maximum value allowed).

      This parameter specifies the number of active connections that your connector can establish with the remote server at the same time. Increasing this value can enhance connector performance when transferring large file batches by enabling parallel operations.

    • toBuilder

      public SftpConnectorConfig.Builder toBuilder()
      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<SftpConnectorConfig.Builder,SftpConnectorConfig>
      Returns:
      a builder for type T
    • builder

      public static SftpConnectorConfig.Builder builder()
    • serializableBuilderClass

      public static Class<? extends SftpConnectorConfig.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.
    • sdkFieldNameToField

      public final Map<String,SdkField<?>> sdkFieldNameToField()
      Specified by:
      sdkFieldNameToField in interface SdkPojo
      Returns:
      The mapping between the field name and its corresponding field.