pub struct Client { /* private fields */ }
Expand description
Client for AWS Transfer Family
Client for invoking operations on AWS Transfer Family. Each operation on AWS Transfer Family is a method on this
this struct. .send()
MUST be invoked on the generated operations to dispatch the request to the service.
§Constructing a Client
A Config
is required to construct a client. For most use cases, the aws-config
crate should be used to automatically resolve this config using
aws_config::load_from_env()
, since this will resolve an SdkConfig
which can be shared
across multiple different AWS SDK clients. This config resolution process can be customized
by calling aws_config::from_env()
instead, which returns a ConfigLoader
that uses
the builder pattern to customize the default config.
In the simplest case, creating a client looks as follows:
let config = aws_config::load_from_env().await;
let client = aws_sdk_transfer::Client::new(&config);
Occasionally, SDKs may have additional service-specific values that can be set on the Config
that
is absent from SdkConfig
, or slightly different settings for a specific client may be desired.
The Builder
struct implements From<&SdkConfig>
, so setting these specific settings can be
done as follows:
let sdk_config = ::aws_config::load_from_env().await;
let config = aws_sdk_transfer::config::Builder::from(&sdk_config)
.some_service_specific_setting("value")
.build();
See the aws-config
docs and Config
for more information on customizing configuration.
Note: Client construction is expensive due to connection thread pool initialization, and should be done once at application start-up.
§Using the Client
A client has a function for every operation that can be performed by the service.
For example, the CreateAccess
operation has
a Client::create_access
, function which returns a builder for that operation.
The fluent builder ultimately has a send()
function that returns an async future that
returns a result, as illustrated below:
let result = client.create_access()
.home_directory("example")
.send()
.await;
The underlying HTTP requests that get made by this can be modified with the customize_operation
function on the fluent builder. See the customize
module for more
information.
§Waiters
This client provides wait_until
methods behind the Waiters
trait.
To use them, simply import the trait, and then call one of the wait_until
methods. This will
return a waiter fluent builder that takes various parameters, which are documented on the builder
type. Once parameters have been provided, the wait
method can be called to initiate waiting.
For example, if there was a wait_until_thing
method, it could look like:
let result = client.wait_until_thing()
.thing_id("someId")
.wait(Duration::from_secs(120))
.await;
Implementations§
Source§impl Client
impl Client
Sourcepub fn create_access(&self) -> CreateAccessFluentBuilder
pub fn create_access(&self) -> CreateAccessFluentBuilder
Constructs a fluent builder for the CreateAccess
operation.
- The fluent builder is configurable:
home_directory(impl Into<String>)
/set_home_directory(Option<String>)
:
required: falseThe landing directory (folder) for a user when they log in to the server using the client.
A
HomeDirectory
example is/bucket_name/home/mydirectory
.The
HomeDirectory
parameter is only used ifHomeDirectoryType
is set toPATH
.home_directory_type(HomeDirectoryType)
/set_home_directory_type(Option<HomeDirectoryType>)
:
required: falseThe type of landing directory (folder) that you want your users’ home directory to be when they log in to the server. If you set it to
PATH
, the user will see the absolute Amazon S3 bucket or Amazon EFS path as is in their file transfer protocol clients. If you set it toLOGICAL
, you need to provide mappings in theHomeDirectoryMappings
for how you want to make Amazon S3 or Amazon EFS paths visible to your users.If
HomeDirectoryType
isLOGICAL
, you must provide mappings, using theHomeDirectoryMappings
parameter. If, on the other hand,HomeDirectoryType
isPATH
, you provide an absolute path using theHomeDirectory
parameter. You cannot have bothHomeDirectory
andHomeDirectoryMappings
in your template.home_directory_mappings(HomeDirectoryMapEntry)
/set_home_directory_mappings(Option<Vec::<HomeDirectoryMapEntry>>)
:
required: falseLogical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to your user and how you want to make them visible. You must specify the
Entry
andTarget
pair, whereEntry
shows how the path is made visible andTarget
is the actual Amazon S3 or Amazon EFS path. If you only specify a target, it is displayed as is. You also must ensure that your Identity and Access Management (IAM) role provides access to paths inTarget
. This value can be set only whenHomeDirectoryType
is set to LOGICAL.The following is an
Entry
andTarget
pair example.[ { “Entry”: “/directory1”, “Target”: “/bucket_name/home/mydirectory” } ]
In most cases, you can use this value instead of the session policy to lock down your user to the designated home directory (“
chroot
”). To do this, you can setEntry
to/
and setTarget
to theHomeDirectory
parameter value.The following is an
Entry
andTarget
pair example forchroot
.[ { “Entry”: “/”, “Target”: “/bucket_name/home/mydirectory” } ]
policy(impl Into<String>)
/set_policy(Option<String>)
:
required: falseA session policy for your user so that you can use the same Identity and Access Management (IAM) role across multiple users. This policy scopes down a user’s access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include
${Transfer:UserName}
,${Transfer:HomeDirectory}
, and${Transfer:HomeBucket}
.This policy applies only when the domain of
ServerId
is Amazon S3. Amazon EFS does not use session policies.For session policies, Transfer Family stores the policy as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. You save the policy as a JSON blob and pass it in the
Policy
argument.For an example of a session policy, see Example session policy.
For more information, see AssumeRole in the Security Token Service API Reference.
posix_profile(PosixProfile)
/set_posix_profile(Option<PosixProfile>)
:
required: falseThe full POSIX identity, including user ID (
Uid
), group ID (Gid
), and any secondary groups IDs (SecondaryGids
), that controls your users’ access to your Amazon EFS file systems. The POSIX permissions that are set on files and directories in your file system determine the level of access your users get when transferring files into and out of your Amazon EFS file systems.role(impl Into<String>)
/set_role(Option<String>)
:
required: trueThe Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that controls your users’ access to your Amazon S3 bucket or Amazon EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or Amazon EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users’ transfer requests.
server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueA system-assigned unique identifier for a server instance. This is the specific server that you added your user to.
external_id(impl Into<String>)
/set_external_id(Option<String>)
:
required: trueA unique identifier that is required to identify specific groups within your directory. The users of the group that you associate have access to your Amazon S3 or Amazon EFS resources over the enabled protocols using Transfer Family. If you know the group name, you can view the SID values by running the following command using Windows PowerShell.
Get-ADGroup -Filter {samAccountName -like “YourGroupName*”} -Properties * | Select SamAccountName,ObjectSid
In that command, replace YourGroupName with the name of your Active Directory group.
The regular expression used to validate this parameter is a string of characters consisting of uppercase and lowercase alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@:/-
- On success, responds with
CreateAccessOutput
with field(s):server_id(String)
:The identifier of the server that the user is attached to.
external_id(String)
:The external identifier of the group whose users have access to your Amazon S3 or Amazon EFS resources over the enabled protocols using Transfer Family.
- On failure, responds with
SdkError<CreateAccessError>
Source§impl Client
impl Client
Sourcepub fn create_agreement(&self) -> CreateAgreementFluentBuilder
pub fn create_agreement(&self) -> CreateAgreementFluentBuilder
Constructs a fluent builder for the CreateAgreement
operation.
- The fluent builder is configurable:
description(impl Into<String>)
/set_description(Option<String>)
:
required: falseA name or short description to identify the agreement.
server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueA system-assigned unique identifier for a server instance. This is the specific server that the agreement uses.
local_profile_id(impl Into<String>)
/set_local_profile_id(Option<String>)
:
required: trueA unique identifier for the AS2 local profile.
partner_profile_id(impl Into<String>)
/set_partner_profile_id(Option<String>)
:
required: trueA unique identifier for the partner profile used in the agreement.
base_directory(impl Into<String>)
/set_base_directory(Option<String>)
:
required: trueThe landing directory (folder) for files transferred by using the AS2 protocol.
A
BaseDirectory
example is/amzn-s3-demo-bucket/home/mydirectory
.access_role(impl Into<String>)
/set_access_role(Option<String>)
:
required: trueConnectors are used to send files using either the AS2 or SFTP protocol. For the access role, provide the Amazon Resource Name (ARN) of the Identity and Access Management role to use.
For AS2 connectors
With AS2, you can send files by calling
StartFileTransfer
and specifying the file paths in the request parameter,SendFilePaths
. We use the file’s parent directory (for example, for–send-file-paths /bucket/dir/file.txt
, parent directory is/bucket/dir/
) to temporarily store a processed AS2 message file, store the MDN when we receive them from the partner, and write a final JSON file containing relevant metadata of the transmission. So, theAccessRole
needs to provide read and write access to the parent directory of the file location used in theStartFileTransfer
request. Additionally, you need to provide read and write access to the parent directory of the files that you intend to send withStartFileTransfer
.If you are using Basic authentication for your AS2 connector, the access role requires the
secretsmanager:GetSecretValue
permission for the secret. If the secret is encrypted using a customer-managed key instead of the Amazon Web Services managed key in Secrets Manager, then the role also needs thekms:Decrypt
permission for that key.For SFTP connectors
Make sure that the access role provides read and write access to the parent directory of the file location that’s used in the
StartFileTransfer
request. Additionally, make sure that the role providessecretsmanager:GetSecretValue
permission to Secrets Manager.status(AgreementStatusType)
/set_status(Option<AgreementStatusType>)
:
required: falseThe status of the agreement. The agreement can be either
ACTIVE
orINACTIVE
.tags(Tag)
/set_tags(Option<Vec::<Tag>>)
:
required: falseKey-value pairs that can be used to group and search for agreements.
- On success, responds with
CreateAgreementOutput
with field(s):agreement_id(String)
:The unique identifier for the agreement. Use this ID for deleting, or updating an agreement, as well as in any other API calls that require that you specify the agreement ID.
- On failure, responds with
SdkError<CreateAgreementError>
Source§impl Client
impl Client
Sourcepub fn create_connector(&self) -> CreateConnectorFluentBuilder
pub fn create_connector(&self) -> CreateConnectorFluentBuilder
Constructs a fluent builder for the CreateConnector
operation.
- The fluent builder is configurable:
url(impl Into<String>)
/set_url(Option<String>)
:
required: trueThe URL of the partner’s AS2 or SFTP endpoint.
as2_config(As2ConnectorConfig)
/set_as2_config(Option<As2ConnectorConfig>)
:
required: falseA structure that contains the parameters for an AS2 connector object.
access_role(impl Into<String>)
/set_access_role(Option<String>)
:
required: trueConnectors are used to send files using either the AS2 or SFTP protocol. For the access role, provide the Amazon Resource Name (ARN) of the Identity and Access Management role to use.
For AS2 connectors
With AS2, you can send files by calling
StartFileTransfer
and specifying the file paths in the request parameter,SendFilePaths
. We use the file’s parent directory (for example, for–send-file-paths /bucket/dir/file.txt
, parent directory is/bucket/dir/
) to temporarily store a processed AS2 message file, store the MDN when we receive them from the partner, and write a final JSON file containing relevant metadata of the transmission. So, theAccessRole
needs to provide read and write access to the parent directory of the file location used in theStartFileTransfer
request. Additionally, you need to provide read and write access to the parent directory of the files that you intend to send withStartFileTransfer
.If you are using Basic authentication for your AS2 connector, the access role requires the
secretsmanager:GetSecretValue
permission for the secret. If the secret is encrypted using a customer-managed key instead of the Amazon Web Services managed key in Secrets Manager, then the role also needs thekms:Decrypt
permission for that key.For SFTP connectors
Make sure that the access role provides read and write access to the parent directory of the file location that’s used in the
StartFileTransfer
request. Additionally, make sure that the role providessecretsmanager:GetSecretValue
permission to Secrets Manager.logging_role(impl Into<String>)
/set_logging_role(Option<String>)
:
required: falseThe Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that allows a connector to turn on CloudWatch logging for Amazon S3 events. When set, you can view connector activity in your CloudWatch logs.
tags(Tag)
/set_tags(Option<Vec::<Tag>>)
:
required: falseKey-value pairs that can be used to group and search for connectors. Tags are metadata attached to connectors for any purpose.
sftp_config(SftpConnectorConfig)
/set_sftp_config(Option<SftpConnectorConfig>)
:
required: falseA structure that contains the parameters for an SFTP connector object.
security_policy_name(impl Into<String>)
/set_security_policy_name(Option<String>)
:
required: falseSpecifies the name of the security policy for the connector.
- On success, responds with
CreateConnectorOutput
with field(s):connector_id(String)
:The unique identifier for the connector, returned after the API call succeeds.
- On failure, responds with
SdkError<CreateConnectorError>
Source§impl Client
impl Client
Sourcepub fn create_profile(&self) -> CreateProfileFluentBuilder
pub fn create_profile(&self) -> CreateProfileFluentBuilder
Constructs a fluent builder for the CreateProfile
operation.
- The fluent builder is configurable:
as2_id(impl Into<String>)
/set_as2_id(Option<String>)
:
required: trueThe
As2Id
is the AS2-name, as defined in the RFC 4130. For inbound transfers, this is theAS2-From
header for the AS2 messages sent from the partner. For outbound connectors, this is theAS2-To
header for the AS2 messages sent to the partner using theStartFileTransfer
API operation. This ID cannot include spaces.profile_type(ProfileType)
/set_profile_type(Option<ProfileType>)
:
required: trueDetermines the type of profile to create:
-
Specify
LOCAL
to create a local profile. A local profile represents the AS2-enabled Transfer Family server organization or party. -
Specify
PARTNER
to create a partner profile. A partner profile represents a remote organization, external to Transfer Family.
-
certificate_ids(impl Into<String>)
/set_certificate_ids(Option<Vec::<String>>)
:
required: falseAn array of identifiers for the imported certificates. You use this identifier for working with profiles and partner profiles.
tags(Tag)
/set_tags(Option<Vec::<Tag>>)
:
required: falseKey-value pairs that can be used to group and search for AS2 profiles.
- On success, responds with
CreateProfileOutput
with field(s):profile_id(String)
:The unique identifier for the AS2 profile, returned after the API call succeeds.
- On failure, responds with
SdkError<CreateProfileError>
Source§impl Client
impl Client
Sourcepub fn create_server(&self) -> CreateServerFluentBuilder
pub fn create_server(&self) -> CreateServerFluentBuilder
Constructs a fluent builder for the CreateServer
operation.
- The fluent builder is configurable:
certificate(impl Into<String>)
/set_certificate(Option<String>)
:
required: falseThe Amazon Resource Name (ARN) of the Certificate Manager (ACM) certificate. Required when
Protocols
is set toFTPS
.To request a new public certificate, see Request a public certificate in the Certificate Manager User Guide.
To import an existing certificate into ACM, see Importing certificates into ACM in the Certificate Manager User Guide.
To request a private certificate to use FTPS through private IP addresses, see Request a private certificate in the 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.
-
domain(Domain)
/set_domain(Option<Domain>)
:
required: falseThe domain of the storage system that is used for file transfers. There are two domains available: Amazon Simple Storage Service (Amazon S3) and Amazon Elastic File System (Amazon EFS). The default value is S3.
After the server is created, the domain cannot be changed.
endpoint_details(EndpointDetails)
/set_endpoint_details(Option<EndpointDetails>)
:
required: falseThe 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(EndpointType)
/set_endpoint_type(Option<EndpointType>)
:
required: falseThe 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 Amazon Web Services account if your account hasn’t already done so before May 19, 2021. If you have already created servers withEndpointType=VPC_ENDPOINT
in your Amazon Web Services account on or before May 19, 2021, you will not be affected. After this date, useEndpointType
=VPC
.For more information, see https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
It is recommended that you use
VPC
as theEndpointType
. 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 withEndpointType
set toVPC_ENDPOINT
.host_key(impl Into<String>)
/set_host_key(Option<String>)
:
required: falseThe RSA, ECDSA, or ED25519 private key to use for your SFTP-enabled server. You can add multiple host keys, in case you want to rotate keys, or have a set of active keys that use different algorithms.
Use the following command to generate an RSA 2048 bit key with no passphrase:
ssh-keygen -t rsa -b 2048 -N “” -m PEM -f my-new-server-key
.Use a minimum value of 2048 for the
-b
option. You can create a stronger key by using 3072 or 4096.Use the following command to generate an ECDSA 256 bit key with no passphrase:
ssh-keygen -t ecdsa -b 256 -N “” -m PEM -f my-new-server-key
.Valid values for the
-b
option for ECDSA are 256, 384, and 521.Use the following command to generate an ED25519 key with no passphrase:
ssh-keygen -t ed25519 -N “” -f my-new-server-key
.For all of these commands, you can replace my-new-server-key with a string of your choice.
If you aren’t planning to migrate existing users from an existing SFTP-enabled server to a new server, don’t update the host key. Accidentally changing a server’s host key can be disruptive.
For more information, see Manage host keys for your SFTP-enabled server in the Transfer Family User Guide.
identity_provider_details(IdentityProviderDetails)
/set_identity_provider_details(Option<IdentityProviderDetails>)
:
required: falseRequired when
IdentityProviderType
is set toAWS_DIRECTORY_SERVICE
,Amazon Web Services_LAMBDA
orAPI_GATEWAY
. Accepts an array containing all of the information required to use a directory inAWS_DIRECTORY_SERVICE
or invoke a customer-supplied authentication API, including the API Gateway URL. Not required whenIdentityProviderType
is set toSERVICE_MANAGED
.identity_provider_type(IdentityProviderType)
/set_identity_provider_type(Option<IdentityProviderType>)
:
required: falseThe mode of authentication for a server. The default value is
SERVICE_MANAGED
, which allows you to store and access user credentials within the Transfer Family service.Use
AWS_DIRECTORY_SERVICE
to provide access to Active Directory groups in Directory Service for Microsoft Active Directory or Microsoft Active Directory in your on-premises environment or in Amazon Web Services using AD Connector. This option also requires you to provide a Directory ID by using theIdentityProviderDetails
parameter.Use the
API_GATEWAY
value to integrate with an identity provider of your choosing. TheAPI_GATEWAY
setting requires you to provide an Amazon API Gateway endpoint URL to call for authentication by using theIdentityProviderDetails
parameter.Use the
AWS_LAMBDA
value to directly use an Lambda function as your identity provider. If you choose this value, you must specify the ARN for the Lambda function in theFunction
parameter for theIdentityProviderDetails
data type.logging_role(impl Into<String>)
/set_logging_role(Option<String>)
:
required: falseThe Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFSevents. When set, you can view user activity in your CloudWatch logs.
post_authentication_login_banner(impl Into<String>)
/set_post_authentication_login_banner(Option<String>)
:
required: falseSpecifies 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(impl Into<String>)
/set_pre_authentication_login_banner(Option<String>)
:
required: falseSpecifies 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.
protocols(Protocol)
/set_protocols(Option<Vec::<Protocol>>)
:
required: falseSpecifies 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 Certificate Manager (ACM) which is used to identify your server when clients connect to it over FTPS. -
If
Protocol
includes eitherFTP
orFTPS
, then theEndpointType
must beVPC
and theIdentityProviderType
must be eitherAWS_DIRECTORY_SERVICE
,AWS_LAMBDA
, orAPI_GATEWAY
. -
If
Protocol
includesFTP
, thenAddressAllocationIds
cannot be associated. -
If
Protocol
is set only toSFTP
, theEndpointType
can be set toPUBLIC
and theIdentityProviderType
can be set any of the supported identity types:SERVICE_MANAGED
,AWS_DIRECTORY_SERVICE
,AWS_LAMBDA
, orAPI_GATEWAY
. -
If
Protocol
includesAS2
, then theEndpointType
must beVPC
, and domain must be Amazon S3.
-
protocol_details(ProtocolDetails)
/set_protocol_details(Option<ProtocolDetails>)
:
required: falseThe 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 theSetStatOption
parameter. To have the Transfer Family server ignore theSETSTAT
command and upload files without needing to make any changes to your SFTP client, set the value toENABLE_NO_OP
. If you set theSetStatOption
parameter toENABLE_NO_OP
, Transfer Family generates a log entry to Amazon CloudWatch Logs, so that you can determine when the client is making aSETSTAT
call. -
To determine whether your 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.
-
security_policy_name(impl Into<String>)
/set_security_policy_name(Option<String>)
:
required: falseSpecifies the name of the security policy for the server.
tags(Tag)
/set_tags(Option<Vec::<Tag>>)
:
required: falseKey-value pairs that can be used to group and search for servers.
workflow_details(WorkflowDetails)
/set_workflow_details(Option<WorkflowDetails>)
:
required: falseSpecifies 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 the server session disconnects while the file is still being uploaded.structured_log_destinations(impl Into<String>)
/set_structured_log_destinations(Option<Vec::<String>>)
:
required: falseSpecifies 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
s3_storage_options(S3StorageOptions)
/set_s3_storage_options(Option<S3StorageOptions>)
:
required: falseSpecifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default.
By default, home directory mappings have a
TYPE
ofDIRECTORY
. If you enable this option, you would then need to explicitly set theHomeDirectoryMapEntry
Type
toFILE
if you want a mapping to have a file target.
- On success, responds with
CreateServerOutput
with field(s):server_id(String)
:The service-assigned identifier of the server that is created.
- On failure, responds with
SdkError<CreateServerError>
Source§impl Client
impl Client
Sourcepub fn create_user(&self) -> CreateUserFluentBuilder
pub fn create_user(&self) -> CreateUserFluentBuilder
Constructs a fluent builder for the CreateUser
operation.
- The fluent builder is configurable:
home_directory(impl Into<String>)
/set_home_directory(Option<String>)
:
required: falseThe landing directory (folder) for a user when they log in to the server using the client.
A
HomeDirectory
example is/bucket_name/home/mydirectory
.The
HomeDirectory
parameter is only used ifHomeDirectoryType
is set toPATH
.home_directory_type(HomeDirectoryType)
/set_home_directory_type(Option<HomeDirectoryType>)
:
required: falseThe type of landing directory (folder) that you want your users’ home directory to be when they log in to the server. If you set it to
PATH
, the user will see the absolute Amazon S3 bucket or Amazon EFS path as is in their file transfer protocol clients. If you set it toLOGICAL
, you need to provide mappings in theHomeDirectoryMappings
for how you want to make Amazon S3 or Amazon EFS paths visible to your users.If
HomeDirectoryType
isLOGICAL
, you must provide mappings, using theHomeDirectoryMappings
parameter. If, on the other hand,HomeDirectoryType
isPATH
, you provide an absolute path using theHomeDirectory
parameter. You cannot have bothHomeDirectory
andHomeDirectoryMappings
in your template.home_directory_mappings(HomeDirectoryMapEntry)
/set_home_directory_mappings(Option<Vec::<HomeDirectoryMapEntry>>)
:
required: falseLogical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to your user and how you want to make them visible. You must specify the
Entry
andTarget
pair, whereEntry
shows how the path is made visible andTarget
is the actual Amazon S3 or Amazon EFS path. If you only specify a target, it is displayed as is. You also must ensure that your Identity and Access Management (IAM) role provides access to paths inTarget
. This value can be set only whenHomeDirectoryType
is set to LOGICAL.The following is an
Entry
andTarget
pair example.[ { “Entry”: “/directory1”, “Target”: “/bucket_name/home/mydirectory” } ]
In most cases, you can use this value instead of the session policy to lock your user down to the designated home directory (“
chroot
”). To do this, you can setEntry
to/
and setTarget
to the value the user should see for their home directory when they log in.The following is an
Entry
andTarget
pair example forchroot
.[ { “Entry”: “/”, “Target”: “/bucket_name/home/mydirectory” } ]
policy(impl Into<String>)
/set_policy(Option<String>)
:
required: falseA session policy for your user so that you can use the same Identity and Access Management (IAM) role across multiple users. This policy scopes down a user’s access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include
${Transfer:UserName}
,${Transfer:HomeDirectory}
, and${Transfer:HomeBucket}
.This policy applies only when the domain of
ServerId
is Amazon S3. Amazon EFS does not use session policies.For session policies, Transfer Family stores the policy as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. You save the policy as a JSON blob and pass it in the
Policy
argument.For an example of a session policy, see Example session policy.
For more information, see AssumeRole in the Amazon Web Services Security Token Service API Reference.
posix_profile(PosixProfile)
/set_posix_profile(Option<PosixProfile>)
:
required: falseSpecifies the full POSIX identity, including user ID (
Uid
), group ID (Gid
), and any secondary groups IDs (SecondaryGids
), that controls your users’ access to your Amazon EFS file systems. The POSIX permissions that are set on files and directories in Amazon EFS determine the level of access your users get when transferring files into and out of your Amazon EFS file systems.role(impl Into<String>)
/set_role(Option<String>)
:
required: trueThe Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that controls your users’ access to your Amazon S3 bucket or Amazon EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or Amazon EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users’ transfer requests.
server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueA system-assigned unique identifier for a server instance. This is the specific server that you added your user to.
ssh_public_key_body(impl Into<String>)
/set_ssh_public_key_body(Option<String>)
:
required: falseThe public portion of the Secure Shell (SSH) key used to authenticate the user to the server.
The three standard SSH public key format elements are
<key type>
,<body base64>
, and an optional<comment>
, with spaces between each element.Transfer Family accepts RSA, ECDSA, and ED25519 keys.
-
For RSA keys, the key type is
ssh-rsa
. -
For ED25519 keys, the key type is
ssh-ed25519
. -
For ECDSA keys, the key type is either
ecdsa-sha2-nistp256
,ecdsa-sha2-nistp384
, orecdsa-sha2-nistp521
, depending on the size of the key you generated.
-
tags(Tag)
/set_tags(Option<Vec::<Tag>>)
:
required: falseKey-value pairs that can be used to group and search for users. Tags are metadata attached to users for any purpose.
user_name(impl Into<String>)
/set_user_name(Option<String>)
:
required: trueA unique string that identifies a user and is associated with a
ServerId
. This user name must be a minimum of 3 and a maximum of 100 characters long. The following are valid characters: a-z, A-Z, 0-9, underscore ‘_’, hyphen ‘-’, period ‘.’, and at sign ‘@’. The user name can’t start with a hyphen, period, or at sign.
- On success, responds with
CreateUserOutput
with field(s):server_id(String)
:The identifier of the server that the user is attached to.
user_name(String)
:A unique string that identifies a Transfer Family user.
- On failure, responds with
SdkError<CreateUserError>
Source§impl Client
impl Client
Sourcepub fn create_workflow(&self) -> CreateWorkflowFluentBuilder
pub fn create_workflow(&self) -> CreateWorkflowFluentBuilder
Constructs a fluent builder for the CreateWorkflow
operation.
- The fluent builder is configurable:
description(impl Into<String>)
/set_description(Option<String>)
:
required: falseA textual description for the workflow.
steps(WorkflowStep)
/set_steps(Option<Vec::<WorkflowStep>>)
:
required: trueSpecifies the details for the steps that are in the specified workflow.
The
TYPE
specifies which of the following actions is being taken for this step.-
COPY
- Copy the file to another location. -
CUSTOM
- Perform a custom step with an Lambda function target. -
DECRYPT
- Decrypt a file that was encrypted before it was uploaded. -
DELETE
- Delete the file. -
TAG
- Add a tag to the file.
Currently, copying and tagging are supported only on S3.
For file location, you specify either the Amazon S3 bucket and key, or the Amazon EFS file system ID and path.
-
on_exception_steps(WorkflowStep)
/set_on_exception_steps(Option<Vec::<WorkflowStep>>)
:
required: falseSpecifies the steps (actions) to take if errors are encountered during execution of the workflow.
For custom steps, the Lambda function needs to send
FAILURE
to the call back API to kick off the exception steps. Additionally, if the Lambda does not sendSUCCESS
before it times out, the exception steps are executed.tags(Tag)
/set_tags(Option<Vec::<Tag>>)
:
required: falseKey-value pairs that can be used to group and search for workflows. Tags are metadata attached to workflows for any purpose.
- On success, responds with
CreateWorkflowOutput
with field(s):workflow_id(String)
:A unique identifier for the workflow.
- On failure, responds with
SdkError<CreateWorkflowError>
Source§impl Client
impl Client
Sourcepub fn delete_access(&self) -> DeleteAccessFluentBuilder
pub fn delete_access(&self) -> DeleteAccessFluentBuilder
Constructs a fluent builder for the DeleteAccess
operation.
- The fluent builder is configurable:
server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueA system-assigned unique identifier for a server that has this user assigned.
external_id(impl Into<String>)
/set_external_id(Option<String>)
:
required: trueA unique identifier that is required to identify specific groups within your directory. The users of the group that you associate have access to your Amazon S3 or Amazon EFS resources over the enabled protocols using Transfer Family. If you know the group name, you can view the SID values by running the following command using Windows PowerShell.
Get-ADGroup -Filter {samAccountName -like “YourGroupName*”} -Properties * | Select SamAccountName,ObjectSid
In that command, replace YourGroupName with the name of your Active Directory group.
The regular expression used to validate this parameter is a string of characters consisting of uppercase and lowercase alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@:/-
- On success, responds with
DeleteAccessOutput
- On failure, responds with
SdkError<DeleteAccessError>
Source§impl Client
impl Client
Sourcepub fn delete_agreement(&self) -> DeleteAgreementFluentBuilder
pub fn delete_agreement(&self) -> DeleteAgreementFluentBuilder
Constructs a fluent builder for the DeleteAgreement
operation.
- The fluent builder is configurable:
agreement_id(impl Into<String>)
/set_agreement_id(Option<String>)
:
required: trueA unique identifier for the agreement. This identifier is returned when you create an agreement.
server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueThe server identifier associated with the agreement that you are deleting.
- On success, responds with
DeleteAgreementOutput
- On failure, responds with
SdkError<DeleteAgreementError>
Source§impl Client
impl Client
Sourcepub fn delete_certificate(&self) -> DeleteCertificateFluentBuilder
pub fn delete_certificate(&self) -> DeleteCertificateFluentBuilder
Constructs a fluent builder for the DeleteCertificate
operation.
- The fluent builder is configurable:
certificate_id(impl Into<String>)
/set_certificate_id(Option<String>)
:
required: trueThe identifier of the certificate object that you are deleting.
- On success, responds with
DeleteCertificateOutput
- On failure, responds with
SdkError<DeleteCertificateError>
Source§impl Client
impl Client
Sourcepub fn delete_connector(&self) -> DeleteConnectorFluentBuilder
pub fn delete_connector(&self) -> DeleteConnectorFluentBuilder
Constructs a fluent builder for the DeleteConnector
operation.
- The fluent builder is configurable:
connector_id(impl Into<String>)
/set_connector_id(Option<String>)
:
required: trueThe unique identifier for the connector.
- On success, responds with
DeleteConnectorOutput
- On failure, responds with
SdkError<DeleteConnectorError>
Source§impl Client
impl Client
Sourcepub fn delete_host_key(&self) -> DeleteHostKeyFluentBuilder
pub fn delete_host_key(&self) -> DeleteHostKeyFluentBuilder
Constructs a fluent builder for the DeleteHostKey
operation.
- The fluent builder is configurable:
server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueThe identifier of the server that contains the host key that you are deleting.
host_key_id(impl Into<String>)
/set_host_key_id(Option<String>)
:
required: trueThe identifier of the host key that you are deleting.
- On success, responds with
DeleteHostKeyOutput
- On failure, responds with
SdkError<DeleteHostKeyError>
Source§impl Client
impl Client
Sourcepub fn delete_profile(&self) -> DeleteProfileFluentBuilder
pub fn delete_profile(&self) -> DeleteProfileFluentBuilder
Constructs a fluent builder for the DeleteProfile
operation.
- The fluent builder is configurable:
profile_id(impl Into<String>)
/set_profile_id(Option<String>)
:
required: trueThe identifier of the profile that you are deleting.
- On success, responds with
DeleteProfileOutput
- On failure, responds with
SdkError<DeleteProfileError>
Source§impl Client
impl Client
Sourcepub fn delete_server(&self) -> DeleteServerFluentBuilder
pub fn delete_server(&self) -> DeleteServerFluentBuilder
Constructs a fluent builder for the DeleteServer
operation.
- The fluent builder is configurable:
server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueA unique system-assigned identifier for a server instance.
- On success, responds with
DeleteServerOutput
- On failure, responds with
SdkError<DeleteServerError>
Source§impl Client
impl Client
Sourcepub fn delete_ssh_public_key(&self) -> DeleteSshPublicKeyFluentBuilder
pub fn delete_ssh_public_key(&self) -> DeleteSshPublicKeyFluentBuilder
Constructs a fluent builder for the DeleteSshPublicKey
operation.
- The fluent builder is configurable:
server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueA system-assigned unique identifier for a file transfer protocol-enabled server instance that has the user assigned to it.
ssh_public_key_id(impl Into<String>)
/set_ssh_public_key_id(Option<String>)
:
required: trueA unique identifier used to reference your user’s specific SSH key.
user_name(impl Into<String>)
/set_user_name(Option<String>)
:
required: trueA unique string that identifies a user whose public key is being deleted.
- On success, responds with
DeleteSshPublicKeyOutput
- On failure, responds with
SdkError<DeleteSshPublicKeyError>
Source§impl Client
impl Client
Sourcepub fn delete_user(&self) -> DeleteUserFluentBuilder
pub fn delete_user(&self) -> DeleteUserFluentBuilder
Constructs a fluent builder for the DeleteUser
operation.
- The fluent builder is configurable:
server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueA system-assigned unique identifier for a server instance that has the user assigned to it.
user_name(impl Into<String>)
/set_user_name(Option<String>)
:
required: trueA unique string that identifies a user that is being deleted from a server.
- On success, responds with
DeleteUserOutput
- On failure, responds with
SdkError<DeleteUserError>
Source§impl Client
impl Client
Sourcepub fn delete_workflow(&self) -> DeleteWorkflowFluentBuilder
pub fn delete_workflow(&self) -> DeleteWorkflowFluentBuilder
Constructs a fluent builder for the DeleteWorkflow
operation.
- The fluent builder is configurable:
workflow_id(impl Into<String>)
/set_workflow_id(Option<String>)
:
required: trueA unique identifier for the workflow.
- On success, responds with
DeleteWorkflowOutput
- On failure, responds with
SdkError<DeleteWorkflowError>
Source§impl Client
impl Client
Sourcepub fn describe_access(&self) -> DescribeAccessFluentBuilder
pub fn describe_access(&self) -> DescribeAccessFluentBuilder
Constructs a fluent builder for the DescribeAccess
operation.
- The fluent builder is configurable:
server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueA system-assigned unique identifier for a server that has this access assigned.
external_id(impl Into<String>)
/set_external_id(Option<String>)
:
required: trueA unique identifier that is required to identify specific groups within your directory. The users of the group that you associate have access to your Amazon S3 or Amazon EFS resources over the enabled protocols using Transfer Family. If you know the group name, you can view the SID values by running the following command using Windows PowerShell.
Get-ADGroup -Filter {samAccountName -like “YourGroupName*”} -Properties * | Select SamAccountName,ObjectSid
In that command, replace YourGroupName with the name of your Active Directory group.
The regular expression used to validate this parameter is a string of characters consisting of uppercase and lowercase alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@:/-
- On success, responds with
DescribeAccessOutput
with field(s):server_id(String)
:A system-assigned unique identifier for a server that has this access assigned.
access(Option<DescribedAccess>)
:The external identifier of the server that the access is attached to.
- On failure, responds with
SdkError<DescribeAccessError>
Source§impl Client
impl Client
Sourcepub fn describe_agreement(&self) -> DescribeAgreementFluentBuilder
pub fn describe_agreement(&self) -> DescribeAgreementFluentBuilder
Constructs a fluent builder for the DescribeAgreement
operation.
- The fluent builder is configurable:
agreement_id(impl Into<String>)
/set_agreement_id(Option<String>)
:
required: trueA unique identifier for the agreement. This identifier is returned when you create an agreement.
server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueThe server identifier that’s associated with the agreement.
- On success, responds with
DescribeAgreementOutput
with field(s):agreement(Option<DescribedAgreement>)
:The details for the specified agreement, returned as a
DescribedAgreement
object.
- On failure, responds with
SdkError<DescribeAgreementError>
Source§impl Client
impl Client
Sourcepub fn describe_certificate(&self) -> DescribeCertificateFluentBuilder
pub fn describe_certificate(&self) -> DescribeCertificateFluentBuilder
Constructs a fluent builder for the DescribeCertificate
operation.
- The fluent builder is configurable:
certificate_id(impl Into<String>)
/set_certificate_id(Option<String>)
:
required: trueAn array of identifiers for the imported certificates. You use this identifier for working with profiles and partner profiles.
- On success, responds with
DescribeCertificateOutput
with field(s):certificate(Option<DescribedCertificate>)
:The details for the specified certificate, returned as an object.
- On failure, responds with
SdkError<DescribeCertificateError>
Source§impl Client
impl Client
Sourcepub fn describe_connector(&self) -> DescribeConnectorFluentBuilder
pub fn describe_connector(&self) -> DescribeConnectorFluentBuilder
Constructs a fluent builder for the DescribeConnector
operation.
- The fluent builder is configurable:
connector_id(impl Into<String>)
/set_connector_id(Option<String>)
:
required: trueThe unique identifier for the connector.
- On success, responds with
DescribeConnectorOutput
with field(s):connector(Option<DescribedConnector>)
:The structure that contains the details of the connector.
- On failure, responds with
SdkError<DescribeConnectorError>
Source§impl Client
impl Client
Sourcepub fn describe_execution(&self) -> DescribeExecutionFluentBuilder
pub fn describe_execution(&self) -> DescribeExecutionFluentBuilder
Constructs a fluent builder for the DescribeExecution
operation.
- The fluent builder is configurable:
execution_id(impl Into<String>)
/set_execution_id(Option<String>)
:
required: trueA unique identifier for the execution of a workflow.
workflow_id(impl Into<String>)
/set_workflow_id(Option<String>)
:
required: trueA unique identifier for the workflow.
- On success, responds with
DescribeExecutionOutput
with field(s):workflow_id(String)
:A unique identifier for the workflow.
execution(Option<DescribedExecution>)
:The structure that contains the details of the workflow’ execution.
- On failure, responds with
SdkError<DescribeExecutionError>
Source§impl Client
impl Client
Sourcepub fn describe_host_key(&self) -> DescribeHostKeyFluentBuilder
pub fn describe_host_key(&self) -> DescribeHostKeyFluentBuilder
Constructs a fluent builder for the DescribeHostKey
operation.
- The fluent builder is configurable:
server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueThe identifier of the server that contains the host key that you want described.
host_key_id(impl Into<String>)
/set_host_key_id(Option<String>)
:
required: trueThe identifier of the host key that you want described.
- On success, responds with
DescribeHostKeyOutput
with field(s):host_key(Option<DescribedHostKey>)
:Returns the details for the specified host key.
- On failure, responds with
SdkError<DescribeHostKeyError>
Source§impl Client
impl Client
Sourcepub fn describe_profile(&self) -> DescribeProfileFluentBuilder
pub fn describe_profile(&self) -> DescribeProfileFluentBuilder
Constructs a fluent builder for the DescribeProfile
operation.
- The fluent builder is configurable:
profile_id(impl Into<String>)
/set_profile_id(Option<String>)
:
required: trueThe identifier of the profile that you want described.
- On success, responds with
DescribeProfileOutput
with field(s):profile(Option<DescribedProfile>)
:The details of the specified profile, returned as an object.
- On failure, responds with
SdkError<DescribeProfileError>
Source§impl Client
impl Client
Sourcepub fn describe_security_policy(&self) -> DescribeSecurityPolicyFluentBuilder
pub fn describe_security_policy(&self) -> DescribeSecurityPolicyFluentBuilder
Constructs a fluent builder for the DescribeSecurityPolicy
operation.
- The fluent builder is configurable:
security_policy_name(impl Into<String>)
/set_security_policy_name(Option<String>)
:
required: trueSpecify the text name of the security policy for which you want the details.
- On success, responds with
DescribeSecurityPolicyOutput
with field(s):security_policy(Option<DescribedSecurityPolicy>)
:An array containing the properties of the security policy.
- On failure, responds with
SdkError<DescribeSecurityPolicyError>
Source§impl Client
impl Client
Sourcepub fn describe_server(&self) -> DescribeServerFluentBuilder
pub fn describe_server(&self) -> DescribeServerFluentBuilder
Constructs a fluent builder for the DescribeServer
operation.
- The fluent builder is configurable:
server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueA system-assigned unique identifier for a server.
- On success, responds with
DescribeServerOutput
with field(s):server(Option<DescribedServer>)
:An array containing the properties of a server with the
ServerID
you specified.
- On failure, responds with
SdkError<DescribeServerError>
Source§impl Client
impl Client
Sourcepub fn describe_user(&self) -> DescribeUserFluentBuilder
pub fn describe_user(&self) -> DescribeUserFluentBuilder
Constructs a fluent builder for the DescribeUser
operation.
- The fluent builder is configurable:
server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueA system-assigned unique identifier for a server that has this user assigned.
user_name(impl Into<String>)
/set_user_name(Option<String>)
:
required: trueThe name of the user assigned to one or more servers. User names are part of the sign-in credentials to use the Transfer Family service and perform file transfer tasks.
- On success, responds with
DescribeUserOutput
with field(s):server_id(String)
:A system-assigned unique identifier for a server that has this user assigned.
user(Option<DescribedUser>)
:An array containing the properties of the Transfer Family user for the
ServerID
value that you specified.
- On failure, responds with
SdkError<DescribeUserError>
Source§impl Client
impl Client
Sourcepub fn describe_workflow(&self) -> DescribeWorkflowFluentBuilder
pub fn describe_workflow(&self) -> DescribeWorkflowFluentBuilder
Constructs a fluent builder for the DescribeWorkflow
operation.
- The fluent builder is configurable:
workflow_id(impl Into<String>)
/set_workflow_id(Option<String>)
:
required: trueA unique identifier for the workflow.
- On success, responds with
DescribeWorkflowOutput
with field(s):workflow(Option<DescribedWorkflow>)
:The structure that contains the details of the workflow.
- On failure, responds with
SdkError<DescribeWorkflowError>
Source§impl Client
impl Client
Sourcepub fn import_certificate(&self) -> ImportCertificateFluentBuilder
pub fn import_certificate(&self) -> ImportCertificateFluentBuilder
Constructs a fluent builder for the ImportCertificate
operation.
- The fluent builder is configurable:
usage(CertificateUsageType)
/set_usage(Option<CertificateUsageType>)
:
required: trueSpecifies how this certificate is used. It can be used in the following ways:
-
SIGNING
: For signing AS2 messages -
ENCRYPTION
: For encrypting AS2 messages -
TLS
: For securing AS2 communications sent over HTTPS
-
certificate(impl Into<String>)
/set_certificate(Option<String>)
:
required: true-
For the CLI, provide a file path for a certificate in URI format. For example,
–certificate file://encryption-cert.pem
. Alternatively, you can provide the raw content. -
For the SDK, specify the raw content of a certificate file. For example,
–certificate “
.cat encryption-cert.pem
”
-
certificate_chain(impl Into<String>)
/set_certificate_chain(Option<String>)
:
required: falseAn optional list of certificates that make up the chain for the certificate that’s being imported.
private_key(impl Into<String>)
/set_private_key(Option<String>)
:
required: false-
For the CLI, provide a file path for a private key in URI format.For example,
–private-key file://encryption-key.pem
. Alternatively, you can provide the raw content of the private key file. -
For the SDK, specify the raw content of a private key file. For example,
–private-key “
cat encryption-key.pem
”
-
active_date(DateTime)
/set_active_date(Option<DateTime>)
:
required: falseAn optional date that specifies when the certificate becomes active.
inactive_date(DateTime)
/set_inactive_date(Option<DateTime>)
:
required: falseAn optional date that specifies when the certificate becomes inactive.
description(impl Into<String>)
/set_description(Option<String>)
:
required: falseA short description that helps identify the certificate.
tags(Tag)
/set_tags(Option<Vec::<Tag>>)
:
required: falseKey-value pairs that can be used to group and search for certificates.
- On success, responds with
ImportCertificateOutput
with field(s):certificate_id(String)
:An array of identifiers for the imported certificates. You use this identifier for working with profiles and partner profiles.
- On failure, responds with
SdkError<ImportCertificateError>
Source§impl Client
impl Client
Sourcepub fn import_host_key(&self) -> ImportHostKeyFluentBuilder
pub fn import_host_key(&self) -> ImportHostKeyFluentBuilder
Constructs a fluent builder for the ImportHostKey
operation.
- The fluent builder is configurable:
server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueThe identifier of the server that contains the host key that you are importing.
host_key_body(impl Into<String>)
/set_host_key_body(Option<String>)
:
required: trueThe private key portion of an SSH key pair.
Transfer Family accepts RSA, ECDSA, and ED25519 keys.
description(impl Into<String>)
/set_description(Option<String>)
:
required: falseThe text description that identifies this host key.
tags(Tag)
/set_tags(Option<Vec::<Tag>>)
:
required: falseKey-value pairs that can be used to group and search for host keys.
- On success, responds with
ImportHostKeyOutput
with field(s):server_id(String)
:Returns the server identifier that contains the imported key.
host_key_id(String)
:Returns the host key identifier for the imported key.
- On failure, responds with
SdkError<ImportHostKeyError>
Source§impl Client
impl Client
Sourcepub fn import_ssh_public_key(&self) -> ImportSshPublicKeyFluentBuilder
pub fn import_ssh_public_key(&self) -> ImportSshPublicKeyFluentBuilder
Constructs a fluent builder for the ImportSshPublicKey
operation.
- The fluent builder is configurable:
server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueA system-assigned unique identifier for a server.
ssh_public_key_body(impl Into<String>)
/set_ssh_public_key_body(Option<String>)
:
required: trueThe public key portion of an SSH key pair.
Transfer Family accepts RSA, ECDSA, and ED25519 keys.
user_name(impl Into<String>)
/set_user_name(Option<String>)
:
required: trueThe name of the Transfer Family user that is assigned to one or more servers.
- On success, responds with
ImportSshPublicKeyOutput
with field(s):server_id(String)
:A system-assigned unique identifier for a server.
ssh_public_key_id(String)
:The name given to a public key by the system that was imported.
user_name(String)
:A user name assigned to the
ServerID
value that you specified.
- On failure, responds with
SdkError<ImportSshPublicKeyError>
Source§impl Client
impl Client
Sourcepub fn list_accesses(&self) -> ListAccessesFluentBuilder
pub fn list_accesses(&self) -> ListAccessesFluentBuilder
Constructs a fluent builder for the ListAccesses
operation.
This operation supports pagination; See into_paginator()
.
- The fluent builder is configurable:
max_results(i32)
/set_max_results(Option<i32>)
:
required: falseSpecifies the maximum number of access SIDs to return.
next_token(impl Into<String>)
/set_next_token(Option<String>)
:
required: falseWhen you can get additional results from the
ListAccesses
call, aNextToken
parameter is returned in the output. You can then pass in a subsequent command to theNextToken
parameter to continue listing additional accesses.server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueA system-assigned unique identifier for a server that has users assigned to it.
- On success, responds with
ListAccessesOutput
with field(s):next_token(Option<String>)
:When you can get additional results from the
ListAccesses
call, aNextToken
parameter is returned in the output. You can then pass in a subsequent command to theNextToken
parameter to continue listing additional accesses.server_id(String)
:A system-assigned unique identifier for a server that has users assigned to it.
accesses(Vec::<ListedAccess>)
:Returns the accesses and their properties for the
ServerId
value that you specify.
- On failure, responds with
SdkError<ListAccessesError>
Source§impl Client
impl Client
Sourcepub fn list_agreements(&self) -> ListAgreementsFluentBuilder
pub fn list_agreements(&self) -> ListAgreementsFluentBuilder
Constructs a fluent builder for the ListAgreements
operation.
This operation supports pagination; See into_paginator()
.
- The fluent builder is configurable:
max_results(i32)
/set_max_results(Option<i32>)
:
required: falseThe maximum number of agreements to return.
next_token(impl Into<String>)
/set_next_token(Option<String>)
:
required: falseWhen you can get additional results from the
ListAgreements
call, aNextToken
parameter is returned in the output. You can then pass in a subsequent command to theNextToken
parameter to continue listing additional agreements.server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueThe identifier of the server for which you want a list of agreements.
- On success, responds with
ListAgreementsOutput
with field(s):next_token(Option<String>)
:Returns a token that you can use to call
ListAgreements
again and receive additional results, if there are any.agreements(Vec::<ListedAgreement>)
:Returns an array, where each item contains the details of an agreement.
- On failure, responds with
SdkError<ListAgreementsError>
Source§impl Client
impl Client
Sourcepub fn list_certificates(&self) -> ListCertificatesFluentBuilder
pub fn list_certificates(&self) -> ListCertificatesFluentBuilder
Constructs a fluent builder for the ListCertificates
operation.
This operation supports pagination; See into_paginator()
.
- The fluent builder is configurable:
max_results(i32)
/set_max_results(Option<i32>)
:
required: falseThe maximum number of certificates to return.
next_token(impl Into<String>)
/set_next_token(Option<String>)
:
required: falseWhen you can get additional results from the
ListCertificates
call, aNextToken
parameter is returned in the output. You can then pass in a subsequent command to theNextToken
parameter to continue listing additional certificates.
- On success, responds with
ListCertificatesOutput
with field(s):next_token(Option<String>)
:Returns the next token, which you can use to list the next certificate.
certificates(Vec::<ListedCertificate>)
:Returns an array of the certificates that are specified in the
ListCertificates
call.
- On failure, responds with
SdkError<ListCertificatesError>
Source§impl Client
impl Client
Sourcepub fn list_connectors(&self) -> ListConnectorsFluentBuilder
pub fn list_connectors(&self) -> ListConnectorsFluentBuilder
Constructs a fluent builder for the ListConnectors
operation.
This operation supports pagination; See into_paginator()
.
- The fluent builder is configurable:
max_results(i32)
/set_max_results(Option<i32>)
:
required: falseThe maximum number of connectors to return.
next_token(impl Into<String>)
/set_next_token(Option<String>)
:
required: falseWhen you can get additional results from the
ListConnectors
call, aNextToken
parameter is returned in the output. You can then pass in a subsequent command to theNextToken
parameter to continue listing additional connectors.
- On success, responds with
ListConnectorsOutput
with field(s):next_token(Option<String>)
:Returns a token that you can use to call
ListConnectors
again and receive additional results, if there are any.connectors(Vec::<ListedConnector>)
:Returns an array, where each item contains the details of a connector.
- On failure, responds with
SdkError<ListConnectorsError>
Source§impl Client
impl Client
Sourcepub fn list_executions(&self) -> ListExecutionsFluentBuilder
pub fn list_executions(&self) -> ListExecutionsFluentBuilder
Constructs a fluent builder for the ListExecutions
operation.
This operation supports pagination; See into_paginator()
.
- The fluent builder is configurable:
max_results(i32)
/set_max_results(Option<i32>)
:
required: falseSpecifies the maximum number of executions to return.
next_token(impl Into<String>)
/set_next_token(Option<String>)
:
required: falseListExecutions
returns theNextToken
parameter in the output. You can then pass theNextToken
parameter in a subsequent command to continue listing additional executions.This is useful for pagination, for instance. If you have 100 executions for a workflow, you might only want to list first 10. If so, call the API by specifying the
max-results
:aws transfer list-executions –max-results 10
This returns details for the first 10 executions, as well as the pointer (
NextToken
) to the eleventh execution. You can now call the API again, supplying theNextToken
value you received:aws transfer list-executions –max-results 10 –next-token $somePointerReturnedFromPreviousListResult
This call returns the next 10 executions, the 11th through the 20th. You can then repeat the call until the details for all 100 executions have been returned.
workflow_id(impl Into<String>)
/set_workflow_id(Option<String>)
:
required: trueA unique identifier for the workflow.
- On success, responds with
ListExecutionsOutput
with field(s):next_token(Option<String>)
:ListExecutions
returns theNextToken
parameter in the output. You can then pass theNextToken
parameter in a subsequent command to continue listing additional executions.workflow_id(String)
:A unique identifier for the workflow.
executions(Vec::<ListedExecution>)
:Returns the details for each execution, in a
ListedExecution
array.
- On failure, responds with
SdkError<ListExecutionsError>
Source§impl Client
impl Client
Sourcepub fn list_file_transfer_results(&self) -> ListFileTransferResultsFluentBuilder
pub fn list_file_transfer_results(&self) -> ListFileTransferResultsFluentBuilder
Constructs a fluent builder for the ListFileTransferResults
operation.
This operation supports pagination; See into_paginator()
.
- The fluent builder is configurable:
connector_id(impl Into<String>)
/set_connector_id(Option<String>)
:
required: trueA unique identifier for a connector. This value should match the value supplied to the corresponding
StartFileTransfer
call.transfer_id(impl Into<String>)
/set_transfer_id(Option<String>)
:
required: trueA unique identifier for a file transfer. This value should match the value supplied to the corresponding
StartFileTransfer
call.next_token(impl Into<String>)
/set_next_token(Option<String>)
:
required: falseIf there are more file details than returned in this call, use this value for a subsequent call to
ListFileTransferResults
to retrieve them.max_results(i32)
/set_max_results(Option<i32>)
:
required: falseThe maximum number of files to return in a single page. Note that currently you can specify a maximum of 10 file paths in a single StartFileTransfer operation. Thus, the maximum number of file transfer results that can be returned in a single page is 10.
- On success, responds with
ListFileTransferResultsOutput
with field(s):file_transfer_results(Vec::<ConnectorFileTransferResult>)
:Returns the details for the files transferred in the transfer identified by the
TransferId
andConnectorId
specified.-
FilePath
: the filename and path to where the file was sent to or retrieved from. -
StatusCode
: current status for the transfer. The status returned is one of the following values:QUEUED
,IN_PROGRESS
,COMPLETED
, orFAILED
-
FailureCode
: for transfers that fail, this parameter contains a code indicating the reason. For example,RETRIEVE_FILE_NOT_FOUND
-
FailureMessage
: for transfers that fail, this parameter describes the reason for the failure.
-
next_token(Option<String>)
:Returns a token that you can use to call
ListFileTransferResults
again and receive additional results, if there are any (against the sameTransferId
.
- On failure, responds with
SdkError<ListFileTransferResultsError>
Source§impl Client
impl Client
Sourcepub fn list_host_keys(&self) -> ListHostKeysFluentBuilder
pub fn list_host_keys(&self) -> ListHostKeysFluentBuilder
Constructs a fluent builder for the ListHostKeys
operation.
- The fluent builder is configurable:
max_results(i32)
/set_max_results(Option<i32>)
:
required: falseThe maximum number of host keys to return.
next_token(impl Into<String>)
/set_next_token(Option<String>)
:
required: falseWhen there are additional results that were not returned, a
NextToken
parameter is returned. You can use that value for a subsequent call toListHostKeys
to continue listing results.server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueThe identifier of the server that contains the host keys that you want to view.
- On success, responds with
ListHostKeysOutput
with field(s):next_token(Option<String>)
:Returns a token that you can use to call
ListHostKeys
again and receive additional results, if there are any.server_id(String)
:Returns the server identifier that contains the listed host keys.
host_keys(Vec::<ListedHostKey>)
:Returns an array, where each item contains the details of a host key.
- On failure, responds with
SdkError<ListHostKeysError>
Source§impl Client
impl Client
Sourcepub fn list_profiles(&self) -> ListProfilesFluentBuilder
pub fn list_profiles(&self) -> ListProfilesFluentBuilder
Constructs a fluent builder for the ListProfiles
operation.
This operation supports pagination; See into_paginator()
.
- The fluent builder is configurable:
max_results(i32)
/set_max_results(Option<i32>)
:
required: falseThe maximum number of profiles to return.
next_token(impl Into<String>)
/set_next_token(Option<String>)
:
required: falseWhen there are additional results that were not returned, a
NextToken
parameter is returned. You can use that value for a subsequent call toListProfiles
to continue listing results.profile_type(ProfileType)
/set_profile_type(Option<ProfileType>)
:
required: falseIndicates whether to list only
LOCAL
type profiles or onlyPARTNER
type profiles. If not supplied in the request, the command lists all types of profiles.
- On success, responds with
ListProfilesOutput
with field(s):next_token(Option<String>)
:Returns a token that you can use to call
ListProfiles
again and receive additional results, if there are any.profiles(Vec::<ListedProfile>)
:Returns an array, where each item contains the details of a profile.
- On failure, responds with
SdkError<ListProfilesError>
Source§impl Client
impl Client
Sourcepub fn list_security_policies(&self) -> ListSecurityPoliciesFluentBuilder
pub fn list_security_policies(&self) -> ListSecurityPoliciesFluentBuilder
Constructs a fluent builder for the ListSecurityPolicies
operation.
This operation supports pagination; See into_paginator()
.
- The fluent builder is configurable:
max_results(i32)
/set_max_results(Option<i32>)
:
required: falseSpecifies the number of security policies to return as a response to the
ListSecurityPolicies
query.next_token(impl Into<String>)
/set_next_token(Option<String>)
:
required: falseWhen additional results are obtained from the
ListSecurityPolicies
command, aNextToken
parameter is returned in the output. You can then pass theNextToken
parameter in a subsequent command to continue listing additional security policies.
- On success, responds with
ListSecurityPoliciesOutput
with field(s):next_token(Option<String>)
:When you can get additional results from the
ListSecurityPolicies
operation, aNextToken
parameter is returned in the output. In a following command, you can pass in theNextToken
parameter to continue listing security policies.security_policy_names(Vec::<String>)
:An array of security policies that were listed.
- On failure, responds with
SdkError<ListSecurityPoliciesError>
Source§impl Client
impl Client
Sourcepub fn list_servers(&self) -> ListServersFluentBuilder
pub fn list_servers(&self) -> ListServersFluentBuilder
Constructs a fluent builder for the ListServers
operation.
This operation supports pagination; See into_paginator()
.
- The fluent builder is configurable:
max_results(i32)
/set_max_results(Option<i32>)
:
required: falseSpecifies the number of servers to return as a response to the
ListServers
query.next_token(impl Into<String>)
/set_next_token(Option<String>)
:
required: falseWhen additional results are obtained from the
ListServers
command, aNextToken
parameter is returned in the output. You can then pass theNextToken
parameter in a subsequent command to continue listing additional servers.
- On success, responds with
ListServersOutput
with field(s):next_token(Option<String>)
:When you can get additional results from the
ListServers
operation, aNextToken
parameter is returned in the output. In a following command, you can pass in theNextToken
parameter to continue listing additional servers.servers(Vec::<ListedServer>)
:An array of servers that were listed.
- On failure, responds with
SdkError<ListServersError>
Source§impl Client
impl Client
Constructs a fluent builder for the ListTagsForResource
operation.
This operation supports pagination; See into_paginator()
.
- The fluent builder is configurable:
arn(impl Into<String>)
/set_arn(Option<String>)
:
required: trueRequests the tags associated with a particular Amazon Resource Name (ARN). An ARN is an identifier for a specific Amazon Web Services resource, such as a server, user, or role.
max_results(i32)
/set_max_results(Option<i32>)
:
required: falseSpecifies the number of tags to return as a response to the
ListTagsForResource
request.next_token(impl Into<String>)
/set_next_token(Option<String>)
:
required: falseWhen you request additional results from the
ListTagsForResource
operation, aNextToken
parameter is returned in the input. You can then pass in a subsequent command to theNextToken
parameter to continue listing additional tags.
- On success, responds with
ListTagsForResourceOutput
with field(s):arn(Option<String>)
:The ARN you specified to list the tags of.
next_token(Option<String>)
:When you can get additional results from the
ListTagsForResource
call, aNextToken
parameter is returned in the output. You can then pass in a subsequent command to theNextToken
parameter to continue listing additional tags.tags(Option<Vec::<Tag>>)
:Key-value pairs that are assigned to a resource, usually for the purpose of grouping and searching for items. Tags are metadata that you define.
- On failure, responds with
SdkError<ListTagsForResourceError>
Source§impl Client
impl Client
Sourcepub fn list_users(&self) -> ListUsersFluentBuilder
pub fn list_users(&self) -> ListUsersFluentBuilder
Constructs a fluent builder for the ListUsers
operation.
This operation supports pagination; See into_paginator()
.
- The fluent builder is configurable:
max_results(i32)
/set_max_results(Option<i32>)
:
required: falseSpecifies the number of users to return as a response to the
ListUsers
request.next_token(impl Into<String>)
/set_next_token(Option<String>)
:
required: falseIf there are additional results from the
ListUsers
call, aNextToken
parameter is returned in the output. You can then pass theNextToken
to a subsequentListUsers
command, to continue listing additional users.server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueA system-assigned unique identifier for a server that has users assigned to it.
- On success, responds with
ListUsersOutput
with field(s):next_token(Option<String>)
:When you can get additional results from the
ListUsers
call, aNextToken
parameter is returned in the output. You can then pass in a subsequent command to theNextToken
parameter to continue listing additional users.server_id(String)
:A system-assigned unique identifier for a server that the users are assigned to.
users(Vec::<ListedUser>)
:Returns the Transfer Family users and their properties for the
ServerId
value that you specify.
- On failure, responds with
SdkError<ListUsersError>
Source§impl Client
impl Client
Sourcepub fn list_workflows(&self) -> ListWorkflowsFluentBuilder
pub fn list_workflows(&self) -> ListWorkflowsFluentBuilder
Constructs a fluent builder for the ListWorkflows
operation.
This operation supports pagination; See into_paginator()
.
- The fluent builder is configurable:
max_results(i32)
/set_max_results(Option<i32>)
:
required: falseSpecifies the maximum number of workflows to return.
next_token(impl Into<String>)
/set_next_token(Option<String>)
:
required: falseListWorkflows
returns theNextToken
parameter in the output. You can then pass theNextToken
parameter in a subsequent command to continue listing additional workflows.
- On success, responds with
ListWorkflowsOutput
with field(s):next_token(Option<String>)
:ListWorkflows
returns theNextToken
parameter in the output. You can then pass theNextToken
parameter in a subsequent command to continue listing additional workflows.workflows(Vec::<ListedWorkflow>)
:Returns the
Arn
,WorkflowId
, andDescription
for each workflow.
- On failure, responds with
SdkError<ListWorkflowsError>
Source§impl Client
impl Client
Sourcepub fn send_workflow_step_state(&self) -> SendWorkflowStepStateFluentBuilder
pub fn send_workflow_step_state(&self) -> SendWorkflowStepStateFluentBuilder
Constructs a fluent builder for the SendWorkflowStepState
operation.
- The fluent builder is configurable:
workflow_id(impl Into<String>)
/set_workflow_id(Option<String>)
:
required: trueA unique identifier for the workflow.
execution_id(impl Into<String>)
/set_execution_id(Option<String>)
:
required: trueA unique identifier for the execution of a workflow.
token(impl Into<String>)
/set_token(Option<String>)
:
required: trueUsed to distinguish between multiple callbacks for multiple Lambda steps within the same execution.
status(CustomStepStatus)
/set_status(Option<CustomStepStatus>)
:
required: trueIndicates whether the specified step succeeded or failed.
- On success, responds with
SendWorkflowStepStateOutput
- On failure, responds with
SdkError<SendWorkflowStepStateError>
Source§impl Client
impl Client
Sourcepub fn start_directory_listing(&self) -> StartDirectoryListingFluentBuilder
pub fn start_directory_listing(&self) -> StartDirectoryListingFluentBuilder
Constructs a fluent builder for the StartDirectoryListing
operation.
- The fluent builder is configurable:
connector_id(impl Into<String>)
/set_connector_id(Option<String>)
:
required: trueThe unique identifier for the connector.
remote_directory_path(impl Into<String>)
/set_remote_directory_path(Option<String>)
:
required: trueSpecifies the directory on the remote SFTP server for which you want to list its contents.
max_items(i32)
/set_max_items(Option<i32>)
:
required: falseAn optional parameter where you can specify the maximum number of file/directory names to retrieve. The default value is 1,000.
output_directory_path(impl Into<String>)
/set_output_directory_path(Option<String>)
:
required: trueSpecifies the path (bucket and prefix) in Amazon S3 storage to store the results of the directory listing.
- On success, responds with
StartDirectoryListingOutput
with field(s):listing_id(String)
:Returns a unique identifier for the directory listing call.
output_file_name(String)
:Returns the file name where the results are stored. This is a combination of the connector ID and the listing ID:
<connector-id>-<listing-id>.json
.
- On failure, responds with
SdkError<StartDirectoryListingError>
Source§impl Client
impl Client
Sourcepub fn start_file_transfer(&self) -> StartFileTransferFluentBuilder
pub fn start_file_transfer(&self) -> StartFileTransferFluentBuilder
Constructs a fluent builder for the StartFileTransfer
operation.
- The fluent builder is configurable:
connector_id(impl Into<String>)
/set_connector_id(Option<String>)
:
required: trueThe unique identifier for the connector.
send_file_paths(impl Into<String>)
/set_send_file_paths(Option<Vec::<String>>)
:
required: falseOne or more source paths for the Amazon S3 storage. Each string represents a source file path for one outbound file transfer. For example,
amzn-s3-demo-bucket/myfile.txt
.Replace
amzn-s3-demo-bucket
with one of your actual buckets.retrieve_file_paths(impl Into<String>)
/set_retrieve_file_paths(Option<Vec::<String>>)
:
required: falseOne or more source paths for the partner’s SFTP server. Each string represents a source file path for one inbound file transfer.
local_directory_path(impl Into<String>)
/set_local_directory_path(Option<String>)
:
required: falseFor an inbound transfer, the
LocaDirectoryPath
specifies the destination for one or more files that are transferred from the partner’s SFTP server.remote_directory_path(impl Into<String>)
/set_remote_directory_path(Option<String>)
:
required: falseFor an outbound transfer, the
RemoteDirectoryPath
specifies the destination for one or more files that are transferred to the partner’s SFTP server. If you don’t specify aRemoteDirectoryPath
, the destination for transferred files is the SFTP user’s home directory.
- On success, responds with
StartFileTransferOutput
with field(s):transfer_id(String)
:Returns the unique identifier for the file transfer.
- On failure, responds with
SdkError<StartFileTransferError>
Source§impl Client
impl Client
Sourcepub fn start_server(&self) -> StartServerFluentBuilder
pub fn start_server(&self) -> StartServerFluentBuilder
Constructs a fluent builder for the StartServer
operation.
- The fluent builder is configurable:
server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueA system-assigned unique identifier for a server that you start.
- On success, responds with
StartServerOutput
- On failure, responds with
SdkError<StartServerError>
Source§impl Client
impl Client
Sourcepub fn stop_server(&self) -> StopServerFluentBuilder
pub fn stop_server(&self) -> StopServerFluentBuilder
Constructs a fluent builder for the StopServer
operation.
- The fluent builder is configurable:
server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueA system-assigned unique identifier for a server that you stopped.
- On success, responds with
StopServerOutput
- On failure, responds with
SdkError<StopServerError>
Source§impl Client
impl Client
Sourcepub fn tag_resource(&self) -> TagResourceFluentBuilder
pub fn tag_resource(&self) -> TagResourceFluentBuilder
Constructs a fluent builder for the TagResource
operation.
- The fluent builder is configurable:
arn(impl Into<String>)
/set_arn(Option<String>)
:
required: trueAn Amazon Resource Name (ARN) for a specific Amazon Web Services resource, such as a server, user, or role.
tags(Tag)
/set_tags(Option<Vec::<Tag>>)
:
required: trueKey-value pairs assigned to ARNs that you can use to group and search for resources by type. You can attach this metadata to resources (servers, users, workflows, and so on) for any purpose.
- On success, responds with
TagResourceOutput
- On failure, responds with
SdkError<TagResourceError>
Source§impl Client
impl Client
Sourcepub fn test_connection(&self) -> TestConnectionFluentBuilder
pub fn test_connection(&self) -> TestConnectionFluentBuilder
Constructs a fluent builder for the TestConnection
operation.
- The fluent builder is configurable:
connector_id(impl Into<String>)
/set_connector_id(Option<String>)
:
required: trueThe unique identifier for the connector.
- On success, responds with
TestConnectionOutput
with field(s):connector_id(Option<String>)
:Returns the identifier of the connector object that you are testing.
status(Option<String>)
:Returns
OK
for successful test, orERROR
if the test fails.status_message(Option<String>)
:Returns
Connection succeeded
if the test is successful. Or, returns a descriptive error message if the test fails. The following list provides troubleshooting details, depending on the error message that you receive.-
Verify that your secret name aligns with the one in Transfer Role permissions.
-
Verify the server URL in the connector configuration , and verify that the login credentials work successfully outside of the connector.
-
Verify that the secret exists and is formatted correctly.
-
Verify that the trusted host key in the connector configuration matches the
ssh-keyscan
output.
-
- On failure, responds with
SdkError<TestConnectionError>
Source§impl Client
impl Client
Sourcepub fn test_identity_provider(&self) -> TestIdentityProviderFluentBuilder
pub fn test_identity_provider(&self) -> TestIdentityProviderFluentBuilder
Constructs a fluent builder for the TestIdentityProvider
operation.
- The fluent builder is configurable:
server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueA system-assigned identifier for a specific server. That server’s user authentication method is tested with a user name and password.
server_protocol(Protocol)
/set_server_protocol(Option<Protocol>)
:
required: falseThe type of file transfer protocol to be tested.
The available protocols are:
-
Secure Shell (SSH) File Transfer Protocol (SFTP)
-
File Transfer Protocol Secure (FTPS)
-
File Transfer Protocol (FTP)
-
Applicability Statement 2 (AS2)
-
source_ip(impl Into<String>)
/set_source_ip(Option<String>)
:
required: falseThe source IP address of the account to be tested.
user_name(impl Into<String>)
/set_user_name(Option<String>)
:
required: trueThe name of the account to be tested.
user_password(impl Into<String>)
/set_user_password(Option<String>)
:
required: falseThe password of the account to be tested.
- On success, responds with
TestIdentityProviderOutput
with field(s):response(Option<String>)
:The response that is returned from your API Gateway or your Lambda function.
status_code(i32)
:The HTTP status code that is the response from your API Gateway or your Lambda function.
message(Option<String>)
:A message that indicates whether the test was successful or not.
If an empty string is returned, the most likely cause is that the authentication failed due to an incorrect username or password.
url(String)
:The endpoint of the service used to authenticate a user.
- On failure, responds with
SdkError<TestIdentityProviderError>
Source§impl Client
impl Client
Sourcepub fn untag_resource(&self) -> UntagResourceFluentBuilder
pub fn untag_resource(&self) -> UntagResourceFluentBuilder
Constructs a fluent builder for the UntagResource
operation.
- The fluent builder is configurable:
arn(impl Into<String>)
/set_arn(Option<String>)
:
required: trueThe value of the resource that will have the tag removed. An Amazon Resource Name (ARN) is an identifier for a specific Amazon Web Services resource, such as a server, user, or role.
tag_keys(impl Into<String>)
/set_tag_keys(Option<Vec::<String>>)
:
required: trueTagKeys are key-value pairs assigned to ARNs that can be used to group and search for resources by type. This metadata can be attached to resources for any purpose.
- On success, responds with
UntagResourceOutput
- On failure, responds with
SdkError<UntagResourceError>
Source§impl Client
impl Client
Sourcepub fn update_access(&self) -> UpdateAccessFluentBuilder
pub fn update_access(&self) -> UpdateAccessFluentBuilder
Constructs a fluent builder for the UpdateAccess
operation.
- The fluent builder is configurable:
home_directory(impl Into<String>)
/set_home_directory(Option<String>)
:
required: falseThe landing directory (folder) for a user when they log in to the server using the client.
A
HomeDirectory
example is/bucket_name/home/mydirectory
.The
HomeDirectory
parameter is only used ifHomeDirectoryType
is set toPATH
.home_directory_type(HomeDirectoryType)
/set_home_directory_type(Option<HomeDirectoryType>)
:
required: falseThe type of landing directory (folder) that you want your users’ home directory to be when they log in to the server. If you set it to
PATH
, the user will see the absolute Amazon S3 bucket or Amazon EFS path as is in their file transfer protocol clients. If you set it toLOGICAL
, you need to provide mappings in theHomeDirectoryMappings
for how you want to make Amazon S3 or Amazon EFS paths visible to your users.If
HomeDirectoryType
isLOGICAL
, you must provide mappings, using theHomeDirectoryMappings
parameter. If, on the other hand,HomeDirectoryType
isPATH
, you provide an absolute path using theHomeDirectory
parameter. You cannot have bothHomeDirectory
andHomeDirectoryMappings
in your template.home_directory_mappings(HomeDirectoryMapEntry)
/set_home_directory_mappings(Option<Vec::<HomeDirectoryMapEntry>>)
:
required: falseLogical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to your user and how you want to make them visible. You must specify the
Entry
andTarget
pair, whereEntry
shows how the path is made visible andTarget
is the actual Amazon S3 or Amazon EFS path. If you only specify a target, it is displayed as is. You also must ensure that your Identity and Access Management (IAM) role provides access to paths inTarget
. This value can be set only whenHomeDirectoryType
is set to LOGICAL.The following is an
Entry
andTarget
pair example.[ { “Entry”: “/directory1”, “Target”: “/bucket_name/home/mydirectory” } ]
In most cases, you can use this value instead of the session policy to lock down your user to the designated home directory (“
chroot
”). To do this, you can setEntry
to/
and setTarget
to theHomeDirectory
parameter value.The following is an
Entry
andTarget
pair example forchroot
.[ { “Entry”: “/”, “Target”: “/bucket_name/home/mydirectory” } ]
policy(impl Into<String>)
/set_policy(Option<String>)
:
required: falseA session policy for your user so that you can use the same Identity and Access Management (IAM) role across multiple users. This policy scopes down a user’s access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include
${Transfer:UserName}
,${Transfer:HomeDirectory}
, and${Transfer:HomeBucket}
.This policy applies only when the domain of
ServerId
is Amazon S3. Amazon EFS does not use session policies.For session policies, Transfer Family stores the policy as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. You save the policy as a JSON blob and pass it in the
Policy
argument.For an example of a session policy, see Example session policy.
For more information, see AssumeRole in the Amazon Web ServicesSecurity Token Service API Reference.
posix_profile(PosixProfile)
/set_posix_profile(Option<PosixProfile>)
:
required: falseThe full POSIX identity, including user ID (
Uid
), group ID (Gid
), and any secondary groups IDs (SecondaryGids
), that controls your users’ access to your Amazon EFS file systems. The POSIX permissions that are set on files and directories in your file system determine the level of access your users get when transferring files into and out of your Amazon EFS file systems.role(impl Into<String>)
/set_role(Option<String>)
:
required: falseThe Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that controls your users’ access to your Amazon S3 bucket or Amazon EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or Amazon EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users’ transfer requests.
server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueA system-assigned unique identifier for a server instance. This is the specific server that you added your user to.
external_id(impl Into<String>)
/set_external_id(Option<String>)
:
required: trueA unique identifier that is required to identify specific groups within your directory. The users of the group that you associate have access to your Amazon S3 or Amazon EFS resources over the enabled protocols using Transfer Family. If you know the group name, you can view the SID values by running the following command using Windows PowerShell.
Get-ADGroup -Filter {samAccountName -like “YourGroupName*”} -Properties * | Select SamAccountName,ObjectSid
In that command, replace YourGroupName with the name of your Active Directory group.
The regular expression used to validate this parameter is a string of characters consisting of uppercase and lowercase alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@:/-
- On success, responds with
UpdateAccessOutput
with field(s):server_id(String)
:The identifier of the server that the user is attached to.
external_id(String)
:The external identifier of the group whose users have access to your Amazon S3 or Amazon EFS resources over the enabled protocols using Amazon Web ServicesTransfer Family.
- On failure, responds with
SdkError<UpdateAccessError>
Source§impl Client
impl Client
Sourcepub fn update_agreement(&self) -> UpdateAgreementFluentBuilder
pub fn update_agreement(&self) -> UpdateAgreementFluentBuilder
Constructs a fluent builder for the UpdateAgreement
operation.
- The fluent builder is configurable:
agreement_id(impl Into<String>)
/set_agreement_id(Option<String>)
:
required: trueA unique identifier for the agreement. This identifier is returned when you create an agreement.
server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueA system-assigned unique identifier for a server instance. This is the specific server that the agreement uses.
description(impl Into<String>)
/set_description(Option<String>)
:
required: falseTo replace the existing description, provide a short description for the agreement.
status(AgreementStatusType)
/set_status(Option<AgreementStatusType>)
:
required: falseYou can update the status for the agreement, either activating an inactive agreement or the reverse.
local_profile_id(impl Into<String>)
/set_local_profile_id(Option<String>)
:
required: falseA unique identifier for the AS2 local profile.
To change the local profile identifier, provide a new value here.
partner_profile_id(impl Into<String>)
/set_partner_profile_id(Option<String>)
:
required: falseA unique identifier for the partner profile. To change the partner profile identifier, provide a new value here.
base_directory(impl Into<String>)
/set_base_directory(Option<String>)
:
required: falseTo change the landing directory (folder) for files that are transferred, provide the bucket folder that you want to use; for example,
/amzn-s3-demo-bucket/home/mydirectory
.access_role(impl Into<String>)
/set_access_role(Option<String>)
:
required: falseConnectors are used to send files using either the AS2 or SFTP protocol. For the access role, provide the Amazon Resource Name (ARN) of the Identity and Access Management role to use.
For AS2 connectors
With AS2, you can send files by calling
StartFileTransfer
and specifying the file paths in the request parameter,SendFilePaths
. We use the file’s parent directory (for example, for–send-file-paths /bucket/dir/file.txt
, parent directory is/bucket/dir/
) to temporarily store a processed AS2 message file, store the MDN when we receive them from the partner, and write a final JSON file containing relevant metadata of the transmission. So, theAccessRole
needs to provide read and write access to the parent directory of the file location used in theStartFileTransfer
request. Additionally, you need to provide read and write access to the parent directory of the files that you intend to send withStartFileTransfer
.If you are using Basic authentication for your AS2 connector, the access role requires the
secretsmanager:GetSecretValue
permission for the secret. If the secret is encrypted using a customer-managed key instead of the Amazon Web Services managed key in Secrets Manager, then the role also needs thekms:Decrypt
permission for that key.For SFTP connectors
Make sure that the access role provides read and write access to the parent directory of the file location that’s used in the
StartFileTransfer
request. Additionally, make sure that the role providessecretsmanager:GetSecretValue
permission to Secrets Manager.
- On success, responds with
UpdateAgreementOutput
with field(s):agreement_id(String)
:A unique identifier for the agreement. This identifier is returned when you create an agreement.
- On failure, responds with
SdkError<UpdateAgreementError>
Source§impl Client
impl Client
Sourcepub fn update_certificate(&self) -> UpdateCertificateFluentBuilder
pub fn update_certificate(&self) -> UpdateCertificateFluentBuilder
Constructs a fluent builder for the UpdateCertificate
operation.
- The fluent builder is configurable:
certificate_id(impl Into<String>)
/set_certificate_id(Option<String>)
:
required: trueThe identifier of the certificate object that you are updating.
active_date(DateTime)
/set_active_date(Option<DateTime>)
:
required: falseAn optional date that specifies when the certificate becomes active.
inactive_date(DateTime)
/set_inactive_date(Option<DateTime>)
:
required: falseAn optional date that specifies when the certificate becomes inactive.
description(impl Into<String>)
/set_description(Option<String>)
:
required: falseA short description to help identify the certificate.
- On success, responds with
UpdateCertificateOutput
with field(s):certificate_id(String)
:Returns the identifier of the certificate object that you are updating.
- On failure, responds with
SdkError<UpdateCertificateError>
Source§impl Client
impl Client
Sourcepub fn update_connector(&self) -> UpdateConnectorFluentBuilder
pub fn update_connector(&self) -> UpdateConnectorFluentBuilder
Constructs a fluent builder for the UpdateConnector
operation.
- The fluent builder is configurable:
connector_id(impl Into<String>)
/set_connector_id(Option<String>)
:
required: trueThe unique identifier for the connector.
url(impl Into<String>)
/set_url(Option<String>)
:
required: falseThe URL of the partner’s AS2 or SFTP endpoint.
as2_config(As2ConnectorConfig)
/set_as2_config(Option<As2ConnectorConfig>)
:
required: falseA structure that contains the parameters for an AS2 connector object.
access_role(impl Into<String>)
/set_access_role(Option<String>)
:
required: falseConnectors are used to send files using either the AS2 or SFTP protocol. For the access role, provide the Amazon Resource Name (ARN) of the Identity and Access Management role to use.
For AS2 connectors
With AS2, you can send files by calling
StartFileTransfer
and specifying the file paths in the request parameter,SendFilePaths
. We use the file’s parent directory (for example, for–send-file-paths /bucket/dir/file.txt
, parent directory is/bucket/dir/
) to temporarily store a processed AS2 message file, store the MDN when we receive them from the partner, and write a final JSON file containing relevant metadata of the transmission. So, theAccessRole
needs to provide read and write access to the parent directory of the file location used in theStartFileTransfer
request. Additionally, you need to provide read and write access to the parent directory of the files that you intend to send withStartFileTransfer
.If you are using Basic authentication for your AS2 connector, the access role requires the
secretsmanager:GetSecretValue
permission for the secret. If the secret is encrypted using a customer-managed key instead of the Amazon Web Services managed key in Secrets Manager, then the role also needs thekms:Decrypt
permission for that key.For SFTP connectors
Make sure that the access role provides read and write access to the parent directory of the file location that’s used in the
StartFileTransfer
request. Additionally, make sure that the role providessecretsmanager:GetSecretValue
permission to Secrets Manager.logging_role(impl Into<String>)
/set_logging_role(Option<String>)
:
required: falseThe Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that allows a connector to turn on CloudWatch logging for Amazon S3 events. When set, you can view connector activity in your CloudWatch logs.
sftp_config(SftpConnectorConfig)
/set_sftp_config(Option<SftpConnectorConfig>)
:
required: falseA structure that contains the parameters for an SFTP connector object.
security_policy_name(impl Into<String>)
/set_security_policy_name(Option<String>)
:
required: falseSpecifies the name of the security policy for the connector.
- On success, responds with
UpdateConnectorOutput
with field(s):connector_id(String)
:Returns the identifier of the connector object that you are updating.
- On failure, responds with
SdkError<UpdateConnectorError>
Source§impl Client
impl Client
Sourcepub fn update_host_key(&self) -> UpdateHostKeyFluentBuilder
pub fn update_host_key(&self) -> UpdateHostKeyFluentBuilder
Constructs a fluent builder for the UpdateHostKey
operation.
- The fluent builder is configurable:
server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueThe identifier of the server that contains the host key that you are updating.
host_key_id(impl Into<String>)
/set_host_key_id(Option<String>)
:
required: trueThe identifier of the host key that you are updating.
description(impl Into<String>)
/set_description(Option<String>)
:
required: trueAn updated description for the host key.
- On success, responds with
UpdateHostKeyOutput
with field(s):server_id(String)
:Returns the server identifier for the server that contains the updated host key.
host_key_id(String)
:Returns the host key identifier for the updated host key.
- On failure, responds with
SdkError<UpdateHostKeyError>
Source§impl Client
impl Client
Sourcepub fn update_profile(&self) -> UpdateProfileFluentBuilder
pub fn update_profile(&self) -> UpdateProfileFluentBuilder
Constructs a fluent builder for the UpdateProfile
operation.
- The fluent builder is configurable:
profile_id(impl Into<String>)
/set_profile_id(Option<String>)
:
required: trueThe identifier of the profile object that you are updating.
certificate_ids(impl Into<String>)
/set_certificate_ids(Option<Vec::<String>>)
:
required: falseAn array of identifiers for the imported certificates. You use this identifier for working with profiles and partner profiles.
- On success, responds with
UpdateProfileOutput
with field(s):profile_id(String)
:Returns the identifier for the profile that’s being updated.
- On failure, responds with
SdkError<UpdateProfileError>
Source§impl Client
impl Client
Sourcepub fn update_server(&self) -> UpdateServerFluentBuilder
pub fn update_server(&self) -> UpdateServerFluentBuilder
Constructs a fluent builder for the UpdateServer
operation.
- The fluent builder is configurable:
certificate(impl Into<String>)
/set_certificate(Option<String>)
:
required: falseThe Amazon Resource Name (ARN) of the Amazon Web ServicesCertificate Manager (ACM) certificate. Required when
Protocols
is set toFTPS
.To request a new public certificate, see Request a public certificate in the Amazon Web ServicesCertificate Manager User Guide.
To import an existing certificate into ACM, see Importing certificates into ACM in the Amazon Web ServicesCertificate Manager User Guide.
To request a private certificate to use FTPS through private IP addresses, see Request a private certificate in the Amazon Web ServicesCertificate 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.
-
protocol_details(ProtocolDetails)
/set_protocol_details(Option<ProtocolDetails>)
:
required: falseThe 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 theSetStatOption
parameter. To have the Transfer Family server ignore theSETSTAT
command and upload files without needing to make any changes to your SFTP client, set the value toENABLE_NO_OP
. If you set theSetStatOption
parameter toENABLE_NO_OP
, Transfer Family generates a log entry to Amazon CloudWatch Logs, so that you can determine when the client is making aSETSTAT
call. -
To determine whether your 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.
-
endpoint_details(EndpointDetails)
/set_endpoint_details(Option<EndpointDetails>)
:
required: falseThe 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(EndpointType)
/set_endpoint_type(Option<EndpointType>)
:
required: falseThe 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 Amazon Web Services account if your account hasn’t already done so before May 19, 2021. If you have already created servers withEndpointType=VPC_ENDPOINT
in your Amazon Web Services account on or before May 19, 2021, you will not be affected. After this date, useEndpointType
=VPC
.For more information, see https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
It is recommended that you use
VPC
as theEndpointType
. 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 withEndpointType
set toVPC_ENDPOINT
.host_key(impl Into<String>)
/set_host_key(Option<String>)
:
required: falseThe RSA, ECDSA, or ED25519 private key to use for your SFTP-enabled server. You can add multiple host keys, in case you want to rotate keys, or have a set of active keys that use different algorithms.
Use the following command to generate an RSA 2048 bit key with no passphrase:
ssh-keygen -t rsa -b 2048 -N “” -m PEM -f my-new-server-key
.Use a minimum value of 2048 for the
-b
option. You can create a stronger key by using 3072 or 4096.Use the following command to generate an ECDSA 256 bit key with no passphrase:
ssh-keygen -t ecdsa -b 256 -N “” -m PEM -f my-new-server-key
.Valid values for the
-b
option for ECDSA are 256, 384, and 521.Use the following command to generate an ED25519 key with no passphrase:
ssh-keygen -t ed25519 -N “” -f my-new-server-key
.For all of these commands, you can replace my-new-server-key with a string of your choice.
If you aren’t planning to migrate existing users from an existing SFTP-enabled server to a new server, don’t update the host key. Accidentally changing a server’s host key can be disruptive.
For more information, see Manage host keys for your SFTP-enabled server in the Transfer Family User Guide.
identity_provider_details(IdentityProviderDetails)
/set_identity_provider_details(Option<IdentityProviderDetails>)
:
required: falseAn array containing all of the information required to call a customer’s authentication API method.
logging_role(impl Into<String>)
/set_logging_role(Option<String>)
:
required: falseThe Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFSevents. When set, you can view user activity in your CloudWatch logs.
post_authentication_login_banner(impl Into<String>)
/set_post_authentication_login_banner(Option<String>)
:
required: falseSpecifies 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(impl Into<String>)
/set_pre_authentication_login_banner(Option<String>)
:
required: falseSpecifies 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.
protocols(Protocol)
/set_protocols(Option<Vec::<Protocol>>)
:
required: falseSpecifies 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 Certificate Manager (ACM) which is used to identify your server when clients connect to it over FTPS. -
If
Protocol
includes eitherFTP
orFTPS
, then theEndpointType
must beVPC
and theIdentityProviderType
must be eitherAWS_DIRECTORY_SERVICE
,AWS_LAMBDA
, orAPI_GATEWAY
. -
If
Protocol
includesFTP
, thenAddressAllocationIds
cannot be associated. -
If
Protocol
is set only toSFTP
, theEndpointType
can be set toPUBLIC
and theIdentityProviderType
can be set any of the supported identity types:SERVICE_MANAGED
,AWS_DIRECTORY_SERVICE
,AWS_LAMBDA
, orAPI_GATEWAY
. -
If
Protocol
includesAS2
, then theEndpointType
must beVPC
, and domain must be Amazon S3.
-
security_policy_name(impl Into<String>)
/set_security_policy_name(Option<String>)
:
required: falseSpecifies the name of the security policy for the server.
server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueA system-assigned unique identifier for a server instance that the Transfer Family user is assigned to.
workflow_details(WorkflowDetails)
/set_workflow_details(Option<WorkflowDetails>)
:
required: falseSpecifies 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 the server session disconnects while the file is still being 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”:[]}’
structured_log_destinations(impl Into<String>)
/set_structured_log_destinations(Option<Vec::<String>>)
:
required: falseSpecifies 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
s3_storage_options(S3StorageOptions)
/set_s3_storage_options(Option<S3StorageOptions>)
:
required: falseSpecifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default.
By default, home directory mappings have a
TYPE
ofDIRECTORY
. If you enable this option, you would then need to explicitly set theHomeDirectoryMapEntry
Type
toFILE
if you want a mapping to have a file target.
- On success, responds with
UpdateServerOutput
with field(s):server_id(String)
:A system-assigned unique identifier for a server that the Transfer Family user is assigned to.
- On failure, responds with
SdkError<UpdateServerError>
Source§impl Client
impl Client
Sourcepub fn update_user(&self) -> UpdateUserFluentBuilder
pub fn update_user(&self) -> UpdateUserFluentBuilder
Constructs a fluent builder for the UpdateUser
operation.
- The fluent builder is configurable:
home_directory(impl Into<String>)
/set_home_directory(Option<String>)
:
required: falseThe landing directory (folder) for a user when they log in to the server using the client.
A
HomeDirectory
example is/bucket_name/home/mydirectory
.The
HomeDirectory
parameter is only used ifHomeDirectoryType
is set toPATH
.home_directory_type(HomeDirectoryType)
/set_home_directory_type(Option<HomeDirectoryType>)
:
required: falseThe type of landing directory (folder) that you want your users’ home directory to be when they log in to the server. If you set it to
PATH
, the user will see the absolute Amazon S3 bucket or Amazon EFS path as is in their file transfer protocol clients. If you set it toLOGICAL
, you need to provide mappings in theHomeDirectoryMappings
for how you want to make Amazon S3 or Amazon EFS paths visible to your users.If
HomeDirectoryType
isLOGICAL
, you must provide mappings, using theHomeDirectoryMappings
parameter. If, on the other hand,HomeDirectoryType
isPATH
, you provide an absolute path using theHomeDirectory
parameter. You cannot have bothHomeDirectory
andHomeDirectoryMappings
in your template.home_directory_mappings(HomeDirectoryMapEntry)
/set_home_directory_mappings(Option<Vec::<HomeDirectoryMapEntry>>)
:
required: falseLogical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to your user and how you want to make them visible. You must specify the
Entry
andTarget
pair, whereEntry
shows how the path is made visible andTarget
is the actual Amazon S3 or Amazon EFS path. If you only specify a target, it is displayed as is. You also must ensure that your Identity and Access Management (IAM) role provides access to paths inTarget
. This value can be set only whenHomeDirectoryType
is set to LOGICAL.The following is an
Entry
andTarget
pair example.[ { “Entry”: “/directory1”, “Target”: “/bucket_name/home/mydirectory” } ]
In most cases, you can use this value instead of the session policy to lock down your user to the designated home directory (“
chroot
”). To do this, you can setEntry
to ‘/’ and setTarget
to the HomeDirectory parameter value.The following is an
Entry
andTarget
pair example forchroot
.[ { “Entry”: “/”, “Target”: “/bucket_name/home/mydirectory” } ]
policy(impl Into<String>)
/set_policy(Option<String>)
:
required: falseA session policy for your user so that you can use the same Identity and Access Management (IAM) role across multiple users. This policy scopes down a user’s access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include
${Transfer:UserName}
,${Transfer:HomeDirectory}
, and${Transfer:HomeBucket}
.This policy applies only when the domain of
ServerId
is Amazon S3. Amazon EFS does not use session policies.For session policies, Transfer Family stores the policy as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. You save the policy as a JSON blob and pass it in the
Policy
argument.For an example of a session policy, see Creating a session policy.
For more information, see AssumeRole in the Amazon Web Services Security Token Service API Reference.
posix_profile(PosixProfile)
/set_posix_profile(Option<PosixProfile>)
:
required: falseSpecifies the full POSIX identity, including user ID (
Uid
), group ID (Gid
), and any secondary groups IDs (SecondaryGids
), that controls your users’ access to your Amazon Elastic File Systems (Amazon EFS). The POSIX permissions that are set on files and directories in your file system determines the level of access your users get when transferring files into and out of your Amazon EFS file systems.role(impl Into<String>)
/set_role(Option<String>)
:
required: falseThe Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that controls your users’ access to your Amazon S3 bucket or Amazon EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or Amazon EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users’ transfer requests.
server_id(impl Into<String>)
/set_server_id(Option<String>)
:
required: trueA system-assigned unique identifier for a Transfer Family server instance that the user is assigned to.
user_name(impl Into<String>)
/set_user_name(Option<String>)
:
required: trueA unique string that identifies a user and is associated with a server as specified by the
ServerId
. This user name must be a minimum of 3 and a maximum of 100 characters long. The following are valid characters: a-z, A-Z, 0-9, underscore ‘_’, hyphen ‘-’, period ‘.’, and at sign ‘@’. The user name can’t start with a hyphen, period, or at sign.
- On success, responds with
UpdateUserOutput
with field(s):server_id(String)
:A system-assigned unique identifier for a Transfer Family server instance that the account is assigned to.
user_name(String)
:The unique identifier for a user that is assigned to a server instance that was specified in the request.
- On failure, responds with
SdkError<UpdateUserError>
Source§impl Client
impl Client
Sourcepub fn from_conf(conf: Config) -> Self
pub fn from_conf(conf: Config) -> Self
Creates a new client from the service Config
.
§Panics
This method will panic in the following cases:
- Retries or timeouts are enabled without a
sleep_impl
configured. - Identity caching is enabled without a
sleep_impl
andtime_source
configured. - No
behavior_version
is provided.
The panic message for each of these will have instructions on how to resolve them.
Source§impl Client
impl Client
Sourcepub fn new(sdk_config: &SdkConfig) -> Self
pub fn new(sdk_config: &SdkConfig) -> Self
Creates a new client from an SDK Config.
§Panics
- This method will panic if the
sdk_config
is missing an async sleep implementation. If you experience this panic, set thesleep_impl
on the Config passed into this function to fix it. - This method will panic if the
sdk_config
is missing an HTTP connector. If you experience this panic, set thehttp_connector
on the Config passed into this function to fix it. - This method will panic if no
BehaviorVersion
is provided. If you experience this panic, setbehavior_version
on the Config or enable thebehavior-version-latest
Cargo feature.
Trait Implementations§
Source§impl Waiters for Client
impl Waiters for Client
Source§fn wait_until_server_offline(&self) -> ServerOfflineFluentBuilder
fn wait_until_server_offline(&self) -> ServerOfflineFluentBuilder
server_offline
Source§fn wait_until_server_online(&self) -> ServerOnlineFluentBuilder
fn wait_until_server_online(&self) -> ServerOnlineFluentBuilder
server_online
Auto Trait Implementations§
impl Freeze for Client
impl !RefUnwindSafe for Client
impl Send for Client
impl Sync for Client
impl Unpin for Client
impl !UnwindSafe for Client
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the foreground set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red()
and
green()
, which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg()
:
use yansi::{Paint, Color};
painted.fg(Color::White);
Set foreground color to white using white()
.
use yansi::Paint;
painted.white();
Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Returns self
with the
fg()
set to
Color::BrightBlack
.
§Example
println!("{}", value.bright_black());
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Returns self
with the
fg()
set to
Color::BrightGreen
.
§Example
println!("{}", value.bright_green());
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Returns self
with the
fg()
set to
Color::BrightYellow
.
§Example
println!("{}", value.bright_yellow());
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Returns self
with the
fg()
set to
Color::BrightMagenta
.
§Example
println!("{}", value.bright_magenta());
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Returns self
with the
fg()
set to
Color::BrightWhite
.
§Example
println!("{}", value.bright_white());
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the background set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red()
and
on_green()
, which have the same functionality but
are pithier.
§Example
Set background color to red using fg()
:
use yansi::{Paint, Color};
painted.bg(Color::Red);
Set background color to red using on_red()
.
use yansi::Paint;
painted.on_red();
Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Returns self
with the
bg()
set to
Color::BrightBlack
.
§Example
println!("{}", value.on_bright_black());
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Returns self
with the
bg()
set to
Color::BrightGreen
.
§Example
println!("{}", value.on_bright_green());
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Returns self
with the
bg()
set to
Color::BrightYellow
.
§Example
println!("{}", value.on_bright_yellow());
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Returns self
with the
bg()
set to
Color::BrightBlue
.
§Example
println!("{}", value.on_bright_blue());
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Returns self
with the
bg()
set to
Color::BrightMagenta
.
§Example
println!("{}", value.on_bright_magenta());
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Returns self
with the
bg()
set to
Color::BrightCyan
.
§Example
println!("{}", value.on_bright_cyan());
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Returns self
with the
bg()
set to
Color::BrightWhite
.
§Example
println!("{}", value.on_bright_white());
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute
value
.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold()
and
underline()
, which have the same functionality
but are pithier.
§Example
Make text bold using attr()
:
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);
Make text bold using using bold()
.
use yansi::Paint;
painted.bold();
Source§fn underline(&self) -> Painted<&T>
fn underline(&self) -> Painted<&T>
Returns self
with the
attr()
set to
Attribute::Underline
.
§Example
println!("{}", value.underline());
Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Returns self
with the
attr()
set to
Attribute::RapidBlink
.
§Example
println!("{}", value.rapid_blink());
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi
Quirk
value
.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask()
and
wrap()
, which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk()
:
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);
Enable wrapping using wrap()
.
use yansi::Paint;
painted.wrap();
Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.
fn clear(&self) -> Painted<&T>
resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition
value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted
only when both stdout
and stderr
are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);