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.27.0 published on Monday, Apr 14, 2025 by Pulumi

aws-native.transfer.getServer

Explore with Pulumi AI

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

AWS Cloud Control v1.27.0 published on Monday, Apr 14, 2025 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>
Copy
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]
Copy
func LookupServer(ctx *Context, args *LookupServerArgs, opts ...InvokeOption) (*LookupServerResult, error)
func LookupServerOutput(ctx *Context, args *LookupServerOutputArgs, opts ...InvokeOption) LookupServerResultOutput
Copy

> 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)
}
Copy
public static CompletableFuture<GetServerResult> getServer(GetServerArgs args, InvokeOptions options)
public static Output<GetServerResult> getServer(GetServerArgs args, InvokeOptions options)
Copy
fn::invoke:
  function: aws-native:transfer:getServer
  arguments:
    # arguments dictionary
Copy

The following arguments are supported:

Arn This property is required. string
Specifies the unique Amazon Resource Name (ARN) of the server.
Arn This property is required. string
Specifies the unique Amazon Resource Name (ARN) of the server.
arn This property is required. String
Specifies the unique Amazon Resource Name (ARN) of the server.
arn This property is required. string
Specifies the unique Amazon Resource Name (ARN) of the server.
arn This property is required. str
Specifies the unique Amazon Resource Name (ARN) of the server.
arn This property is required. String
Specifies the unique Amazon Resource Name (ARN) of the server.

getServer Result

The following output properties are available:

Arn string
Specifies the unique Amazon Resource Name (ARN) of the server.
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 EFS events. 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
Specifies the unique system-assigned identifier for a server that you instantiate.
State Pulumi.AwsNative.Transfer.ServerState

The condition of the server that was described. A value of ONLINE indicates that the server can accept jobs and transfer files. A State value of OFFLINE means that the server cannot perform file transfer operations.

The states of STARTING and STOPPING indicate that the server is in an intermediate state, either not fully able to respond, or not fully offline. The values of START_FAILED or STOP_FAILED can indicate an error condition.

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
Specifies the unique Amazon Resource Name (ARN) of the server.
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 EFS events. 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
Specifies the unique system-assigned identifier for a server that you instantiate.
State ServerStateEnum

The condition of the server that was described. A value of ONLINE indicates that the server can accept jobs and transfer files. A State value of OFFLINE means that the server cannot perform file transfer operations.

The states of STARTING and STOPPING indicate that the server is in an intermediate state, either not fully able to respond, or not fully offline. The values of START_FAILED or STOP_FAILED can indicate an error condition.

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
Specifies the unique Amazon Resource Name (ARN) of the server.
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 EFS events. 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
Specifies the unique system-assigned identifier for a server that you instantiate.
state ServerState

The condition of the server that was described. A value of ONLINE indicates that the server can accept jobs and transfer files. A State value of OFFLINE means that the server cannot perform file transfer operations.

The states of STARTING and STOPPING indicate that the server is in an intermediate state, either not fully able to respond, or not fully offline. The values of START_FAILED or STOP_FAILED can indicate an error condition.

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
Specifies the unique Amazon Resource Name (ARN) of the server.
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 EFS events. 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
Specifies the unique system-assigned identifier for a server that you instantiate.
state ServerState

The condition of the server that was described. A value of ONLINE indicates that the server can accept jobs and transfer files. A State value of OFFLINE means that the server cannot perform file transfer operations.

The states of STARTING and STOPPING indicate that the server is in an intermediate state, either not fully able to respond, or not fully offline. The values of START_FAILED or STOP_FAILED can indicate an error condition.

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
Specifies the unique Amazon Resource Name (ARN) of the server.
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 EFS events. 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
Specifies the unique system-assigned identifier for a server that you instantiate.
state ServerState

The condition of the server that was described. A value of ONLINE indicates that the server can accept jobs and transfer files. A State value of OFFLINE means that the server cannot perform file transfer operations.

The states of STARTING and STOPPING indicate that the server is in an intermediate state, either not fully able to respond, or not fully offline. The values of START_FAILED or STOP_FAILED can indicate an error condition.

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
Specifies the unique Amazon Resource Name (ARN) of the server.
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 EFS events. 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
Specifies the unique system-assigned identifier for a server that you instantiate.
state "OFFLINE" | "ONLINE" | "STARTING" | "STOPPING" | "START_FAILED" | "STOP_FAILED"

The condition of the server that was described. A value of ONLINE indicates that the server can accept jobs and transfer files. A State value of OFFLINE means that the server cannot perform file transfer operations.

The states of STARTING and STOPPING indicate that the server is in an intermediate state, either not fully able to respond, or not fully offline. The values of START_FAILED or STOP_FAILED can indicate an error condition.

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

ServerState

ServerTlsSessionResumptionMode

ServerWorkflowDetail

ExecutionRole This property is required. 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 This property is required. string
A unique identifier for the workflow.
ExecutionRole This property is required. 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 This property is required. string
A unique identifier for the workflow.
executionRole This property is required. 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 This property is required. String
A unique identifier for the workflow.
executionRole This property is required. 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 This property is required. string
A unique identifier for the workflow.
execution_role This property is required. 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 This property is required. str
A unique identifier for the workflow.
executionRole This property is required. 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 This property is required. 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 This property is required. string
The key name of the tag
Value This property is required. string
The value of the tag
Key This property is required. string
The key name of the tag
Value This property is required. string
The value of the tag
key This property is required. String
The key name of the tag
value This property is required. String
The value of the tag
key This property is required. string
The key name of the tag
value This property is required. string
The value of the tag
key This property is required. str
The key name of the tag
value This property is required. str
The value of the tag
key This property is required. String
The key name of the tag
value This property is required. String
The value of the tag

Package Details

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

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

AWS Cloud Control v1.27.0 published on Monday, Apr 14, 2025 by Pulumi