1. Packages
  2. AWS Cloud Control
  3. API Docs
  4. transfer
  5. getServer

We recommend new projects start with resources from the AWS provider.

AWS Cloud Control v1.9.0 published on Monday, Nov 18, 2024 by Pulumi

aws-native.transfer.getServer

Explore with Pulumi AI

aws-native logo

We recommend new projects start with resources from the AWS provider.

AWS Cloud Control v1.9.0 published on Monday, Nov 18, 2024 by Pulumi

    Definition of AWS::Transfer::Server Resource Type

    Using getServer

    Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

    function getServer(args: GetServerArgs, opts?: InvokeOptions): Promise<GetServerResult>
    function getServerOutput(args: GetServerOutputArgs, opts?: InvokeOptions): Output<GetServerResult>
    def get_server(arn: Optional[str] = None,
                   opts: Optional[InvokeOptions] = None) -> GetServerResult
    def get_server_output(arn: Optional[pulumi.Input[str]] = None,
                   opts: Optional[InvokeOptions] = None) -> Output[GetServerResult]
    func LookupServer(ctx *Context, args *LookupServerArgs, opts ...InvokeOption) (*LookupServerResult, error)
    func LookupServerOutput(ctx *Context, args *LookupServerOutputArgs, opts ...InvokeOption) LookupServerResultOutput

    > Note: This function is named LookupServer in the Go SDK.

    public static class GetServer 
    {
        public static Task<GetServerResult> InvokeAsync(GetServerArgs args, InvokeOptions? opts = null)
        public static Output<GetServerResult> Invoke(GetServerInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetServerResult> getServer(GetServerArgs args, InvokeOptions options)
    // Output-based functions aren't available in Java yet
    
    fn::invoke:
      function: aws-native:transfer:getServer
      arguments:
        # arguments dictionary

    The following arguments are supported:

    Arn string

    The Amazon Resource Name associated with the server, in the form arn:aws:transfer:region: *account-id* :server/ *server-id* / .

    An example of a server ARN is: arn:aws:transfer:us-east-1:123456789012:server/s-01234567890abcdef .

    Arn string

    The Amazon Resource Name associated with the server, in the form arn:aws:transfer:region: *account-id* :server/ *server-id* / .

    An example of a server ARN is: arn:aws:transfer:us-east-1:123456789012:server/s-01234567890abcdef .

    arn String

    The Amazon Resource Name associated with the server, in the form arn:aws:transfer:region: *account-id* :server/ *server-id* / .

    An example of a server ARN is: arn:aws:transfer:us-east-1:123456789012:server/s-01234567890abcdef .

    arn string

    The Amazon Resource Name associated with the server, in the form arn:aws:transfer:region: *account-id* :server/ *server-id* / .

    An example of a server ARN is: arn:aws:transfer:us-east-1:123456789012:server/s-01234567890abcdef .

    arn str

    The Amazon Resource Name associated with the server, in the form arn:aws:transfer:region: *account-id* :server/ *server-id* / .

    An example of a server ARN is: arn:aws:transfer:us-east-1:123456789012:server/s-01234567890abcdef .

    arn String

    The Amazon Resource Name associated with the server, in the form arn:aws:transfer:region: *account-id* :server/ *server-id* / .

    An example of a server ARN is: arn:aws:transfer:us-east-1:123456789012:server/s-01234567890abcdef .

    getServer Result

    The following output properties are available:

    Arn string

    The Amazon Resource Name associated with the server, in the form arn:aws:transfer:region: *account-id* :server/ *server-id* / .

    An example of a server ARN is: arn:aws:transfer:us-east-1:123456789012:server/s-01234567890abcdef .

    As2ServiceManagedEgressIpAddresses List<string>
    The list of egress IP addresses of this server. These IP addresses are only relevant for servers that use the AS2 protocol. They are used for sending asynchronous MDNs. These IP addresses are assigned automatically when you create an AS2 server. Additionally, if you update an existing server and add the AS2 protocol, static IP addresses are assigned as well.
    Certificate string

    The Amazon Resource Name (ARN) of the AWS Certificate Manager (ACM) certificate. Required when Protocols is set to FTPS .

    To request a new public certificate, see Request a public certificate in the AWS Certificate Manager User Guide .

    To import an existing certificate into ACM, see Importing certificates into ACM in the AWS Certificate Manager User Guide .

    To request a private certificate to use FTPS through private IP addresses, see Request a private certificate in the AWS Certificate Manager User Guide .

    Certificates with the following cryptographic algorithms and key sizes are supported:

    • 2048-bit RSA (RSA_2048)
    • 4096-bit RSA (RSA_4096)
    • Elliptic Prime Curve 256 bit (EC_prime256v1)
    • Elliptic Prime Curve 384 bit (EC_secp384r1)
    • Elliptic Prime Curve 521 bit (EC_secp521r1)

    The certificate must be a valid SSL/TLS X.509 version 3 certificate with FQDN or IP address specified and information about the issuer.

    EndpointDetails Pulumi.AwsNative.Transfer.Outputs.ServerEndpointDetails
    The virtual private cloud (VPC) endpoint settings that are configured for your server. When you host your endpoint within your VPC, you can make your endpoint accessible only to resources within your VPC, or you can attach Elastic IP addresses and make your endpoint accessible to clients over the internet. Your VPC's default security groups are automatically assigned to your endpoint.
    EndpointType Pulumi.AwsNative.Transfer.ServerEndpointType

    The type of endpoint that you want your server to use. You can choose to make your server's endpoint publicly accessible (PUBLIC) or host it inside your VPC. With an endpoint that is hosted in a VPC, you can restrict access to your server and resources only within your VPC or choose to make it internet facing by attaching Elastic IP addresses directly to it.

    After May 19, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT in your AWS account if your account hasn't already done so before May 19, 2021. If you have already created servers with EndpointType=VPC_ENDPOINT in your AWS account on or before May 19, 2021, you will not be affected. After this date, use EndpointType = VPC .

    For more information, see Discontinuing the use of VPC_ENDPOINT .

    It is recommended that you use VPC as the EndpointType . With this endpoint type, you have the option to directly associate up to three Elastic IPv4 addresses (BYO IP included) with your server's endpoint and use VPC security groups to restrict traffic by the client's public IP address. This is not possible with EndpointType set to VPC_ENDPOINT .

    IdentityProviderDetails Pulumi.AwsNative.Transfer.Outputs.ServerIdentityProviderDetails
    Required when IdentityProviderType is set to AWS_DIRECTORY_SERVICE , AWS _LAMBDA or API_GATEWAY . Accepts an array containing all of the information required to use a directory in AWS_DIRECTORY_SERVICE or invoke a customer-supplied authentication API, including the API Gateway URL. Cannot be specified when IdentityProviderType is set to SERVICE_MANAGED .
    LoggingRole string
    The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFSevents. When set, you can view user activity in your CloudWatch logs.
    PostAuthenticationLoginBanner string

    Specifies a string to display when users connect to a server. This string is displayed after the user authenticates.

    The SFTP protocol does not support post-authentication display banners.

    PreAuthenticationLoginBanner string

    Specifies a string to display when users connect to a server. This string is displayed before the user authenticates. For example, the following banner displays details about using the system:

    This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.

    ProtocolDetails Pulumi.AwsNative.Transfer.Outputs.ServerProtocolDetails

    The protocol settings that are configured for your server.

    • To indicate passive mode (for FTP and FTPS protocols), use the PassiveIp parameter. Enter a single dotted-quad IPv4 address, such as the external IP address of a firewall, router, or load balancer.
    • To ignore the error that is generated when the client attempts to use the SETSTAT command on a file that you are uploading to an Amazon S3 bucket, use the SetStatOption parameter. To have the AWS Transfer Family server ignore the SETSTAT command and upload files without needing to make any changes to your SFTP client, set the value to ENABLE_NO_OP . If you set the SetStatOption parameter to ENABLE_NO_OP , Transfer Family generates a log entry to Amazon CloudWatch Logs, so that you can determine when the client is making a SETSTAT call.
    • To determine whether your AWS Transfer Family server resumes recent, negotiated sessions through a unique session ID, use the TlsSessionResumptionMode parameter.
    • As2Transports indicates the transport method for the AS2 messages. Currently, only HTTP is supported.

    The Protocols parameter is an array of strings.

    Allowed values : One or more of SFTP , FTPS , FTP , AS2

    Protocols List<Pulumi.AwsNative.Transfer.ServerProtocol>

    Specifies the file transfer protocol or protocols over which your file transfer protocol client can connect to your server's endpoint. The available protocols are:

    • SFTP (Secure Shell (SSH) File Transfer Protocol): File transfer over SSH
    • FTPS (File Transfer Protocol Secure): File transfer with TLS encryption
    • FTP (File Transfer Protocol): Unencrypted file transfer
    • AS2 (Applicability Statement 2): used for transporting structured business-to-business data
    • If you select FTPS , you must choose a certificate stored in AWS Certificate Manager (ACM) which is used to identify your server when clients connect to it over FTPS.
    • If Protocol includes either FTP or FTPS , then the EndpointType must be VPC and the IdentityProviderType must be either AWS_DIRECTORY_SERVICE , AWS_LAMBDA , or API_GATEWAY .
    • If Protocol includes FTP , then AddressAllocationIds cannot be associated.
    • If Protocol is set only to SFTP , the EndpointType can be set to PUBLIC and the IdentityProviderType can be set any of the supported identity types: SERVICE_MANAGED , AWS_DIRECTORY_SERVICE , AWS_LAMBDA , or API_GATEWAY .
    • If Protocol includes AS2 , then the EndpointType must be VPC , and domain must be Amazon S3.

    The Protocols parameter is an array of strings.

    Allowed values : One or more of SFTP , FTPS , FTP , AS2

    S3StorageOptions Pulumi.AwsNative.Transfer.Outputs.ServerS3StorageOptions

    Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default.

    By default, home directory mappings have a TYPE of DIRECTORY . If you enable this option, you would then need to explicitly set the HomeDirectoryMapEntry Type to FILE if you want a mapping to have a file target.

    SecurityPolicyName string
    Specifies the name of the security policy for the server.
    ServerId string

    The service-assigned ID of the server that is created.

    An example ServerId is s-01234567890abcdef .

    StructuredLogDestinations List<string>

    Specifies the log groups to which your server logs are sent.

    To specify a log group, you must provide the ARN for an existing log group. In this case, the format of the log group is as follows:

    arn:aws:logs:region-name:amazon-account-id:log-group:log-group-name:*

    For example, arn:aws:logs:us-east-1:111122223333:log-group:mytestgroup:*

    If you have previously specified a log group for a server, you can clear it, and in effect turn off structured logging, by providing an empty value for this parameter in an update-server call. For example:

    update-server --server-id s-1234567890abcdef0 --structured-log-destinations

    Tags List<Pulumi.AwsNative.Outputs.Tag>
    Key-value pairs that can be used to group and search for servers.
    WorkflowDetails Pulumi.AwsNative.Transfer.Outputs.ServerWorkflowDetails

    Specifies the workflow ID for the workflow to assign and the execution role that's used for executing the workflow.

    In addition to a workflow to execute when a file is uploaded completely, WorkflowDetails can also contain a workflow ID (and execution role) for a workflow to execute on partial upload. A partial upload occurs when a file is open when the session disconnects.

    Arn string

    The Amazon Resource Name associated with the server, in the form arn:aws:transfer:region: *account-id* :server/ *server-id* / .

    An example of a server ARN is: arn:aws:transfer:us-east-1:123456789012:server/s-01234567890abcdef .

    As2ServiceManagedEgressIpAddresses []string
    The list of egress IP addresses of this server. These IP addresses are only relevant for servers that use the AS2 protocol. They are used for sending asynchronous MDNs. These IP addresses are assigned automatically when you create an AS2 server. Additionally, if you update an existing server and add the AS2 protocol, static IP addresses are assigned as well.
    Certificate string

    The Amazon Resource Name (ARN) of the AWS Certificate Manager (ACM) certificate. Required when Protocols is set to FTPS .

    To request a new public certificate, see Request a public certificate in the AWS Certificate Manager User Guide .

    To import an existing certificate into ACM, see Importing certificates into ACM in the AWS Certificate Manager User Guide .

    To request a private certificate to use FTPS through private IP addresses, see Request a private certificate in the AWS Certificate Manager User Guide .

    Certificates with the following cryptographic algorithms and key sizes are supported:

    • 2048-bit RSA (RSA_2048)
    • 4096-bit RSA (RSA_4096)
    • Elliptic Prime Curve 256 bit (EC_prime256v1)
    • Elliptic Prime Curve 384 bit (EC_secp384r1)
    • Elliptic Prime Curve 521 bit (EC_secp521r1)

    The certificate must be a valid SSL/TLS X.509 version 3 certificate with FQDN or IP address specified and information about the issuer.

    EndpointDetails ServerEndpointDetails
    The virtual private cloud (VPC) endpoint settings that are configured for your server. When you host your endpoint within your VPC, you can make your endpoint accessible only to resources within your VPC, or you can attach Elastic IP addresses and make your endpoint accessible to clients over the internet. Your VPC's default security groups are automatically assigned to your endpoint.
    EndpointType ServerEndpointType

    The type of endpoint that you want your server to use. You can choose to make your server's endpoint publicly accessible (PUBLIC) or host it inside your VPC. With an endpoint that is hosted in a VPC, you can restrict access to your server and resources only within your VPC or choose to make it internet facing by attaching Elastic IP addresses directly to it.

    After May 19, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT in your AWS account if your account hasn't already done so before May 19, 2021. If you have already created servers with EndpointType=VPC_ENDPOINT in your AWS account on or before May 19, 2021, you will not be affected. After this date, use EndpointType = VPC .

    For more information, see Discontinuing the use of VPC_ENDPOINT .

    It is recommended that you use VPC as the EndpointType . With this endpoint type, you have the option to directly associate up to three Elastic IPv4 addresses (BYO IP included) with your server's endpoint and use VPC security groups to restrict traffic by the client's public IP address. This is not possible with EndpointType set to VPC_ENDPOINT .

    IdentityProviderDetails ServerIdentityProviderDetails
    Required when IdentityProviderType is set to AWS_DIRECTORY_SERVICE , AWS _LAMBDA or API_GATEWAY . Accepts an array containing all of the information required to use a directory in AWS_DIRECTORY_SERVICE or invoke a customer-supplied authentication API, including the API Gateway URL. Cannot be specified when IdentityProviderType is set to SERVICE_MANAGED .
    LoggingRole string
    The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFSevents. When set, you can view user activity in your CloudWatch logs.
    PostAuthenticationLoginBanner string

    Specifies a string to display when users connect to a server. This string is displayed after the user authenticates.

    The SFTP protocol does not support post-authentication display banners.

    PreAuthenticationLoginBanner string

    Specifies a string to display when users connect to a server. This string is displayed before the user authenticates. For example, the following banner displays details about using the system:

    This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.

    ProtocolDetails ServerProtocolDetails

    The protocol settings that are configured for your server.

    • To indicate passive mode (for FTP and FTPS protocols), use the PassiveIp parameter. Enter a single dotted-quad IPv4 address, such as the external IP address of a firewall, router, or load balancer.
    • To ignore the error that is generated when the client attempts to use the SETSTAT command on a file that you are uploading to an Amazon S3 bucket, use the SetStatOption parameter. To have the AWS Transfer Family server ignore the SETSTAT command and upload files without needing to make any changes to your SFTP client, set the value to ENABLE_NO_OP . If you set the SetStatOption parameter to ENABLE_NO_OP , Transfer Family generates a log entry to Amazon CloudWatch Logs, so that you can determine when the client is making a SETSTAT call.
    • To determine whether your AWS Transfer Family server resumes recent, negotiated sessions through a unique session ID, use the TlsSessionResumptionMode parameter.
    • As2Transports indicates the transport method for the AS2 messages. Currently, only HTTP is supported.

    The Protocols parameter is an array of strings.

    Allowed values : One or more of SFTP , FTPS , FTP , AS2

    Protocols []ServerProtocol

    Specifies the file transfer protocol or protocols over which your file transfer protocol client can connect to your server's endpoint. The available protocols are:

    • SFTP (Secure Shell (SSH) File Transfer Protocol): File transfer over SSH
    • FTPS (File Transfer Protocol Secure): File transfer with TLS encryption
    • FTP (File Transfer Protocol): Unencrypted file transfer
    • AS2 (Applicability Statement 2): used for transporting structured business-to-business data
    • If you select FTPS , you must choose a certificate stored in AWS Certificate Manager (ACM) which is used to identify your server when clients connect to it over FTPS.
    • If Protocol includes either FTP or FTPS , then the EndpointType must be VPC and the IdentityProviderType must be either AWS_DIRECTORY_SERVICE , AWS_LAMBDA , or API_GATEWAY .
    • If Protocol includes FTP , then AddressAllocationIds cannot be associated.
    • If Protocol is set only to SFTP , the EndpointType can be set to PUBLIC and the IdentityProviderType can be set any of the supported identity types: SERVICE_MANAGED , AWS_DIRECTORY_SERVICE , AWS_LAMBDA , or API_GATEWAY .
    • If Protocol includes AS2 , then the EndpointType must be VPC , and domain must be Amazon S3.

    The Protocols parameter is an array of strings.

    Allowed values : One or more of SFTP , FTPS , FTP , AS2

    S3StorageOptions ServerS3StorageOptions

    Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default.

    By default, home directory mappings have a TYPE of DIRECTORY . If you enable this option, you would then need to explicitly set the HomeDirectoryMapEntry Type to FILE if you want a mapping to have a file target.

    SecurityPolicyName string
    Specifies the name of the security policy for the server.
    ServerId string

    The service-assigned ID of the server that is created.

    An example ServerId is s-01234567890abcdef .

    StructuredLogDestinations []string

    Specifies the log groups to which your server logs are sent.

    To specify a log group, you must provide the ARN for an existing log group. In this case, the format of the log group is as follows:

    arn:aws:logs:region-name:amazon-account-id:log-group:log-group-name:*

    For example, arn:aws:logs:us-east-1:111122223333:log-group:mytestgroup:*

    If you have previously specified a log group for a server, you can clear it, and in effect turn off structured logging, by providing an empty value for this parameter in an update-server call. For example:

    update-server --server-id s-1234567890abcdef0 --structured-log-destinations

    Tags Tag
    Key-value pairs that can be used to group and search for servers.
    WorkflowDetails ServerWorkflowDetails

    Specifies the workflow ID for the workflow to assign and the execution role that's used for executing the workflow.

    In addition to a workflow to execute when a file is uploaded completely, WorkflowDetails can also contain a workflow ID (and execution role) for a workflow to execute on partial upload. A partial upload occurs when a file is open when the session disconnects.

    arn String

    The Amazon Resource Name associated with the server, in the form arn:aws:transfer:region: *account-id* :server/ *server-id* / .

    An example of a server ARN is: arn:aws:transfer:us-east-1:123456789012:server/s-01234567890abcdef .

    as2ServiceManagedEgressIpAddresses List<String>
    The list of egress IP addresses of this server. These IP addresses are only relevant for servers that use the AS2 protocol. They are used for sending asynchronous MDNs. These IP addresses are assigned automatically when you create an AS2 server. Additionally, if you update an existing server and add the AS2 protocol, static IP addresses are assigned as well.
    certificate String

    The Amazon Resource Name (ARN) of the AWS Certificate Manager (ACM) certificate. Required when Protocols is set to FTPS .

    To request a new public certificate, see Request a public certificate in the AWS Certificate Manager User Guide .

    To import an existing certificate into ACM, see Importing certificates into ACM in the AWS Certificate Manager User Guide .

    To request a private certificate to use FTPS through private IP addresses, see Request a private certificate in the AWS Certificate Manager User Guide .

    Certificates with the following cryptographic algorithms and key sizes are supported:

    • 2048-bit RSA (RSA_2048)
    • 4096-bit RSA (RSA_4096)
    • Elliptic Prime Curve 256 bit (EC_prime256v1)
    • Elliptic Prime Curve 384 bit (EC_secp384r1)
    • Elliptic Prime Curve 521 bit (EC_secp521r1)

    The certificate must be a valid SSL/TLS X.509 version 3 certificate with FQDN or IP address specified and information about the issuer.

    endpointDetails ServerEndpointDetails
    The virtual private cloud (VPC) endpoint settings that are configured for your server. When you host your endpoint within your VPC, you can make your endpoint accessible only to resources within your VPC, or you can attach Elastic IP addresses and make your endpoint accessible to clients over the internet. Your VPC's default security groups are automatically assigned to your endpoint.
    endpointType ServerEndpointType

    The type of endpoint that you want your server to use. You can choose to make your server's endpoint publicly accessible (PUBLIC) or host it inside your VPC. With an endpoint that is hosted in a VPC, you can restrict access to your server and resources only within your VPC or choose to make it internet facing by attaching Elastic IP addresses directly to it.

    After May 19, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT in your AWS account if your account hasn't already done so before May 19, 2021. If you have already created servers with EndpointType=VPC_ENDPOINT in your AWS account on or before May 19, 2021, you will not be affected. After this date, use EndpointType = VPC .

    For more information, see Discontinuing the use of VPC_ENDPOINT .

    It is recommended that you use VPC as the EndpointType . With this endpoint type, you have the option to directly associate up to three Elastic IPv4 addresses (BYO IP included) with your server's endpoint and use VPC security groups to restrict traffic by the client's public IP address. This is not possible with EndpointType set to VPC_ENDPOINT .

    identityProviderDetails ServerIdentityProviderDetails
    Required when IdentityProviderType is set to AWS_DIRECTORY_SERVICE , AWS _LAMBDA or API_GATEWAY . Accepts an array containing all of the information required to use a directory in AWS_DIRECTORY_SERVICE or invoke a customer-supplied authentication API, including the API Gateway URL. Cannot be specified when IdentityProviderType is set to SERVICE_MANAGED .
    loggingRole String
    The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFSevents. When set, you can view user activity in your CloudWatch logs.
    postAuthenticationLoginBanner String

    Specifies a string to display when users connect to a server. This string is displayed after the user authenticates.

    The SFTP protocol does not support post-authentication display banners.

    preAuthenticationLoginBanner String

    Specifies a string to display when users connect to a server. This string is displayed before the user authenticates. For example, the following banner displays details about using the system:

    This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.

    protocolDetails ServerProtocolDetails

    The protocol settings that are configured for your server.

    • To indicate passive mode (for FTP and FTPS protocols), use the PassiveIp parameter. Enter a single dotted-quad IPv4 address, such as the external IP address of a firewall, router, or load balancer.
    • To ignore the error that is generated when the client attempts to use the SETSTAT command on a file that you are uploading to an Amazon S3 bucket, use the SetStatOption parameter. To have the AWS Transfer Family server ignore the SETSTAT command and upload files without needing to make any changes to your SFTP client, set the value to ENABLE_NO_OP . If you set the SetStatOption parameter to ENABLE_NO_OP , Transfer Family generates a log entry to Amazon CloudWatch Logs, so that you can determine when the client is making a SETSTAT call.
    • To determine whether your AWS Transfer Family server resumes recent, negotiated sessions through a unique session ID, use the TlsSessionResumptionMode parameter.
    • As2Transports indicates the transport method for the AS2 messages. Currently, only HTTP is supported.

    The Protocols parameter is an array of strings.

    Allowed values : One or more of SFTP , FTPS , FTP , AS2

    protocols List<ServerProtocol>

    Specifies the file transfer protocol or protocols over which your file transfer protocol client can connect to your server's endpoint. The available protocols are:

    • SFTP (Secure Shell (SSH) File Transfer Protocol): File transfer over SSH
    • FTPS (File Transfer Protocol Secure): File transfer with TLS encryption
    • FTP (File Transfer Protocol): Unencrypted file transfer
    • AS2 (Applicability Statement 2): used for transporting structured business-to-business data
    • If you select FTPS , you must choose a certificate stored in AWS Certificate Manager (ACM) which is used to identify your server when clients connect to it over FTPS.
    • If Protocol includes either FTP or FTPS , then the EndpointType must be VPC and the IdentityProviderType must be either AWS_DIRECTORY_SERVICE , AWS_LAMBDA , or API_GATEWAY .
    • If Protocol includes FTP , then AddressAllocationIds cannot be associated.
    • If Protocol is set only to SFTP , the EndpointType can be set to PUBLIC and the IdentityProviderType can be set any of the supported identity types: SERVICE_MANAGED , AWS_DIRECTORY_SERVICE , AWS_LAMBDA , or API_GATEWAY .
    • If Protocol includes AS2 , then the EndpointType must be VPC , and domain must be Amazon S3.

    The Protocols parameter is an array of strings.

    Allowed values : One or more of SFTP , FTPS , FTP , AS2

    s3StorageOptions ServerS3StorageOptions

    Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default.

    By default, home directory mappings have a TYPE of DIRECTORY . If you enable this option, you would then need to explicitly set the HomeDirectoryMapEntry Type to FILE if you want a mapping to have a file target.

    securityPolicyName String
    Specifies the name of the security policy for the server.
    serverId String

    The service-assigned ID of the server that is created.

    An example ServerId is s-01234567890abcdef .

    structuredLogDestinations List<String>

    Specifies the log groups to which your server logs are sent.

    To specify a log group, you must provide the ARN for an existing log group. In this case, the format of the log group is as follows:

    arn:aws:logs:region-name:amazon-account-id:log-group:log-group-name:*

    For example, arn:aws:logs:us-east-1:111122223333:log-group:mytestgroup:*

    If you have previously specified a log group for a server, you can clear it, and in effect turn off structured logging, by providing an empty value for this parameter in an update-server call. For example:

    update-server --server-id s-1234567890abcdef0 --structured-log-destinations

    tags List<Tag>
    Key-value pairs that can be used to group and search for servers.
    workflowDetails ServerWorkflowDetails

    Specifies the workflow ID for the workflow to assign and the execution role that's used for executing the workflow.

    In addition to a workflow to execute when a file is uploaded completely, WorkflowDetails can also contain a workflow ID (and execution role) for a workflow to execute on partial upload. A partial upload occurs when a file is open when the session disconnects.

    arn string

    The Amazon Resource Name associated with the server, in the form arn:aws:transfer:region: *account-id* :server/ *server-id* / .

    An example of a server ARN is: arn:aws:transfer:us-east-1:123456789012:server/s-01234567890abcdef .

    as2ServiceManagedEgressIpAddresses string[]
    The list of egress IP addresses of this server. These IP addresses are only relevant for servers that use the AS2 protocol. They are used for sending asynchronous MDNs. These IP addresses are assigned automatically when you create an AS2 server. Additionally, if you update an existing server and add the AS2 protocol, static IP addresses are assigned as well.
    certificate string

    The Amazon Resource Name (ARN) of the AWS Certificate Manager (ACM) certificate. Required when Protocols is set to FTPS .

    To request a new public certificate, see Request a public certificate in the AWS Certificate Manager User Guide .

    To import an existing certificate into ACM, see Importing certificates into ACM in the AWS Certificate Manager User Guide .

    To request a private certificate to use FTPS through private IP addresses, see Request a private certificate in the AWS Certificate Manager User Guide .

    Certificates with the following cryptographic algorithms and key sizes are supported:

    • 2048-bit RSA (RSA_2048)
    • 4096-bit RSA (RSA_4096)
    • Elliptic Prime Curve 256 bit (EC_prime256v1)
    • Elliptic Prime Curve 384 bit (EC_secp384r1)
    • Elliptic Prime Curve 521 bit (EC_secp521r1)

    The certificate must be a valid SSL/TLS X.509 version 3 certificate with FQDN or IP address specified and information about the issuer.

    endpointDetails ServerEndpointDetails
    The virtual private cloud (VPC) endpoint settings that are configured for your server. When you host your endpoint within your VPC, you can make your endpoint accessible only to resources within your VPC, or you can attach Elastic IP addresses and make your endpoint accessible to clients over the internet. Your VPC's default security groups are automatically assigned to your endpoint.
    endpointType ServerEndpointType

    The type of endpoint that you want your server to use. You can choose to make your server's endpoint publicly accessible (PUBLIC) or host it inside your VPC. With an endpoint that is hosted in a VPC, you can restrict access to your server and resources only within your VPC or choose to make it internet facing by attaching Elastic IP addresses directly to it.

    After May 19, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT in your AWS account if your account hasn't already done so before May 19, 2021. If you have already created servers with EndpointType=VPC_ENDPOINT in your AWS account on or before May 19, 2021, you will not be affected. After this date, use EndpointType = VPC .

    For more information, see Discontinuing the use of VPC_ENDPOINT .

    It is recommended that you use VPC as the EndpointType . With this endpoint type, you have the option to directly associate up to three Elastic IPv4 addresses (BYO IP included) with your server's endpoint and use VPC security groups to restrict traffic by the client's public IP address. This is not possible with EndpointType set to VPC_ENDPOINT .

    identityProviderDetails ServerIdentityProviderDetails
    Required when IdentityProviderType is set to AWS_DIRECTORY_SERVICE , AWS _LAMBDA or API_GATEWAY . Accepts an array containing all of the information required to use a directory in AWS_DIRECTORY_SERVICE or invoke a customer-supplied authentication API, including the API Gateway URL. Cannot be specified when IdentityProviderType is set to SERVICE_MANAGED .
    loggingRole string
    The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFSevents. When set, you can view user activity in your CloudWatch logs.
    postAuthenticationLoginBanner string

    Specifies a string to display when users connect to a server. This string is displayed after the user authenticates.

    The SFTP protocol does not support post-authentication display banners.

    preAuthenticationLoginBanner string

    Specifies a string to display when users connect to a server. This string is displayed before the user authenticates. For example, the following banner displays details about using the system:

    This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.

    protocolDetails ServerProtocolDetails

    The protocol settings that are configured for your server.

    • To indicate passive mode (for FTP and FTPS protocols), use the PassiveIp parameter. Enter a single dotted-quad IPv4 address, such as the external IP address of a firewall, router, or load balancer.
    • To ignore the error that is generated when the client attempts to use the SETSTAT command on a file that you are uploading to an Amazon S3 bucket, use the SetStatOption parameter. To have the AWS Transfer Family server ignore the SETSTAT command and upload files without needing to make any changes to your SFTP client, set the value to ENABLE_NO_OP . If you set the SetStatOption parameter to ENABLE_NO_OP , Transfer Family generates a log entry to Amazon CloudWatch Logs, so that you can determine when the client is making a SETSTAT call.
    • To determine whether your AWS Transfer Family server resumes recent, negotiated sessions through a unique session ID, use the TlsSessionResumptionMode parameter.
    • As2Transports indicates the transport method for the AS2 messages. Currently, only HTTP is supported.

    The Protocols parameter is an array of strings.

    Allowed values : One or more of SFTP , FTPS , FTP , AS2

    protocols ServerProtocol[]

    Specifies the file transfer protocol or protocols over which your file transfer protocol client can connect to your server's endpoint. The available protocols are:

    • SFTP (Secure Shell (SSH) File Transfer Protocol): File transfer over SSH
    • FTPS (File Transfer Protocol Secure): File transfer with TLS encryption
    • FTP (File Transfer Protocol): Unencrypted file transfer
    • AS2 (Applicability Statement 2): used for transporting structured business-to-business data
    • If you select FTPS , you must choose a certificate stored in AWS Certificate Manager (ACM) which is used to identify your server when clients connect to it over FTPS.
    • If Protocol includes either FTP or FTPS , then the EndpointType must be VPC and the IdentityProviderType must be either AWS_DIRECTORY_SERVICE , AWS_LAMBDA , or API_GATEWAY .
    • If Protocol includes FTP , then AddressAllocationIds cannot be associated.
    • If Protocol is set only to SFTP , the EndpointType can be set to PUBLIC and the IdentityProviderType can be set any of the supported identity types: SERVICE_MANAGED , AWS_DIRECTORY_SERVICE , AWS_LAMBDA , or API_GATEWAY .
    • If Protocol includes AS2 , then the EndpointType must be VPC , and domain must be Amazon S3.

    The Protocols parameter is an array of strings.

    Allowed values : One or more of SFTP , FTPS , FTP , AS2

    s3StorageOptions ServerS3StorageOptions

    Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default.

    By default, home directory mappings have a TYPE of DIRECTORY . If you enable this option, you would then need to explicitly set the HomeDirectoryMapEntry Type to FILE if you want a mapping to have a file target.

    securityPolicyName string
    Specifies the name of the security policy for the server.
    serverId string

    The service-assigned ID of the server that is created.

    An example ServerId is s-01234567890abcdef .

    structuredLogDestinations string[]

    Specifies the log groups to which your server logs are sent.

    To specify a log group, you must provide the ARN for an existing log group. In this case, the format of the log group is as follows:

    arn:aws:logs:region-name:amazon-account-id:log-group:log-group-name:*

    For example, arn:aws:logs:us-east-1:111122223333:log-group:mytestgroup:*

    If you have previously specified a log group for a server, you can clear it, and in effect turn off structured logging, by providing an empty value for this parameter in an update-server call. For example:

    update-server --server-id s-1234567890abcdef0 --structured-log-destinations

    tags Tag[]
    Key-value pairs that can be used to group and search for servers.
    workflowDetails ServerWorkflowDetails

    Specifies the workflow ID for the workflow to assign and the execution role that's used for executing the workflow.

    In addition to a workflow to execute when a file is uploaded completely, WorkflowDetails can also contain a workflow ID (and execution role) for a workflow to execute on partial upload. A partial upload occurs when a file is open when the session disconnects.

    arn str

    The Amazon Resource Name associated with the server, in the form arn:aws:transfer:region: *account-id* :server/ *server-id* / .

    An example of a server ARN is: arn:aws:transfer:us-east-1:123456789012:server/s-01234567890abcdef .

    as2_service_managed_egress_ip_addresses Sequence[str]
    The list of egress IP addresses of this server. These IP addresses are only relevant for servers that use the AS2 protocol. They are used for sending asynchronous MDNs. These IP addresses are assigned automatically when you create an AS2 server. Additionally, if you update an existing server and add the AS2 protocol, static IP addresses are assigned as well.
    certificate str

    The Amazon Resource Name (ARN) of the AWS Certificate Manager (ACM) certificate. Required when Protocols is set to FTPS .

    To request a new public certificate, see Request a public certificate in the AWS Certificate Manager User Guide .

    To import an existing certificate into ACM, see Importing certificates into ACM in the AWS Certificate Manager User Guide .

    To request a private certificate to use FTPS through private IP addresses, see Request a private certificate in the AWS Certificate Manager User Guide .

    Certificates with the following cryptographic algorithms and key sizes are supported:

    • 2048-bit RSA (RSA_2048)
    • 4096-bit RSA (RSA_4096)
    • Elliptic Prime Curve 256 bit (EC_prime256v1)
    • Elliptic Prime Curve 384 bit (EC_secp384r1)
    • Elliptic Prime Curve 521 bit (EC_secp521r1)

    The certificate must be a valid SSL/TLS X.509 version 3 certificate with FQDN or IP address specified and information about the issuer.

    endpoint_details ServerEndpointDetails
    The virtual private cloud (VPC) endpoint settings that are configured for your server. When you host your endpoint within your VPC, you can make your endpoint accessible only to resources within your VPC, or you can attach Elastic IP addresses and make your endpoint accessible to clients over the internet. Your VPC's default security groups are automatically assigned to your endpoint.
    endpoint_type ServerEndpointType

    The type of endpoint that you want your server to use. You can choose to make your server's endpoint publicly accessible (PUBLIC) or host it inside your VPC. With an endpoint that is hosted in a VPC, you can restrict access to your server and resources only within your VPC or choose to make it internet facing by attaching Elastic IP addresses directly to it.

    After May 19, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT in your AWS account if your account hasn't already done so before May 19, 2021. If you have already created servers with EndpointType=VPC_ENDPOINT in your AWS account on or before May 19, 2021, you will not be affected. After this date, use EndpointType = VPC .

    For more information, see Discontinuing the use of VPC_ENDPOINT .

    It is recommended that you use VPC as the EndpointType . With this endpoint type, you have the option to directly associate up to three Elastic IPv4 addresses (BYO IP included) with your server's endpoint and use VPC security groups to restrict traffic by the client's public IP address. This is not possible with EndpointType set to VPC_ENDPOINT .

    identity_provider_details ServerIdentityProviderDetails
    Required when IdentityProviderType is set to AWS_DIRECTORY_SERVICE , AWS _LAMBDA or API_GATEWAY . Accepts an array containing all of the information required to use a directory in AWS_DIRECTORY_SERVICE or invoke a customer-supplied authentication API, including the API Gateway URL. Cannot be specified when IdentityProviderType is set to SERVICE_MANAGED .
    logging_role str
    The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFSevents. When set, you can view user activity in your CloudWatch logs.
    post_authentication_login_banner str

    Specifies a string to display when users connect to a server. This string is displayed after the user authenticates.

    The SFTP protocol does not support post-authentication display banners.

    pre_authentication_login_banner str

    Specifies a string to display when users connect to a server. This string is displayed before the user authenticates. For example, the following banner displays details about using the system:

    This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.

    protocol_details ServerProtocolDetails

    The protocol settings that are configured for your server.

    • To indicate passive mode (for FTP and FTPS protocols), use the PassiveIp parameter. Enter a single dotted-quad IPv4 address, such as the external IP address of a firewall, router, or load balancer.
    • To ignore the error that is generated when the client attempts to use the SETSTAT command on a file that you are uploading to an Amazon S3 bucket, use the SetStatOption parameter. To have the AWS Transfer Family server ignore the SETSTAT command and upload files without needing to make any changes to your SFTP client, set the value to ENABLE_NO_OP . If you set the SetStatOption parameter to ENABLE_NO_OP , Transfer Family generates a log entry to Amazon CloudWatch Logs, so that you can determine when the client is making a SETSTAT call.
    • To determine whether your AWS Transfer Family server resumes recent, negotiated sessions through a unique session ID, use the TlsSessionResumptionMode parameter.
    • As2Transports indicates the transport method for the AS2 messages. Currently, only HTTP is supported.

    The Protocols parameter is an array of strings.

    Allowed values : One or more of SFTP , FTPS , FTP , AS2

    protocols Sequence[ServerProtocol]

    Specifies the file transfer protocol or protocols over which your file transfer protocol client can connect to your server's endpoint. The available protocols are:

    • SFTP (Secure Shell (SSH) File Transfer Protocol): File transfer over SSH
    • FTPS (File Transfer Protocol Secure): File transfer with TLS encryption
    • FTP (File Transfer Protocol): Unencrypted file transfer
    • AS2 (Applicability Statement 2): used for transporting structured business-to-business data
    • If you select FTPS , you must choose a certificate stored in AWS Certificate Manager (ACM) which is used to identify your server when clients connect to it over FTPS.
    • If Protocol includes either FTP or FTPS , then the EndpointType must be VPC and the IdentityProviderType must be either AWS_DIRECTORY_SERVICE , AWS_LAMBDA , or API_GATEWAY .
    • If Protocol includes FTP , then AddressAllocationIds cannot be associated.
    • If Protocol is set only to SFTP , the EndpointType can be set to PUBLIC and the IdentityProviderType can be set any of the supported identity types: SERVICE_MANAGED , AWS_DIRECTORY_SERVICE , AWS_LAMBDA , or API_GATEWAY .
    • If Protocol includes AS2 , then the EndpointType must be VPC , and domain must be Amazon S3.

    The Protocols parameter is an array of strings.

    Allowed values : One or more of SFTP , FTPS , FTP , AS2

    s3_storage_options ServerS3StorageOptions

    Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default.

    By default, home directory mappings have a TYPE of DIRECTORY . If you enable this option, you would then need to explicitly set the HomeDirectoryMapEntry Type to FILE if you want a mapping to have a file target.

    security_policy_name str
    Specifies the name of the security policy for the server.
    server_id str

    The service-assigned ID of the server that is created.

    An example ServerId is s-01234567890abcdef .

    structured_log_destinations Sequence[str]

    Specifies the log groups to which your server logs are sent.

    To specify a log group, you must provide the ARN for an existing log group. In this case, the format of the log group is as follows:

    arn:aws:logs:region-name:amazon-account-id:log-group:log-group-name:*

    For example, arn:aws:logs:us-east-1:111122223333:log-group:mytestgroup:*

    If you have previously specified a log group for a server, you can clear it, and in effect turn off structured logging, by providing an empty value for this parameter in an update-server call. For example:

    update-server --server-id s-1234567890abcdef0 --structured-log-destinations

    tags Sequence[root_Tag]
    Key-value pairs that can be used to group and search for servers.
    workflow_details ServerWorkflowDetails

    Specifies the workflow ID for the workflow to assign and the execution role that's used for executing the workflow.

    In addition to a workflow to execute when a file is uploaded completely, WorkflowDetails can also contain a workflow ID (and execution role) for a workflow to execute on partial upload. A partial upload occurs when a file is open when the session disconnects.

    arn String

    The Amazon Resource Name associated with the server, in the form arn:aws:transfer:region: *account-id* :server/ *server-id* / .

    An example of a server ARN is: arn:aws:transfer:us-east-1:123456789012:server/s-01234567890abcdef .

    as2ServiceManagedEgressIpAddresses List<String>
    The list of egress IP addresses of this server. These IP addresses are only relevant for servers that use the AS2 protocol. They are used for sending asynchronous MDNs. These IP addresses are assigned automatically when you create an AS2 server. Additionally, if you update an existing server and add the AS2 protocol, static IP addresses are assigned as well.
    certificate String

    The Amazon Resource Name (ARN) of the AWS Certificate Manager (ACM) certificate. Required when Protocols is set to FTPS .

    To request a new public certificate, see Request a public certificate in the AWS Certificate Manager User Guide .

    To import an existing certificate into ACM, see Importing certificates into ACM in the AWS Certificate Manager User Guide .

    To request a private certificate to use FTPS through private IP addresses, see Request a private certificate in the AWS Certificate Manager User Guide .

    Certificates with the following cryptographic algorithms and key sizes are supported:

    • 2048-bit RSA (RSA_2048)
    • 4096-bit RSA (RSA_4096)
    • Elliptic Prime Curve 256 bit (EC_prime256v1)
    • Elliptic Prime Curve 384 bit (EC_secp384r1)
    • Elliptic Prime Curve 521 bit (EC_secp521r1)

    The certificate must be a valid SSL/TLS X.509 version 3 certificate with FQDN or IP address specified and information about the issuer.

    endpointDetails Property Map
    The virtual private cloud (VPC) endpoint settings that are configured for your server. When you host your endpoint within your VPC, you can make your endpoint accessible only to resources within your VPC, or you can attach Elastic IP addresses and make your endpoint accessible to clients over the internet. Your VPC's default security groups are automatically assigned to your endpoint.
    endpointType "PUBLIC" | "VPC" | "VPC_ENDPOINT"

    The type of endpoint that you want your server to use. You can choose to make your server's endpoint publicly accessible (PUBLIC) or host it inside your VPC. With an endpoint that is hosted in a VPC, you can restrict access to your server and resources only within your VPC or choose to make it internet facing by attaching Elastic IP addresses directly to it.

    After May 19, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT in your AWS account if your account hasn't already done so before May 19, 2021. If you have already created servers with EndpointType=VPC_ENDPOINT in your AWS account on or before May 19, 2021, you will not be affected. After this date, use EndpointType = VPC .

    For more information, see Discontinuing the use of VPC_ENDPOINT .

    It is recommended that you use VPC as the EndpointType . With this endpoint type, you have the option to directly associate up to three Elastic IPv4 addresses (BYO IP included) with your server's endpoint and use VPC security groups to restrict traffic by the client's public IP address. This is not possible with EndpointType set to VPC_ENDPOINT .

    identityProviderDetails Property Map
    Required when IdentityProviderType is set to AWS_DIRECTORY_SERVICE , AWS _LAMBDA or API_GATEWAY . Accepts an array containing all of the information required to use a directory in AWS_DIRECTORY_SERVICE or invoke a customer-supplied authentication API, including the API Gateway URL. Cannot be specified when IdentityProviderType is set to SERVICE_MANAGED .
    loggingRole String
    The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFSevents. When set, you can view user activity in your CloudWatch logs.
    postAuthenticationLoginBanner String

    Specifies a string to display when users connect to a server. This string is displayed after the user authenticates.

    The SFTP protocol does not support post-authentication display banners.

    preAuthenticationLoginBanner String

    Specifies a string to display when users connect to a server. This string is displayed before the user authenticates. For example, the following banner displays details about using the system:

    This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.

    protocolDetails Property Map

    The protocol settings that are configured for your server.

    • To indicate passive mode (for FTP and FTPS protocols), use the PassiveIp parameter. Enter a single dotted-quad IPv4 address, such as the external IP address of a firewall, router, or load balancer.
    • To ignore the error that is generated when the client attempts to use the SETSTAT command on a file that you are uploading to an Amazon S3 bucket, use the SetStatOption parameter. To have the AWS Transfer Family server ignore the SETSTAT command and upload files without needing to make any changes to your SFTP client, set the value to ENABLE_NO_OP . If you set the SetStatOption parameter to ENABLE_NO_OP , Transfer Family generates a log entry to Amazon CloudWatch Logs, so that you can determine when the client is making a SETSTAT call.
    • To determine whether your AWS Transfer Family server resumes recent, negotiated sessions through a unique session ID, use the TlsSessionResumptionMode parameter.
    • As2Transports indicates the transport method for the AS2 messages. Currently, only HTTP is supported.

    The Protocols parameter is an array of strings.

    Allowed values : One or more of SFTP , FTPS , FTP , AS2

    protocols List<"SFTP" | "FTP" | "FTPS" | "AS2">

    Specifies the file transfer protocol or protocols over which your file transfer protocol client can connect to your server's endpoint. The available protocols are:

    • SFTP (Secure Shell (SSH) File Transfer Protocol): File transfer over SSH
    • FTPS (File Transfer Protocol Secure): File transfer with TLS encryption
    • FTP (File Transfer Protocol): Unencrypted file transfer
    • AS2 (Applicability Statement 2): used for transporting structured business-to-business data
    • If you select FTPS , you must choose a certificate stored in AWS Certificate Manager (ACM) which is used to identify your server when clients connect to it over FTPS.
    • If Protocol includes either FTP or FTPS , then the EndpointType must be VPC and the IdentityProviderType must be either AWS_DIRECTORY_SERVICE , AWS_LAMBDA , or API_GATEWAY .
    • If Protocol includes FTP , then AddressAllocationIds cannot be associated.
    • If Protocol is set only to SFTP , the EndpointType can be set to PUBLIC and the IdentityProviderType can be set any of the supported identity types: SERVICE_MANAGED , AWS_DIRECTORY_SERVICE , AWS_LAMBDA , or API_GATEWAY .
    • If Protocol includes AS2 , then the EndpointType must be VPC , and domain must be Amazon S3.

    The Protocols parameter is an array of strings.

    Allowed values : One or more of SFTP , FTPS , FTP , AS2

    s3StorageOptions Property Map

    Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default.

    By default, home directory mappings have a TYPE of DIRECTORY . If you enable this option, you would then need to explicitly set the HomeDirectoryMapEntry Type to FILE if you want a mapping to have a file target.

    securityPolicyName String
    Specifies the name of the security policy for the server.
    serverId String

    The service-assigned ID of the server that is created.

    An example ServerId is s-01234567890abcdef .

    structuredLogDestinations List<String>

    Specifies the log groups to which your server logs are sent.

    To specify a log group, you must provide the ARN for an existing log group. In this case, the format of the log group is as follows:

    arn:aws:logs:region-name:amazon-account-id:log-group:log-group-name:*

    For example, arn:aws:logs:us-east-1:111122223333:log-group:mytestgroup:*

    If you have previously specified a log group for a server, you can clear it, and in effect turn off structured logging, by providing an empty value for this parameter in an update-server call. For example:

    update-server --server-id s-1234567890abcdef0 --structured-log-destinations

    tags List<Property Map>
    Key-value pairs that can be used to group and search for servers.
    workflowDetails Property Map

    Specifies the workflow ID for the workflow to assign and the execution role that's used for executing the workflow.

    In addition to a workflow to execute when a file is uploaded completely, WorkflowDetails can also contain a workflow ID (and execution role) for a workflow to execute on partial upload. A partial upload occurs when a file is open when the session disconnects.

    Supporting Types

    ServerAs2Transport

    ServerDirectoryListingOptimization

    ServerEndpointDetails

    AddressAllocationIds List<string>

    A list of address allocation IDs that are required to attach an Elastic IP address to your server's endpoint.

    An address allocation ID corresponds to the allocation ID of an Elastic IP address. This value can be retrieved from the allocationId field from the Amazon EC2 Address data type. One way to retrieve this value is by calling the EC2 DescribeAddresses API.

    This parameter is optional. Set this parameter if you want to make your VPC endpoint public-facing. For details, see Create an internet-facing endpoint for your server .

    This property can only be set as follows:

    • EndpointType must be set to VPC
    • The Transfer Family server must be offline.
    • You cannot set this parameter for Transfer Family servers that use the FTP protocol.
    • The server must already have SubnetIds populated ( SubnetIds and AddressAllocationIds cannot be updated simultaneously).
    • AddressAllocationIds can't contain duplicates, and must be equal in length to SubnetIds . For example, if you have three subnet IDs, you must also specify three address allocation IDs.
    • Call the UpdateServer API to set or change this parameter.
    SecurityGroupIds List<string>

    A list of security groups IDs that are available to attach to your server's endpoint.

    This property can only be set when EndpointType is set to VPC .

    You can edit the SecurityGroupIds property in the UpdateServer API only if you are changing the EndpointType from PUBLIC or VPC_ENDPOINT to VPC . To change security groups associated with your server's VPC endpoint after creation, use the Amazon EC2 ModifyVpcEndpoint API.

    SubnetIds List<string>

    A list of subnet IDs that are required to host your server endpoint in your VPC.

    This property can only be set when EndpointType is set to VPC .

    VpcEndpointId string

    The ID of the VPC endpoint.

    This property can only be set when EndpointType is set to VPC_ENDPOINT .

    VpcId string

    The VPC ID of the virtual private cloud in which the server's endpoint will be hosted.

    This property can only be set when EndpointType is set to VPC .

    AddressAllocationIds []string

    A list of address allocation IDs that are required to attach an Elastic IP address to your server's endpoint.

    An address allocation ID corresponds to the allocation ID of an Elastic IP address. This value can be retrieved from the allocationId field from the Amazon EC2 Address data type. One way to retrieve this value is by calling the EC2 DescribeAddresses API.

    This parameter is optional. Set this parameter if you want to make your VPC endpoint public-facing. For details, see Create an internet-facing endpoint for your server .

    This property can only be set as follows:

    • EndpointType must be set to VPC
    • The Transfer Family server must be offline.
    • You cannot set this parameter for Transfer Family servers that use the FTP protocol.
    • The server must already have SubnetIds populated ( SubnetIds and AddressAllocationIds cannot be updated simultaneously).
    • AddressAllocationIds can't contain duplicates, and must be equal in length to SubnetIds . For example, if you have three subnet IDs, you must also specify three address allocation IDs.
    • Call the UpdateServer API to set or change this parameter.
    SecurityGroupIds []string

    A list of security groups IDs that are available to attach to your server's endpoint.

    This property can only be set when EndpointType is set to VPC .

    You can edit the SecurityGroupIds property in the UpdateServer API only if you are changing the EndpointType from PUBLIC or VPC_ENDPOINT to VPC . To change security groups associated with your server's VPC endpoint after creation, use the Amazon EC2 ModifyVpcEndpoint API.

    SubnetIds []string

    A list of subnet IDs that are required to host your server endpoint in your VPC.

    This property can only be set when EndpointType is set to VPC .

    VpcEndpointId string

    The ID of the VPC endpoint.

    This property can only be set when EndpointType is set to VPC_ENDPOINT .

    VpcId string

    The VPC ID of the virtual private cloud in which the server's endpoint will be hosted.

    This property can only be set when EndpointType is set to VPC .

    addressAllocationIds List<String>

    A list of address allocation IDs that are required to attach an Elastic IP address to your server's endpoint.

    An address allocation ID corresponds to the allocation ID of an Elastic IP address. This value can be retrieved from the allocationId field from the Amazon EC2 Address data type. One way to retrieve this value is by calling the EC2 DescribeAddresses API.

    This parameter is optional. Set this parameter if you want to make your VPC endpoint public-facing. For details, see Create an internet-facing endpoint for your server .

    This property can only be set as follows:

    • EndpointType must be set to VPC
    • The Transfer Family server must be offline.
    • You cannot set this parameter for Transfer Family servers that use the FTP protocol.
    • The server must already have SubnetIds populated ( SubnetIds and AddressAllocationIds cannot be updated simultaneously).
    • AddressAllocationIds can't contain duplicates, and must be equal in length to SubnetIds . For example, if you have three subnet IDs, you must also specify three address allocation IDs.
    • Call the UpdateServer API to set or change this parameter.
    securityGroupIds List<String>

    A list of security groups IDs that are available to attach to your server's endpoint.

    This property can only be set when EndpointType is set to VPC .

    You can edit the SecurityGroupIds property in the UpdateServer API only if you are changing the EndpointType from PUBLIC or VPC_ENDPOINT to VPC . To change security groups associated with your server's VPC endpoint after creation, use the Amazon EC2 ModifyVpcEndpoint API.

    subnetIds List<String>

    A list of subnet IDs that are required to host your server endpoint in your VPC.

    This property can only be set when EndpointType is set to VPC .

    vpcEndpointId String

    The ID of the VPC endpoint.

    This property can only be set when EndpointType is set to VPC_ENDPOINT .

    vpcId String

    The VPC ID of the virtual private cloud in which the server's endpoint will be hosted.

    This property can only be set when EndpointType is set to VPC .

    addressAllocationIds string[]

    A list of address allocation IDs that are required to attach an Elastic IP address to your server's endpoint.

    An address allocation ID corresponds to the allocation ID of an Elastic IP address. This value can be retrieved from the allocationId field from the Amazon EC2 Address data type. One way to retrieve this value is by calling the EC2 DescribeAddresses API.

    This parameter is optional. Set this parameter if you want to make your VPC endpoint public-facing. For details, see Create an internet-facing endpoint for your server .

    This property can only be set as follows:

    • EndpointType must be set to VPC
    • The Transfer Family server must be offline.
    • You cannot set this parameter for Transfer Family servers that use the FTP protocol.
    • The server must already have SubnetIds populated ( SubnetIds and AddressAllocationIds cannot be updated simultaneously).
    • AddressAllocationIds can't contain duplicates, and must be equal in length to SubnetIds . For example, if you have three subnet IDs, you must also specify three address allocation IDs.
    • Call the UpdateServer API to set or change this parameter.
    securityGroupIds string[]

    A list of security groups IDs that are available to attach to your server's endpoint.

    This property can only be set when EndpointType is set to VPC .

    You can edit the SecurityGroupIds property in the UpdateServer API only if you are changing the EndpointType from PUBLIC or VPC_ENDPOINT to VPC . To change security groups associated with your server's VPC endpoint after creation, use the Amazon EC2 ModifyVpcEndpoint API.

    subnetIds string[]

    A list of subnet IDs that are required to host your server endpoint in your VPC.

    This property can only be set when EndpointType is set to VPC .

    vpcEndpointId string

    The ID of the VPC endpoint.

    This property can only be set when EndpointType is set to VPC_ENDPOINT .

    vpcId string

    The VPC ID of the virtual private cloud in which the server's endpoint will be hosted.

    This property can only be set when EndpointType is set to VPC .

    address_allocation_ids Sequence[str]

    A list of address allocation IDs that are required to attach an Elastic IP address to your server's endpoint.

    An address allocation ID corresponds to the allocation ID of an Elastic IP address. This value can be retrieved from the allocationId field from the Amazon EC2 Address data type. One way to retrieve this value is by calling the EC2 DescribeAddresses API.

    This parameter is optional. Set this parameter if you want to make your VPC endpoint public-facing. For details, see Create an internet-facing endpoint for your server .

    This property can only be set as follows:

    • EndpointType must be set to VPC
    • The Transfer Family server must be offline.
    • You cannot set this parameter for Transfer Family servers that use the FTP protocol.
    • The server must already have SubnetIds populated ( SubnetIds and AddressAllocationIds cannot be updated simultaneously).
    • AddressAllocationIds can't contain duplicates, and must be equal in length to SubnetIds . For example, if you have three subnet IDs, you must also specify three address allocation IDs.
    • Call the UpdateServer API to set or change this parameter.
    security_group_ids Sequence[str]

    A list of security groups IDs that are available to attach to your server's endpoint.

    This property can only be set when EndpointType is set to VPC .

    You can edit the SecurityGroupIds property in the UpdateServer API only if you are changing the EndpointType from PUBLIC or VPC_ENDPOINT to VPC . To change security groups associated with your server's VPC endpoint after creation, use the Amazon EC2 ModifyVpcEndpoint API.

    subnet_ids Sequence[str]

    A list of subnet IDs that are required to host your server endpoint in your VPC.

    This property can only be set when EndpointType is set to VPC .

    vpc_endpoint_id str

    The ID of the VPC endpoint.

    This property can only be set when EndpointType is set to VPC_ENDPOINT .

    vpc_id str

    The VPC ID of the virtual private cloud in which the server's endpoint will be hosted.

    This property can only be set when EndpointType is set to VPC .

    addressAllocationIds List<String>

    A list of address allocation IDs that are required to attach an Elastic IP address to your server's endpoint.

    An address allocation ID corresponds to the allocation ID of an Elastic IP address. This value can be retrieved from the allocationId field from the Amazon EC2 Address data type. One way to retrieve this value is by calling the EC2 DescribeAddresses API.

    This parameter is optional. Set this parameter if you want to make your VPC endpoint public-facing. For details, see Create an internet-facing endpoint for your server .

    This property can only be set as follows:

    • EndpointType must be set to VPC
    • The Transfer Family server must be offline.
    • You cannot set this parameter for Transfer Family servers that use the FTP protocol.
    • The server must already have SubnetIds populated ( SubnetIds and AddressAllocationIds cannot be updated simultaneously).
    • AddressAllocationIds can't contain duplicates, and must be equal in length to SubnetIds . For example, if you have three subnet IDs, you must also specify three address allocation IDs.
    • Call the UpdateServer API to set or change this parameter.
    securityGroupIds List<String>

    A list of security groups IDs that are available to attach to your server's endpoint.

    This property can only be set when EndpointType is set to VPC .

    You can edit the SecurityGroupIds property in the UpdateServer API only if you are changing the EndpointType from PUBLIC or VPC_ENDPOINT to VPC . To change security groups associated with your server's VPC endpoint after creation, use the Amazon EC2 ModifyVpcEndpoint API.

    subnetIds List<String>

    A list of subnet IDs that are required to host your server endpoint in your VPC.

    This property can only be set when EndpointType is set to VPC .

    vpcEndpointId String

    The ID of the VPC endpoint.

    This property can only be set when EndpointType is set to VPC_ENDPOINT .

    vpcId String

    The VPC ID of the virtual private cloud in which the server's endpoint will be hosted.

    This property can only be set when EndpointType is set to VPC .

    ServerEndpointType

    ServerIdentityProviderDetails

    DirectoryId string
    The identifier of the AWS Directory Service directory that you want to use as your identity provider.
    Function string
    The ARN for a Lambda function to use for the Identity provider.
    InvocationRole string
    This parameter is only applicable if your IdentityProviderType is API_GATEWAY . Provides the type of InvocationRole used to authenticate the user account.
    SftpAuthenticationMethods Pulumi.AwsNative.Transfer.ServerSftpAuthenticationMethods
    For SFTP-enabled servers, and for custom identity providers only , you can specify whether to authenticate using a password, SSH key pair, or both.

    • PASSWORD - users must provide their password to connect.
    • PUBLIC_KEY - users must provide their private key to connect.
    • PUBLIC_KEY_OR_PASSWORD - users can authenticate with either their password or their key. This is the default value.
    • PUBLIC_KEY_AND_PASSWORD - users must provide both their private key and their password to connect. The server checks the key first, and then if the key is valid, the system prompts for a password. If the private key provided does not match the public key that is stored, authentication fails.
    Url string
    Provides the location of the service endpoint used to authenticate users.
    DirectoryId string
    The identifier of the AWS Directory Service directory that you want to use as your identity provider.
    Function string
    The ARN for a Lambda function to use for the Identity provider.
    InvocationRole string
    This parameter is only applicable if your IdentityProviderType is API_GATEWAY . Provides the type of InvocationRole used to authenticate the user account.
    SftpAuthenticationMethods ServerSftpAuthenticationMethods
    For SFTP-enabled servers, and for custom identity providers only , you can specify whether to authenticate using a password, SSH key pair, or both.

    • PASSWORD - users must provide their password to connect.
    • PUBLIC_KEY - users must provide their private key to connect.
    • PUBLIC_KEY_OR_PASSWORD - users can authenticate with either their password or their key. This is the default value.
    • PUBLIC_KEY_AND_PASSWORD - users must provide both their private key and their password to connect. The server checks the key first, and then if the key is valid, the system prompts for a password. If the private key provided does not match the public key that is stored, authentication fails.
    Url string
    Provides the location of the service endpoint used to authenticate users.
    directoryId String
    The identifier of the AWS Directory Service directory that you want to use as your identity provider.
    function String
    The ARN for a Lambda function to use for the Identity provider.
    invocationRole String
    This parameter is only applicable if your IdentityProviderType is API_GATEWAY . Provides the type of InvocationRole used to authenticate the user account.
    sftpAuthenticationMethods ServerSftpAuthenticationMethods
    For SFTP-enabled servers, and for custom identity providers only , you can specify whether to authenticate using a password, SSH key pair, or both.

    • PASSWORD - users must provide their password to connect.
    • PUBLIC_KEY - users must provide their private key to connect.
    • PUBLIC_KEY_OR_PASSWORD - users can authenticate with either their password or their key. This is the default value.
    • PUBLIC_KEY_AND_PASSWORD - users must provide both their private key and their password to connect. The server checks the key first, and then if the key is valid, the system prompts for a password. If the private key provided does not match the public key that is stored, authentication fails.
    url String
    Provides the location of the service endpoint used to authenticate users.
    directoryId string
    The identifier of the AWS Directory Service directory that you want to use as your identity provider.
    function string
    The ARN for a Lambda function to use for the Identity provider.
    invocationRole string
    This parameter is only applicable if your IdentityProviderType is API_GATEWAY . Provides the type of InvocationRole used to authenticate the user account.
    sftpAuthenticationMethods ServerSftpAuthenticationMethods
    For SFTP-enabled servers, and for custom identity providers only , you can specify whether to authenticate using a password, SSH key pair, or both.

    • PASSWORD - users must provide their password to connect.
    • PUBLIC_KEY - users must provide their private key to connect.
    • PUBLIC_KEY_OR_PASSWORD - users can authenticate with either their password or their key. This is the default value.
    • PUBLIC_KEY_AND_PASSWORD - users must provide both their private key and their password to connect. The server checks the key first, and then if the key is valid, the system prompts for a password. If the private key provided does not match the public key that is stored, authentication fails.
    url string
    Provides the location of the service endpoint used to authenticate users.
    directory_id str
    The identifier of the AWS Directory Service directory that you want to use as your identity provider.
    function str
    The ARN for a Lambda function to use for the Identity provider.
    invocation_role str
    This parameter is only applicable if your IdentityProviderType is API_GATEWAY . Provides the type of InvocationRole used to authenticate the user account.
    sftp_authentication_methods ServerSftpAuthenticationMethods
    For SFTP-enabled servers, and for custom identity providers only , you can specify whether to authenticate using a password, SSH key pair, or both.

    • PASSWORD - users must provide their password to connect.
    • PUBLIC_KEY - users must provide their private key to connect.
    • PUBLIC_KEY_OR_PASSWORD - users can authenticate with either their password or their key. This is the default value.
    • PUBLIC_KEY_AND_PASSWORD - users must provide both their private key and their password to connect. The server checks the key first, and then if the key is valid, the system prompts for a password. If the private key provided does not match the public key that is stored, authentication fails.
    url str
    Provides the location of the service endpoint used to authenticate users.
    directoryId String
    The identifier of the AWS Directory Service directory that you want to use as your identity provider.
    function String
    The ARN for a Lambda function to use for the Identity provider.
    invocationRole String
    This parameter is only applicable if your IdentityProviderType is API_GATEWAY . Provides the type of InvocationRole used to authenticate the user account.
    sftpAuthenticationMethods "PASSWORD" | "PUBLIC_KEY" | "PUBLIC_KEY_OR_PASSWORD" | "PUBLIC_KEY_AND_PASSWORD"
    For SFTP-enabled servers, and for custom identity providers only , you can specify whether to authenticate using a password, SSH key pair, or both.

    • PASSWORD - users must provide their password to connect.
    • PUBLIC_KEY - users must provide their private key to connect.
    • PUBLIC_KEY_OR_PASSWORD - users can authenticate with either their password or their key. This is the default value.
    • PUBLIC_KEY_AND_PASSWORD - users must provide both their private key and their password to connect. The server checks the key first, and then if the key is valid, the system prompts for a password. If the private key provided does not match the public key that is stored, authentication fails.
    url String
    Provides the location of the service endpoint used to authenticate users.

    ServerProtocol

    ServerProtocolDetails

    As2Transports List<Pulumi.AwsNative.Transfer.ServerAs2Transport>
    List of As2Transport objects.
    PassiveIp string

    Indicates passive mode, for FTP and FTPS protocols. Enter a single IPv4 address, such as the public IP address of a firewall, router, or load balancer. For example:

    aws transfer update-server --protocol-details PassiveIp=0.0.0.0

    Replace 0.0.0.0 in the example above with the actual IP address you want to use.

    If you change the PassiveIp value, you must stop and then restart your Transfer Family server for the change to take effect. For details on using passive mode (PASV) in a NAT environment, see Configuring your FTPS server behind a firewall or NAT with AWS Transfer Family .

    Special values

    The AUTO and 0.0.0.0 are special values for the PassiveIp parameter. The value PassiveIp=AUTO is assigned by default to FTP and FTPS type servers. In this case, the server automatically responds with one of the endpoint IPs within the PASV response. PassiveIp=0.0.0.0 has a more unique application for its usage. For example, if you have a High Availability (HA) Network Load Balancer (NLB) environment, where you have 3 subnets, you can only specify a single IP address using the PassiveIp parameter. This reduces the effectiveness of having High Availability. In this case, you can specify PassiveIp=0.0.0.0 . This tells the client to use the same IP address as the Control connection and utilize all AZs for their connections. Note, however, that not all FTP clients support the PassiveIp=0.0.0.0 response. FileZilla and WinSCP do support it. If you are using other clients, check to see if your client supports the PassiveIp=0.0.0.0 response.

    SetStatOption Pulumi.AwsNative.Transfer.ServerSetStatOption

    Use the SetStatOption to ignore the error that is generated when the client attempts to use SETSTAT on a file you are uploading to an S3 bucket.

    Some SFTP file transfer clients can attempt to change the attributes of remote files, including timestamp and permissions, using commands, such as SETSTAT when uploading the file. However, these commands are not compatible with object storage systems, such as Amazon S3. Due to this incompatibility, file uploads from these clients can result in errors even when the file is otherwise successfully uploaded.

    Set the value to ENABLE_NO_OP to have the Transfer Family server ignore the SETSTAT command, and upload files without needing to make any changes to your SFTP client. While the SetStatOption ENABLE_NO_OP setting ignores the error, it does generate a log entry in Amazon CloudWatch Logs, so you can determine when the client is making a SETSTAT call.

    If you want to preserve the original timestamp for your file, and modify other file attributes using SETSTAT , you can use Amazon EFS as backend storage with Transfer Family.

    TlsSessionResumptionMode Pulumi.AwsNative.Transfer.ServerTlsSessionResumptionMode

    A property used with Transfer Family servers that use the FTPS protocol. TLS Session Resumption provides a mechanism to resume or share a negotiated secret key between the control and data connection for an FTPS session. TlsSessionResumptionMode determines whether or not the server resumes recent, negotiated sessions through a unique session ID. This property is available during CreateServer and UpdateServer calls. If a TlsSessionResumptionMode value is not specified during CreateServer , it is set to ENFORCED by default.

    • DISABLED : the server does not process TLS session resumption client requests and creates a new TLS session for each request.
    • ENABLED : the server processes and accepts clients that are performing TLS session resumption. The server doesn't reject client data connections that do not perform the TLS session resumption client processing.
    • ENFORCED : the server processes and accepts clients that are performing TLS session resumption. The server rejects client data connections that do not perform the TLS session resumption client processing. Before you set the value to ENFORCED , test your clients.

    Not all FTPS clients perform TLS session resumption. So, if you choose to enforce TLS session resumption, you prevent any connections from FTPS clients that don't perform the protocol negotiation. To determine whether or not you can use the ENFORCED value, you need to test your clients.

    As2Transports []ServerAs2Transport
    List of As2Transport objects.
    PassiveIp string

    Indicates passive mode, for FTP and FTPS protocols. Enter a single IPv4 address, such as the public IP address of a firewall, router, or load balancer. For example:

    aws transfer update-server --protocol-details PassiveIp=0.0.0.0

    Replace 0.0.0.0 in the example above with the actual IP address you want to use.

    If you change the PassiveIp value, you must stop and then restart your Transfer Family server for the change to take effect. For details on using passive mode (PASV) in a NAT environment, see Configuring your FTPS server behind a firewall or NAT with AWS Transfer Family .

    Special values

    The AUTO and 0.0.0.0 are special values for the PassiveIp parameter. The value PassiveIp=AUTO is assigned by default to FTP and FTPS type servers. In this case, the server automatically responds with one of the endpoint IPs within the PASV response. PassiveIp=0.0.0.0 has a more unique application for its usage. For example, if you have a High Availability (HA) Network Load Balancer (NLB) environment, where you have 3 subnets, you can only specify a single IP address using the PassiveIp parameter. This reduces the effectiveness of having High Availability. In this case, you can specify PassiveIp=0.0.0.0 . This tells the client to use the same IP address as the Control connection and utilize all AZs for their connections. Note, however, that not all FTP clients support the PassiveIp=0.0.0.0 response. FileZilla and WinSCP do support it. If you are using other clients, check to see if your client supports the PassiveIp=0.0.0.0 response.

    SetStatOption ServerSetStatOption

    Use the SetStatOption to ignore the error that is generated when the client attempts to use SETSTAT on a file you are uploading to an S3 bucket.

    Some SFTP file transfer clients can attempt to change the attributes of remote files, including timestamp and permissions, using commands, such as SETSTAT when uploading the file. However, these commands are not compatible with object storage systems, such as Amazon S3. Due to this incompatibility, file uploads from these clients can result in errors even when the file is otherwise successfully uploaded.

    Set the value to ENABLE_NO_OP to have the Transfer Family server ignore the SETSTAT command, and upload files without needing to make any changes to your SFTP client. While the SetStatOption ENABLE_NO_OP setting ignores the error, it does generate a log entry in Amazon CloudWatch Logs, so you can determine when the client is making a SETSTAT call.

    If you want to preserve the original timestamp for your file, and modify other file attributes using SETSTAT , you can use Amazon EFS as backend storage with Transfer Family.

    TlsSessionResumptionMode ServerTlsSessionResumptionMode

    A property used with Transfer Family servers that use the FTPS protocol. TLS Session Resumption provides a mechanism to resume or share a negotiated secret key between the control and data connection for an FTPS session. TlsSessionResumptionMode determines whether or not the server resumes recent, negotiated sessions through a unique session ID. This property is available during CreateServer and UpdateServer calls. If a TlsSessionResumptionMode value is not specified during CreateServer , it is set to ENFORCED by default.

    • DISABLED : the server does not process TLS session resumption client requests and creates a new TLS session for each request.
    • ENABLED : the server processes and accepts clients that are performing TLS session resumption. The server doesn't reject client data connections that do not perform the TLS session resumption client processing.
    • ENFORCED : the server processes and accepts clients that are performing TLS session resumption. The server rejects client data connections that do not perform the TLS session resumption client processing. Before you set the value to ENFORCED , test your clients.

    Not all FTPS clients perform TLS session resumption. So, if you choose to enforce TLS session resumption, you prevent any connections from FTPS clients that don't perform the protocol negotiation. To determine whether or not you can use the ENFORCED value, you need to test your clients.

    as2Transports List<ServerAs2Transport>
    List of As2Transport objects.
    passiveIp String

    Indicates passive mode, for FTP and FTPS protocols. Enter a single IPv4 address, such as the public IP address of a firewall, router, or load balancer. For example:

    aws transfer update-server --protocol-details PassiveIp=0.0.0.0

    Replace 0.0.0.0 in the example above with the actual IP address you want to use.

    If you change the PassiveIp value, you must stop and then restart your Transfer Family server for the change to take effect. For details on using passive mode (PASV) in a NAT environment, see Configuring your FTPS server behind a firewall or NAT with AWS Transfer Family .

    Special values

    The AUTO and 0.0.0.0 are special values for the PassiveIp parameter. The value PassiveIp=AUTO is assigned by default to FTP and FTPS type servers. In this case, the server automatically responds with one of the endpoint IPs within the PASV response. PassiveIp=0.0.0.0 has a more unique application for its usage. For example, if you have a High Availability (HA) Network Load Balancer (NLB) environment, where you have 3 subnets, you can only specify a single IP address using the PassiveIp parameter. This reduces the effectiveness of having High Availability. In this case, you can specify PassiveIp=0.0.0.0 . This tells the client to use the same IP address as the Control connection and utilize all AZs for their connections. Note, however, that not all FTP clients support the PassiveIp=0.0.0.0 response. FileZilla and WinSCP do support it. If you are using other clients, check to see if your client supports the PassiveIp=0.0.0.0 response.

    setStatOption ServerSetStatOption

    Use the SetStatOption to ignore the error that is generated when the client attempts to use SETSTAT on a file you are uploading to an S3 bucket.

    Some SFTP file transfer clients can attempt to change the attributes of remote files, including timestamp and permissions, using commands, such as SETSTAT when uploading the file. However, these commands are not compatible with object storage systems, such as Amazon S3. Due to this incompatibility, file uploads from these clients can result in errors even when the file is otherwise successfully uploaded.

    Set the value to ENABLE_NO_OP to have the Transfer Family server ignore the SETSTAT command, and upload files without needing to make any changes to your SFTP client. While the SetStatOption ENABLE_NO_OP setting ignores the error, it does generate a log entry in Amazon CloudWatch Logs, so you can determine when the client is making a SETSTAT call.

    If you want to preserve the original timestamp for your file, and modify other file attributes using SETSTAT , you can use Amazon EFS as backend storage with Transfer Family.

    tlsSessionResumptionMode ServerTlsSessionResumptionMode

    A property used with Transfer Family servers that use the FTPS protocol. TLS Session Resumption provides a mechanism to resume or share a negotiated secret key between the control and data connection for an FTPS session. TlsSessionResumptionMode determines whether or not the server resumes recent, negotiated sessions through a unique session ID. This property is available during CreateServer and UpdateServer calls. If a TlsSessionResumptionMode value is not specified during CreateServer , it is set to ENFORCED by default.

    • DISABLED : the server does not process TLS session resumption client requests and creates a new TLS session for each request.
    • ENABLED : the server processes and accepts clients that are performing TLS session resumption. The server doesn't reject client data connections that do not perform the TLS session resumption client processing.
    • ENFORCED : the server processes and accepts clients that are performing TLS session resumption. The server rejects client data connections that do not perform the TLS session resumption client processing. Before you set the value to ENFORCED , test your clients.

    Not all FTPS clients perform TLS session resumption. So, if you choose to enforce TLS session resumption, you prevent any connections from FTPS clients that don't perform the protocol negotiation. To determine whether or not you can use the ENFORCED value, you need to test your clients.

    as2Transports ServerAs2Transport[]
    List of As2Transport objects.
    passiveIp string

    Indicates passive mode, for FTP and FTPS protocols. Enter a single IPv4 address, such as the public IP address of a firewall, router, or load balancer. For example:

    aws transfer update-server --protocol-details PassiveIp=0.0.0.0

    Replace 0.0.0.0 in the example above with the actual IP address you want to use.

    If you change the PassiveIp value, you must stop and then restart your Transfer Family server for the change to take effect. For details on using passive mode (PASV) in a NAT environment, see Configuring your FTPS server behind a firewall or NAT with AWS Transfer Family .

    Special values

    The AUTO and 0.0.0.0 are special values for the PassiveIp parameter. The value PassiveIp=AUTO is assigned by default to FTP and FTPS type servers. In this case, the server automatically responds with one of the endpoint IPs within the PASV response. PassiveIp=0.0.0.0 has a more unique application for its usage. For example, if you have a High Availability (HA) Network Load Balancer (NLB) environment, where you have 3 subnets, you can only specify a single IP address using the PassiveIp parameter. This reduces the effectiveness of having High Availability. In this case, you can specify PassiveIp=0.0.0.0 . This tells the client to use the same IP address as the Control connection and utilize all AZs for their connections. Note, however, that not all FTP clients support the PassiveIp=0.0.0.0 response. FileZilla and WinSCP do support it. If you are using other clients, check to see if your client supports the PassiveIp=0.0.0.0 response.

    setStatOption ServerSetStatOption

    Use the SetStatOption to ignore the error that is generated when the client attempts to use SETSTAT on a file you are uploading to an S3 bucket.

    Some SFTP file transfer clients can attempt to change the attributes of remote files, including timestamp and permissions, using commands, such as SETSTAT when uploading the file. However, these commands are not compatible with object storage systems, such as Amazon S3. Due to this incompatibility, file uploads from these clients can result in errors even when the file is otherwise successfully uploaded.

    Set the value to ENABLE_NO_OP to have the Transfer Family server ignore the SETSTAT command, and upload files without needing to make any changes to your SFTP client. While the SetStatOption ENABLE_NO_OP setting ignores the error, it does generate a log entry in Amazon CloudWatch Logs, so you can determine when the client is making a SETSTAT call.

    If you want to preserve the original timestamp for your file, and modify other file attributes using SETSTAT , you can use Amazon EFS as backend storage with Transfer Family.

    tlsSessionResumptionMode ServerTlsSessionResumptionMode

    A property used with Transfer Family servers that use the FTPS protocol. TLS Session Resumption provides a mechanism to resume or share a negotiated secret key between the control and data connection for an FTPS session. TlsSessionResumptionMode determines whether or not the server resumes recent, negotiated sessions through a unique session ID. This property is available during CreateServer and UpdateServer calls. If a TlsSessionResumptionMode value is not specified during CreateServer , it is set to ENFORCED by default.

    • DISABLED : the server does not process TLS session resumption client requests and creates a new TLS session for each request.
    • ENABLED : the server processes and accepts clients that are performing TLS session resumption. The server doesn't reject client data connections that do not perform the TLS session resumption client processing.
    • ENFORCED : the server processes and accepts clients that are performing TLS session resumption. The server rejects client data connections that do not perform the TLS session resumption client processing. Before you set the value to ENFORCED , test your clients.

    Not all FTPS clients perform TLS session resumption. So, if you choose to enforce TLS session resumption, you prevent any connections from FTPS clients that don't perform the protocol negotiation. To determine whether or not you can use the ENFORCED value, you need to test your clients.

    as2_transports Sequence[ServerAs2Transport]
    List of As2Transport objects.
    passive_ip str

    Indicates passive mode, for FTP and FTPS protocols. Enter a single IPv4 address, such as the public IP address of a firewall, router, or load balancer. For example:

    aws transfer update-server --protocol-details PassiveIp=0.0.0.0

    Replace 0.0.0.0 in the example above with the actual IP address you want to use.

    If you change the PassiveIp value, you must stop and then restart your Transfer Family server for the change to take effect. For details on using passive mode (PASV) in a NAT environment, see Configuring your FTPS server behind a firewall or NAT with AWS Transfer Family .

    Special values

    The AUTO and 0.0.0.0 are special values for the PassiveIp parameter. The value PassiveIp=AUTO is assigned by default to FTP and FTPS type servers. In this case, the server automatically responds with one of the endpoint IPs within the PASV response. PassiveIp=0.0.0.0 has a more unique application for its usage. For example, if you have a High Availability (HA) Network Load Balancer (NLB) environment, where you have 3 subnets, you can only specify a single IP address using the PassiveIp parameter. This reduces the effectiveness of having High Availability. In this case, you can specify PassiveIp=0.0.0.0 . This tells the client to use the same IP address as the Control connection and utilize all AZs for their connections. Note, however, that not all FTP clients support the PassiveIp=0.0.0.0 response. FileZilla and WinSCP do support it. If you are using other clients, check to see if your client supports the PassiveIp=0.0.0.0 response.

    set_stat_option ServerSetStatOption

    Use the SetStatOption to ignore the error that is generated when the client attempts to use SETSTAT on a file you are uploading to an S3 bucket.

    Some SFTP file transfer clients can attempt to change the attributes of remote files, including timestamp and permissions, using commands, such as SETSTAT when uploading the file. However, these commands are not compatible with object storage systems, such as Amazon S3. Due to this incompatibility, file uploads from these clients can result in errors even when the file is otherwise successfully uploaded.

    Set the value to ENABLE_NO_OP to have the Transfer Family server ignore the SETSTAT command, and upload files without needing to make any changes to your SFTP client. While the SetStatOption ENABLE_NO_OP setting ignores the error, it does generate a log entry in Amazon CloudWatch Logs, so you can determine when the client is making a SETSTAT call.

    If you want to preserve the original timestamp for your file, and modify other file attributes using SETSTAT , you can use Amazon EFS as backend storage with Transfer Family.

    tls_session_resumption_mode ServerTlsSessionResumptionMode

    A property used with Transfer Family servers that use the FTPS protocol. TLS Session Resumption provides a mechanism to resume or share a negotiated secret key between the control and data connection for an FTPS session. TlsSessionResumptionMode determines whether or not the server resumes recent, negotiated sessions through a unique session ID. This property is available during CreateServer and UpdateServer calls. If a TlsSessionResumptionMode value is not specified during CreateServer , it is set to ENFORCED by default.

    • DISABLED : the server does not process TLS session resumption client requests and creates a new TLS session for each request.
    • ENABLED : the server processes and accepts clients that are performing TLS session resumption. The server doesn't reject client data connections that do not perform the TLS session resumption client processing.
    • ENFORCED : the server processes and accepts clients that are performing TLS session resumption. The server rejects client data connections that do not perform the TLS session resumption client processing. Before you set the value to ENFORCED , test your clients.

    Not all FTPS clients perform TLS session resumption. So, if you choose to enforce TLS session resumption, you prevent any connections from FTPS clients that don't perform the protocol negotiation. To determine whether or not you can use the ENFORCED value, you need to test your clients.

    as2Transports List<"HTTP">
    List of As2Transport objects.
    passiveIp String

    Indicates passive mode, for FTP and FTPS protocols. Enter a single IPv4 address, such as the public IP address of a firewall, router, or load balancer. For example:

    aws transfer update-server --protocol-details PassiveIp=0.0.0.0

    Replace 0.0.0.0 in the example above with the actual IP address you want to use.

    If you change the PassiveIp value, you must stop and then restart your Transfer Family server for the change to take effect. For details on using passive mode (PASV) in a NAT environment, see Configuring your FTPS server behind a firewall or NAT with AWS Transfer Family .

    Special values

    The AUTO and 0.0.0.0 are special values for the PassiveIp parameter. The value PassiveIp=AUTO is assigned by default to FTP and FTPS type servers. In this case, the server automatically responds with one of the endpoint IPs within the PASV response. PassiveIp=0.0.0.0 has a more unique application for its usage. For example, if you have a High Availability (HA) Network Load Balancer (NLB) environment, where you have 3 subnets, you can only specify a single IP address using the PassiveIp parameter. This reduces the effectiveness of having High Availability. In this case, you can specify PassiveIp=0.0.0.0 . This tells the client to use the same IP address as the Control connection and utilize all AZs for their connections. Note, however, that not all FTP clients support the PassiveIp=0.0.0.0 response. FileZilla and WinSCP do support it. If you are using other clients, check to see if your client supports the PassiveIp=0.0.0.0 response.

    setStatOption "DEFAULT" | "ENABLE_NO_OP"

    Use the SetStatOption to ignore the error that is generated when the client attempts to use SETSTAT on a file you are uploading to an S3 bucket.

    Some SFTP file transfer clients can attempt to change the attributes of remote files, including timestamp and permissions, using commands, such as SETSTAT when uploading the file. However, these commands are not compatible with object storage systems, such as Amazon S3. Due to this incompatibility, file uploads from these clients can result in errors even when the file is otherwise successfully uploaded.

    Set the value to ENABLE_NO_OP to have the Transfer Family server ignore the SETSTAT command, and upload files without needing to make any changes to your SFTP client. While the SetStatOption ENABLE_NO_OP setting ignores the error, it does generate a log entry in Amazon CloudWatch Logs, so you can determine when the client is making a SETSTAT call.

    If you want to preserve the original timestamp for your file, and modify other file attributes using SETSTAT , you can use Amazon EFS as backend storage with Transfer Family.

    tlsSessionResumptionMode "DISABLED" | "ENABLED" | "ENFORCED"

    A property used with Transfer Family servers that use the FTPS protocol. TLS Session Resumption provides a mechanism to resume or share a negotiated secret key between the control and data connection for an FTPS session. TlsSessionResumptionMode determines whether or not the server resumes recent, negotiated sessions through a unique session ID. This property is available during CreateServer and UpdateServer calls. If a TlsSessionResumptionMode value is not specified during CreateServer , it is set to ENFORCED by default.

    • DISABLED : the server does not process TLS session resumption client requests and creates a new TLS session for each request.
    • ENABLED : the server processes and accepts clients that are performing TLS session resumption. The server doesn't reject client data connections that do not perform the TLS session resumption client processing.
    • ENFORCED : the server processes and accepts clients that are performing TLS session resumption. The server rejects client data connections that do not perform the TLS session resumption client processing. Before you set the value to ENFORCED , test your clients.

    Not all FTPS clients perform TLS session resumption. So, if you choose to enforce TLS session resumption, you prevent any connections from FTPS clients that don't perform the protocol negotiation. To determine whether or not you can use the ENFORCED value, you need to test your clients.

    ServerS3StorageOptions

    DirectoryListingOptimization Pulumi.AwsNative.Transfer.ServerDirectoryListingOptimization

    Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default.

    By default, home directory mappings have a TYPE of DIRECTORY . If you enable this option, you would then need to explicitly set the HomeDirectoryMapEntry Type to FILE if you want a mapping to have a file target.

    DirectoryListingOptimization ServerDirectoryListingOptimization

    Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default.

    By default, home directory mappings have a TYPE of DIRECTORY . If you enable this option, you would then need to explicitly set the HomeDirectoryMapEntry Type to FILE if you want a mapping to have a file target.

    directoryListingOptimization ServerDirectoryListingOptimization

    Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default.

    By default, home directory mappings have a TYPE of DIRECTORY . If you enable this option, you would then need to explicitly set the HomeDirectoryMapEntry Type to FILE if you want a mapping to have a file target.

    directoryListingOptimization ServerDirectoryListingOptimization

    Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default.

    By default, home directory mappings have a TYPE of DIRECTORY . If you enable this option, you would then need to explicitly set the HomeDirectoryMapEntry Type to FILE if you want a mapping to have a file target.

    directory_listing_optimization ServerDirectoryListingOptimization

    Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default.

    By default, home directory mappings have a TYPE of DIRECTORY . If you enable this option, you would then need to explicitly set the HomeDirectoryMapEntry Type to FILE if you want a mapping to have a file target.

    directoryListingOptimization "ENABLED" | "DISABLED"

    Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default.

    By default, home directory mappings have a TYPE of DIRECTORY . If you enable this option, you would then need to explicitly set the HomeDirectoryMapEntry Type to FILE if you want a mapping to have a file target.

    ServerSetStatOption

    ServerSftpAuthenticationMethods

    ServerTlsSessionResumptionMode

    ServerWorkflowDetail

    ExecutionRole string
    Includes the necessary permissions for S3, EFS, and Lambda operations that Transfer can assume, so that all workflow steps can operate on the required resources
    WorkflowId string
    A unique identifier for the workflow.
    ExecutionRole string
    Includes the necessary permissions for S3, EFS, and Lambda operations that Transfer can assume, so that all workflow steps can operate on the required resources
    WorkflowId string
    A unique identifier for the workflow.
    executionRole String
    Includes the necessary permissions for S3, EFS, and Lambda operations that Transfer can assume, so that all workflow steps can operate on the required resources
    workflowId String
    A unique identifier for the workflow.
    executionRole string
    Includes the necessary permissions for S3, EFS, and Lambda operations that Transfer can assume, so that all workflow steps can operate on the required resources
    workflowId string
    A unique identifier for the workflow.
    execution_role str
    Includes the necessary permissions for S3, EFS, and Lambda operations that Transfer can assume, so that all workflow steps can operate on the required resources
    workflow_id str
    A unique identifier for the workflow.
    executionRole String
    Includes the necessary permissions for S3, EFS, and Lambda operations that Transfer can assume, so that all workflow steps can operate on the required resources
    workflowId String
    A unique identifier for the workflow.

    ServerWorkflowDetails

    OnPartialUpload List<Pulumi.AwsNative.Transfer.Inputs.ServerWorkflowDetail>

    A trigger that starts a workflow if a file is only partially uploaded. You can attach a workflow to a server that executes whenever there is a partial upload.

    A partial upload occurs when a file is open when the session disconnects.

    OnPartialUpload can contain a maximum of one WorkflowDetail object.

    OnUpload List<Pulumi.AwsNative.Transfer.Inputs.ServerWorkflowDetail>

    A trigger that starts a workflow: the workflow begins to execute after a file is uploaded.

    To remove an associated workflow from a server, you can provide an empty OnUpload object, as in the following example.

    aws transfer update-server --server-id s-01234567890abcdef --workflow-details '{"OnUpload":[]}'

    OnUpload can contain a maximum of one WorkflowDetail object.

    OnPartialUpload []ServerWorkflowDetail

    A trigger that starts a workflow if a file is only partially uploaded. You can attach a workflow to a server that executes whenever there is a partial upload.

    A partial upload occurs when a file is open when the session disconnects.

    OnPartialUpload can contain a maximum of one WorkflowDetail object.

    OnUpload []ServerWorkflowDetail

    A trigger that starts a workflow: the workflow begins to execute after a file is uploaded.

    To remove an associated workflow from a server, you can provide an empty OnUpload object, as in the following example.

    aws transfer update-server --server-id s-01234567890abcdef --workflow-details '{"OnUpload":[]}'

    OnUpload can contain a maximum of one WorkflowDetail object.

    onPartialUpload List<ServerWorkflowDetail>

    A trigger that starts a workflow if a file is only partially uploaded. You can attach a workflow to a server that executes whenever there is a partial upload.

    A partial upload occurs when a file is open when the session disconnects.

    OnPartialUpload can contain a maximum of one WorkflowDetail object.

    onUpload List<ServerWorkflowDetail>

    A trigger that starts a workflow: the workflow begins to execute after a file is uploaded.

    To remove an associated workflow from a server, you can provide an empty OnUpload object, as in the following example.

    aws transfer update-server --server-id s-01234567890abcdef --workflow-details '{"OnUpload":[]}'

    OnUpload can contain a maximum of one WorkflowDetail object.

    onPartialUpload ServerWorkflowDetail[]

    A trigger that starts a workflow if a file is only partially uploaded. You can attach a workflow to a server that executes whenever there is a partial upload.

    A partial upload occurs when a file is open when the session disconnects.

    OnPartialUpload can contain a maximum of one WorkflowDetail object.

    onUpload ServerWorkflowDetail[]

    A trigger that starts a workflow: the workflow begins to execute after a file is uploaded.

    To remove an associated workflow from a server, you can provide an empty OnUpload object, as in the following example.

    aws transfer update-server --server-id s-01234567890abcdef --workflow-details '{"OnUpload":[]}'

    OnUpload can contain a maximum of one WorkflowDetail object.

    on_partial_upload Sequence[ServerWorkflowDetail]

    A trigger that starts a workflow if a file is only partially uploaded. You can attach a workflow to a server that executes whenever there is a partial upload.

    A partial upload occurs when a file is open when the session disconnects.

    OnPartialUpload can contain a maximum of one WorkflowDetail object.

    on_upload Sequence[ServerWorkflowDetail]

    A trigger that starts a workflow: the workflow begins to execute after a file is uploaded.

    To remove an associated workflow from a server, you can provide an empty OnUpload object, as in the following example.

    aws transfer update-server --server-id s-01234567890abcdef --workflow-details '{"OnUpload":[]}'

    OnUpload can contain a maximum of one WorkflowDetail object.

    onPartialUpload List<Property Map>

    A trigger that starts a workflow if a file is only partially uploaded. You can attach a workflow to a server that executes whenever there is a partial upload.

    A partial upload occurs when a file is open when the session disconnects.

    OnPartialUpload can contain a maximum of one WorkflowDetail object.

    onUpload List<Property Map>

    A trigger that starts a workflow: the workflow begins to execute after a file is uploaded.

    To remove an associated workflow from a server, you can provide an empty OnUpload object, as in the following example.

    aws transfer update-server --server-id s-01234567890abcdef --workflow-details '{"OnUpload":[]}'

    OnUpload can contain a maximum of one WorkflowDetail object.

    Tag

    Key string
    The key name of the tag
    Value string
    The value of the tag
    Key string
    The key name of the tag
    Value string
    The value of the tag
    key String
    The key name of the tag
    value String
    The value of the tag
    key string
    The key name of the tag
    value string
    The value of the tag
    key str
    The key name of the tag
    value str
    The value of the tag
    key String
    The key name of the tag
    value String
    The value of the tag

    Package Details

    Repository
    AWS Native pulumi/pulumi-aws-native
    License
    Apache-2.0
    aws-native logo

    We recommend new projects start with resources from the AWS provider.

    AWS Cloud Control v1.9.0 published on Monday, Nov 18, 2024 by Pulumi