AWS SDK for C++  1.8.51
AWS SDK for C++
Public Member Functions | List of all members
Aws::Transfer::Model::CreateUserRequest Class Reference

#include <CreateUserRequest.h>

+ Inheritance diagram for Aws::Transfer::Model::CreateUserRequest:

Public Member Functions

 CreateUserRequest ()
 
virtual const char * GetServiceRequestName () const override
 
Aws::String SerializePayload () const override
 
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders () const override
 
const Aws::StringGetHomeDirectory () const
 
bool HomeDirectoryHasBeenSet () const
 
void SetHomeDirectory (const Aws::String &value)
 
void SetHomeDirectory (Aws::String &&value)
 
void SetHomeDirectory (const char *value)
 
CreateUserRequestWithHomeDirectory (const Aws::String &value)
 
CreateUserRequestWithHomeDirectory (Aws::String &&value)
 
CreateUserRequestWithHomeDirectory (const char *value)
 
const HomeDirectoryTypeGetHomeDirectoryType () const
 
bool HomeDirectoryTypeHasBeenSet () const
 
void SetHomeDirectoryType (const HomeDirectoryType &value)
 
void SetHomeDirectoryType (HomeDirectoryType &&value)
 
CreateUserRequestWithHomeDirectoryType (const HomeDirectoryType &value)
 
CreateUserRequestWithHomeDirectoryType (HomeDirectoryType &&value)
 
const Aws::Vector< HomeDirectoryMapEntry > & GetHomeDirectoryMappings () const
 
bool HomeDirectoryMappingsHasBeenSet () const
 
void SetHomeDirectoryMappings (const Aws::Vector< HomeDirectoryMapEntry > &value)
 
void SetHomeDirectoryMappings (Aws::Vector< HomeDirectoryMapEntry > &&value)
 
CreateUserRequestWithHomeDirectoryMappings (const Aws::Vector< HomeDirectoryMapEntry > &value)
 
CreateUserRequestWithHomeDirectoryMappings (Aws::Vector< HomeDirectoryMapEntry > &&value)
 
CreateUserRequestAddHomeDirectoryMappings (const HomeDirectoryMapEntry &value)
 
CreateUserRequestAddHomeDirectoryMappings (HomeDirectoryMapEntry &&value)
 
const Aws::StringGetPolicy () const
 
bool PolicyHasBeenSet () const
 
void SetPolicy (const Aws::String &value)
 
void SetPolicy (Aws::String &&value)
 
void SetPolicy (const char *value)
 
CreateUserRequestWithPolicy (const Aws::String &value)
 
CreateUserRequestWithPolicy (Aws::String &&value)
 
CreateUserRequestWithPolicy (const char *value)
 
const Aws::StringGetRole () const
 
bool RoleHasBeenSet () const
 
void SetRole (const Aws::String &value)
 
void SetRole (Aws::String &&value)
 
void SetRole (const char *value)
 
CreateUserRequestWithRole (const Aws::String &value)
 
CreateUserRequestWithRole (Aws::String &&value)
 
CreateUserRequestWithRole (const char *value)
 
const Aws::StringGetServerId () const
 
bool ServerIdHasBeenSet () const
 
void SetServerId (const Aws::String &value)
 
void SetServerId (Aws::String &&value)
 
void SetServerId (const char *value)
 
CreateUserRequestWithServerId (const Aws::String &value)
 
CreateUserRequestWithServerId (Aws::String &&value)
 
CreateUserRequestWithServerId (const char *value)
 
const Aws::StringGetSshPublicKeyBody () const
 
bool SshPublicKeyBodyHasBeenSet () const
 
void SetSshPublicKeyBody (const Aws::String &value)
 
void SetSshPublicKeyBody (Aws::String &&value)
 
void SetSshPublicKeyBody (const char *value)
 
CreateUserRequestWithSshPublicKeyBody (const Aws::String &value)
 
CreateUserRequestWithSshPublicKeyBody (Aws::String &&value)
 
CreateUserRequestWithSshPublicKeyBody (const char *value)
 
const Aws::Vector< Tag > & GetTags () const
 
bool TagsHasBeenSet () const
 
void SetTags (const Aws::Vector< Tag > &value)
 
void SetTags (Aws::Vector< Tag > &&value)
 
CreateUserRequestWithTags (const Aws::Vector< Tag > &value)
 
CreateUserRequestWithTags (Aws::Vector< Tag > &&value)
 
CreateUserRequestAddTags (const Tag &value)
 
CreateUserRequestAddTags (Tag &&value)
 
const Aws::StringGetUserName () const
 
bool UserNameHasBeenSet () const
 
void SetUserName (const Aws::String &value)
 
void SetUserName (Aws::String &&value)
 
void SetUserName (const char *value)
 
CreateUserRequestWithUserName (const Aws::String &value)
 
CreateUserRequestWithUserName (Aws::String &&value)
 
CreateUserRequestWithUserName (const char *value)
 
- Public Member Functions inherited from Aws::Transfer::TransferRequest
virtual ~TransferRequest ()
 
void AddParametersToRequest (Aws::Http::HttpRequest &httpRequest) const
 
Aws::Http::HeaderValueCollection GetHeaders () const override
 
- Public Member Functions inherited from Aws::AmazonSerializableWebServiceRequest
 AmazonSerializableWebServiceRequest ()
 
virtual ~AmazonSerializableWebServiceRequest ()
 
std::shared_ptr< Aws::IOStreamGetBody () const override
 
- Public Member Functions inherited from Aws::AmazonWebServiceRequest
 AmazonWebServiceRequest ()
 
virtual ~AmazonWebServiceRequest ()=default
 
virtual void AddQueryStringParameters (Aws::Http::URI &uri) const
 
virtual void PutToPresignedUrl (Aws::Http::URI &uri) const
 
virtual bool IsStreaming () const
 
virtual bool IsEventStreamRequest () const
 
virtual bool SignBody () const
 
virtual bool IsChunked () const
 
virtual void SetRequestSignedHandler (const RequestSignedHandler &handler)
 
virtual const RequestSignedHandlerGetRequestSignedHandler () const
 
const Aws::IOStreamFactoryGetResponseStreamFactory () const
 
void SetResponseStreamFactory (const Aws::IOStreamFactory &factory)
 
virtual void SetDataReceivedEventHandler (const Aws::Http::DataReceivedEventHandler &dataReceivedEventHandler)
 
virtual void SetDataSentEventHandler (const Aws::Http::DataSentEventHandler &dataSentEventHandler)
 
virtual void SetContinueRequestHandler (const Aws::Http::ContinueRequestHandler &continueRequestHandler)
 
virtual void SetDataReceivedEventHandler (Aws::Http::DataReceivedEventHandler &&dataReceivedEventHandler)
 
virtual void SetDataSentEventHandler (Aws::Http::DataSentEventHandler &&dataSentEventHandler)
 
virtual void SetContinueRequestHandler (Aws::Http::ContinueRequestHandler &&continueRequestHandler)
 
virtual void SetRequestRetryHandler (const RequestRetryHandler &handler)
 
virtual void SetRequestRetryHandler (RequestRetryHandler &&handler)
 
virtual const Aws::Http::DataReceivedEventHandlerGetDataReceivedEventHandler () const
 
virtual const Aws::Http::DataSentEventHandlerGetDataSentEventHandler () const
 
virtual const Aws::Http::ContinueRequestHandlerGetContinueRequestHandler () const
 
virtual const RequestRetryHandlerGetRequestRetryHandler () const
 
virtual bool ShouldComputeContentMd5 () const
 

Additional Inherited Members

- Protected Member Functions inherited from Aws::AmazonWebServiceRequest
virtual void DumpBodyToUrl (Aws::Http::URI &uri) const
 

Detailed Description

Definition at line 25 of file CreateUserRequest.h.

Constructor & Destructor Documentation

◆ CreateUserRequest()

Aws::Transfer::Model::CreateUserRequest::CreateUserRequest ( )

Member Function Documentation

◆ AddHomeDirectoryMappings() [1/2]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::AddHomeDirectoryMappings ( const HomeDirectoryMapEntry value)
inline

Logical directory mappings that specify what Amazon S3 paths and keys should be visible to your user and how you want to make them visible. You will need to specify the "<code>Entry</code>" and "<code>Target</code>" pair, where Entry shows how the path is made visible and Target is the actual Amazon S3 path. If you only specify a target, it will be displayed as is. You will need to also make sure that your IAM role provides access to paths in Target. The following is an example.

'[ "/bucket2/documentation", { "Entry": "your-personal-report.pdf", "Target": "/bucket3/customized-reports/${transfer:UserName}.pdf" } ]'

In most cases, you can use this value instead of the scope-down policy to lock your user down to the designated home directory ("chroot"). To do this, you can set Entry to '/' and set Target to the HomeDirectory parameter value.

If the target of a logical directory entry does not exist in Amazon S3, the entry will be ignored. As a workaround, you can use the Amazon S3 API to create 0 byte objects as place holders for your directory. If using the CLI, use the s3api call instead of s3 so you can use the put-object operation. For example, you use the following: aws s3api put-object –bucket bucketname –key path/to/folder/. Make sure that the end of the key name ends in a '/' for it to be considered a folder.

Definition at line 325 of file CreateUserRequest.h.

◆ AddHomeDirectoryMappings() [2/2]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::AddHomeDirectoryMappings ( HomeDirectoryMapEntry &&  value)
inline

Logical directory mappings that specify what Amazon S3 paths and keys should be visible to your user and how you want to make them visible. You will need to specify the "<code>Entry</code>" and "<code>Target</code>" pair, where Entry shows how the path is made visible and Target is the actual Amazon S3 path. If you only specify a target, it will be displayed as is. You will need to also make sure that your IAM role provides access to paths in Target. The following is an example.

'[ "/bucket2/documentation", { "Entry": "your-personal-report.pdf", "Target": "/bucket3/customized-reports/${transfer:UserName}.pdf" } ]'

In most cases, you can use this value instead of the scope-down policy to lock your user down to the designated home directory ("chroot"). To do this, you can set Entry to '/' and set Target to the HomeDirectory parameter value.

If the target of a logical directory entry does not exist in Amazon S3, the entry will be ignored. As a workaround, you can use the Amazon S3 API to create 0 byte objects as place holders for your directory. If using the CLI, use the s3api call instead of s3 so you can use the put-object operation. For example, you use the following: aws s3api put-object –bucket bucketname –key path/to/folder/. Make sure that the end of the key name ends in a '/' for it to be considered a folder.

Definition at line 349 of file CreateUserRequest.h.

◆ AddTags() [1/2]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::AddTags ( const Tag value)
inline

Key-value pairs that can be used to group and search for users. Tags are metadata attached to users for any purpose.

Definition at line 708 of file CreateUserRequest.h.

◆ AddTags() [2/2]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::AddTags ( Tag &&  value)
inline

Key-value pairs that can be used to group and search for users. Tags are metadata attached to users for any purpose.

Definition at line 714 of file CreateUserRequest.h.

◆ GetHomeDirectory()

const Aws::String& Aws::Transfer::Model::CreateUserRequest::GetHomeDirectory ( ) const
inline

The landing directory (folder) for a user when they log in to the file transfer protocol-enabled server using the client.

An example is your-Amazon-S3-bucket-name>/home/username .

Definition at line 46 of file CreateUserRequest.h.

◆ GetHomeDirectoryMappings()

const Aws::Vector<HomeDirectoryMapEntry>& Aws::Transfer::Model::CreateUserRequest::GetHomeDirectoryMappings ( ) const
inline

Logical directory mappings that specify what Amazon S3 paths and keys should be visible to your user and how you want to make them visible. You will need to specify the "<code>Entry</code>" and "<code>Target</code>" pair, where Entry shows how the path is made visible and Target is the actual Amazon S3 path. If you only specify a target, it will be displayed as is. You will need to also make sure that your IAM role provides access to paths in Target. The following is an example.

'[ "/bucket2/documentation", { "Entry": "your-personal-report.pdf", "Target": "/bucket3/customized-reports/${transfer:UserName}.pdf" } ]'

In most cases, you can use this value instead of the scope-down policy to lock your user down to the designated home directory ("chroot"). To do this, you can set Entry to '/' and set Target to the HomeDirectory parameter value.

If the target of a logical directory entry does not exist in Amazon S3, the entry will be ignored. As a workaround, you can use the Amazon S3 API to create 0 byte objects as place holders for your directory. If using the CLI, use the s3api call instead of s3 so you can use the put-object operation. For example, you use the following: aws s3api put-object –bucket bucketname –key path/to/folder/. Make sure that the end of the key name ends in a '/' for it to be considered a folder.

Definition at line 181 of file CreateUserRequest.h.

◆ GetHomeDirectoryType()

const HomeDirectoryType& Aws::Transfer::Model::CreateUserRequest::GetHomeDirectoryType ( ) const
inline

The type of landing directory (folder) you want your users' home directory to be when they log into the file transfer protocol-enabled server. If you set it to PATH, the user will see the absolute Amazon S3 bucket paths as is in their file transfer protocol clients. If you set it LOGICAL, you will need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 paths visible to your users.

Definition at line 106 of file CreateUserRequest.h.

◆ GetPolicy()

const Aws::String& Aws::Transfer::Model::CreateUserRequest::GetPolicy ( ) const
inline

A scope-down policy for your user so you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}.

For scope-down policies, AWS 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 scope-down policy, see Creating a scope-down policy.

For more information, see AssumeRole in the AWS Security Token Service API Reference.

Definition at line 367 of file CreateUserRequest.h.

◆ GetRequestSpecificHeaders()

Aws::Http::HeaderValueCollection Aws::Transfer::Model::CreateUserRequest::GetRequestSpecificHeaders ( ) const
overridevirtual

Reimplemented from Aws::Transfer::TransferRequest.

◆ GetRole()

const Aws::String& Aws::Transfer::Model::CreateUserRequest::GetRole ( ) const
inline

The IAM role that controls your users' access to your Amazon S3 bucket. The policies attached to this role will determine the level of access you want to provide your users when transferring files into and out of your Amazon S3 bucket or buckets. The IAM role should also contain a trust relationship that allows the file transfer protocol-enabled server to access your resources when servicing your users' transfer requests.

Definition at line 497 of file CreateUserRequest.h.

◆ GetServerId()

const Aws::String& Aws::Transfer::Model::CreateUserRequest::GetServerId ( ) const
inline

A system-assigned unique identifier for a file transfer protocol-enabled server instance. This is the specific server that you added your user to.

Definition at line 574 of file CreateUserRequest.h.

◆ GetServiceRequestName()

virtual const char* Aws::Transfer::Model::CreateUserRequest::GetServiceRequestName ( ) const
inlineoverridevirtual

Implements Aws::AmazonWebServiceRequest.

Definition at line 34 of file CreateUserRequest.h.

◆ GetSshPublicKeyBody()

const Aws::String& Aws::Transfer::Model::CreateUserRequest::GetSshPublicKeyBody ( ) const
inline

The public portion of the Secure Shell (SSH) key used to authenticate the user to the file transfer protocol-enabled server.

Definition at line 623 of file CreateUserRequest.h.

◆ GetTags()

const Aws::Vector<Tag>& Aws::Transfer::Model::CreateUserRequest::GetTags ( ) const
inline

Key-value pairs that can be used to group and search for users. Tags are metadata attached to users for any purpose.

Definition at line 672 of file CreateUserRequest.h.

◆ GetUserName()

const Aws::String& Aws::Transfer::Model::CreateUserRequest::GetUserName ( ) const
inline

A unique string that identifies a user and is associated with a file transfer protocol-enabled 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, and at sign.

Definition at line 724 of file CreateUserRequest.h.

◆ HomeDirectoryHasBeenSet()

bool Aws::Transfer::Model::CreateUserRequest::HomeDirectoryHasBeenSet ( ) const
inline

The landing directory (folder) for a user when they log in to the file transfer protocol-enabled server using the client.

An example is your-Amazon-S3-bucket-name>/home/username .

Definition at line 53 of file CreateUserRequest.h.

◆ HomeDirectoryMappingsHasBeenSet()

bool Aws::Transfer::Model::CreateUserRequest::HomeDirectoryMappingsHasBeenSet ( ) const
inline

Logical directory mappings that specify what Amazon S3 paths and keys should be visible to your user and how you want to make them visible. You will need to specify the "<code>Entry</code>" and "<code>Target</code>" pair, where Entry shows how the path is made visible and Target is the actual Amazon S3 path. If you only specify a target, it will be displayed as is. You will need to also make sure that your IAM role provides access to paths in Target. The following is an example.

'[ "/bucket2/documentation", { "Entry": "your-personal-report.pdf", "Target": "/bucket3/customized-reports/${transfer:UserName}.pdf" } ]'

In most cases, you can use this value instead of the scope-down policy to lock your user down to the designated home directory ("chroot"). To do this, you can set Entry to '/' and set Target to the HomeDirectory parameter value.

If the target of a logical directory entry does not exist in Amazon S3, the entry will be ignored. As a workaround, you can use the Amazon S3 API to create 0 byte objects as place holders for your directory. If using the CLI, use the s3api call instead of s3 so you can use the put-object operation. For example, you use the following: aws s3api put-object –bucket bucketname –key path/to/folder/. Make sure that the end of the key name ends in a '/' for it to be considered a folder.

Definition at line 205 of file CreateUserRequest.h.

◆ HomeDirectoryTypeHasBeenSet()

bool Aws::Transfer::Model::CreateUserRequest::HomeDirectoryTypeHasBeenSet ( ) const
inline

The type of landing directory (folder) you want your users' home directory to be when they log into the file transfer protocol-enabled server. If you set it to PATH, the user will see the absolute Amazon S3 bucket paths as is in their file transfer protocol clients. If you set it LOGICAL, you will need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 paths visible to your users.

Definition at line 116 of file CreateUserRequest.h.

◆ PolicyHasBeenSet()

bool Aws::Transfer::Model::CreateUserRequest::PolicyHasBeenSet ( ) const
inline

A scope-down policy for your user so you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}.

For scope-down policies, AWS 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 scope-down policy, see Creating a scope-down policy.

For more information, see AssumeRole in the AWS Security Token Service API Reference.

Definition at line 384 of file CreateUserRequest.h.

◆ RoleHasBeenSet()

bool Aws::Transfer::Model::CreateUserRequest::RoleHasBeenSet ( ) const
inline

The IAM role that controls your users' access to your Amazon S3 bucket. The policies attached to this role will determine the level of access you want to provide your users when transferring files into and out of your Amazon S3 bucket or buckets. The IAM role should also contain a trust relationship that allows the file transfer protocol-enabled server to access your resources when servicing your users' transfer requests.

Definition at line 507 of file CreateUserRequest.h.

◆ SerializePayload()

Aws::String Aws::Transfer::Model::CreateUserRequest::SerializePayload ( ) const
overridevirtual

Convert payload into String.

Implements Aws::AmazonSerializableWebServiceRequest.

◆ ServerIdHasBeenSet()

bool Aws::Transfer::Model::CreateUserRequest::ServerIdHasBeenSet ( ) const
inline

A system-assigned unique identifier for a file transfer protocol-enabled server instance. This is the specific server that you added your user to.

Definition at line 580 of file CreateUserRequest.h.

◆ SetHomeDirectory() [1/3]

void Aws::Transfer::Model::CreateUserRequest::SetHomeDirectory ( const Aws::String value)
inline

The landing directory (folder) for a user when they log in to the file transfer protocol-enabled server using the client.

An example is your-Amazon-S3-bucket-name>/home/username .

Definition at line 60 of file CreateUserRequest.h.

◆ SetHomeDirectory() [2/3]

void Aws::Transfer::Model::CreateUserRequest::SetHomeDirectory ( Aws::String &&  value)
inline

The landing directory (folder) for a user when they log in to the file transfer protocol-enabled server using the client.

An example is your-Amazon-S3-bucket-name>/home/username .

Definition at line 67 of file CreateUserRequest.h.

◆ SetHomeDirectory() [3/3]

void Aws::Transfer::Model::CreateUserRequest::SetHomeDirectory ( const char *  value)
inline

The landing directory (folder) for a user when they log in to the file transfer protocol-enabled server using the client.

An example is your-Amazon-S3-bucket-name>/home/username .

Definition at line 74 of file CreateUserRequest.h.

◆ SetHomeDirectoryMappings() [1/2]

void Aws::Transfer::Model::CreateUserRequest::SetHomeDirectoryMappings ( const Aws::Vector< HomeDirectoryMapEntry > &  value)
inline

Logical directory mappings that specify what Amazon S3 paths and keys should be visible to your user and how you want to make them visible. You will need to specify the "<code>Entry</code>" and "<code>Target</code>" pair, where Entry shows how the path is made visible and Target is the actual Amazon S3 path. If you only specify a target, it will be displayed as is. You will need to also make sure that your IAM role provides access to paths in Target. The following is an example.

'[ "/bucket2/documentation", { "Entry": "your-personal-report.pdf", "Target": "/bucket3/customized-reports/${transfer:UserName}.pdf" } ]'

In most cases, you can use this value instead of the scope-down policy to lock your user down to the designated home directory ("chroot"). To do this, you can set Entry to '/' and set Target to the HomeDirectory parameter value.

If the target of a logical directory entry does not exist in Amazon S3, the entry will be ignored. As a workaround, you can use the Amazon S3 API to create 0 byte objects as place holders for your directory. If using the CLI, use the s3api call instead of s3 so you can use the put-object operation. For example, you use the following: aws s3api put-object –bucket bucketname –key path/to/folder/. Make sure that the end of the key name ends in a '/' for it to be considered a folder.

Definition at line 229 of file CreateUserRequest.h.

◆ SetHomeDirectoryMappings() [2/2]

void Aws::Transfer::Model::CreateUserRequest::SetHomeDirectoryMappings ( Aws::Vector< HomeDirectoryMapEntry > &&  value)
inline

Logical directory mappings that specify what Amazon S3 paths and keys should be visible to your user and how you want to make them visible. You will need to specify the "<code>Entry</code>" and "<code>Target</code>" pair, where Entry shows how the path is made visible and Target is the actual Amazon S3 path. If you only specify a target, it will be displayed as is. You will need to also make sure that your IAM role provides access to paths in Target. The following is an example.

'[ "/bucket2/documentation", { "Entry": "your-personal-report.pdf", "Target": "/bucket3/customized-reports/${transfer:UserName}.pdf" } ]'

In most cases, you can use this value instead of the scope-down policy to lock your user down to the designated home directory ("chroot"). To do this, you can set Entry to '/' and set Target to the HomeDirectory parameter value.

If the target of a logical directory entry does not exist in Amazon S3, the entry will be ignored. As a workaround, you can use the Amazon S3 API to create 0 byte objects as place holders for your directory. If using the CLI, use the s3api call instead of s3 so you can use the put-object operation. For example, you use the following: aws s3api put-object –bucket bucketname –key path/to/folder/. Make sure that the end of the key name ends in a '/' for it to be considered a folder.

Definition at line 253 of file CreateUserRequest.h.

◆ SetHomeDirectoryType() [1/2]

void Aws::Transfer::Model::CreateUserRequest::SetHomeDirectoryType ( const HomeDirectoryType value)
inline

The type of landing directory (folder) you want your users' home directory to be when they log into the file transfer protocol-enabled server. If you set it to PATH, the user will see the absolute Amazon S3 bucket paths as is in their file transfer protocol clients. If you set it LOGICAL, you will need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 paths visible to your users.

Definition at line 126 of file CreateUserRequest.h.

◆ SetHomeDirectoryType() [2/2]

void Aws::Transfer::Model::CreateUserRequest::SetHomeDirectoryType ( HomeDirectoryType &&  value)
inline

The type of landing directory (folder) you want your users' home directory to be when they log into the file transfer protocol-enabled server. If you set it to PATH, the user will see the absolute Amazon S3 bucket paths as is in their file transfer protocol clients. If you set it LOGICAL, you will need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 paths visible to your users.

Definition at line 136 of file CreateUserRequest.h.

◆ SetPolicy() [1/3]

void Aws::Transfer::Model::CreateUserRequest::SetPolicy ( const Aws::String value)
inline

A scope-down policy for your user so you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}.

For scope-down policies, AWS 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 scope-down policy, see Creating a scope-down policy.

For more information, see AssumeRole in the AWS Security Token Service API Reference.

Definition at line 401 of file CreateUserRequest.h.

◆ SetPolicy() [2/3]

void Aws::Transfer::Model::CreateUserRequest::SetPolicy ( Aws::String &&  value)
inline

A scope-down policy for your user so you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}.

For scope-down policies, AWS 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 scope-down policy, see Creating a scope-down policy.

For more information, see AssumeRole in the AWS Security Token Service API Reference.

Definition at line 418 of file CreateUserRequest.h.

◆ SetPolicy() [3/3]

void Aws::Transfer::Model::CreateUserRequest::SetPolicy ( const char *  value)
inline

A scope-down policy for your user so you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}.

For scope-down policies, AWS 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 scope-down policy, see Creating a scope-down policy.

For more information, see AssumeRole in the AWS Security Token Service API Reference.

Definition at line 435 of file CreateUserRequest.h.

◆ SetRole() [1/3]

void Aws::Transfer::Model::CreateUserRequest::SetRole ( const Aws::String value)
inline

The IAM role that controls your users' access to your Amazon S3 bucket. The policies attached to this role will determine the level of access you want to provide your users when transferring files into and out of your Amazon S3 bucket or buckets. The IAM role should also contain a trust relationship that allows the file transfer protocol-enabled server to access your resources when servicing your users' transfer requests.

Definition at line 517 of file CreateUserRequest.h.

◆ SetRole() [2/3]

void Aws::Transfer::Model::CreateUserRequest::SetRole ( Aws::String &&  value)
inline

The IAM role that controls your users' access to your Amazon S3 bucket. The policies attached to this role will determine the level of access you want to provide your users when transferring files into and out of your Amazon S3 bucket or buckets. The IAM role should also contain a trust relationship that allows the file transfer protocol-enabled server to access your resources when servicing your users' transfer requests.

Definition at line 527 of file CreateUserRequest.h.

◆ SetRole() [3/3]

void Aws::Transfer::Model::CreateUserRequest::SetRole ( const char *  value)
inline

The IAM role that controls your users' access to your Amazon S3 bucket. The policies attached to this role will determine the level of access you want to provide your users when transferring files into and out of your Amazon S3 bucket or buckets. The IAM role should also contain a trust relationship that allows the file transfer protocol-enabled server to access your resources when servicing your users' transfer requests.

Definition at line 537 of file CreateUserRequest.h.

◆ SetServerId() [1/3]

void Aws::Transfer::Model::CreateUserRequest::SetServerId ( const Aws::String value)
inline

A system-assigned unique identifier for a file transfer protocol-enabled server instance. This is the specific server that you added your user to.

Definition at line 586 of file CreateUserRequest.h.

◆ SetServerId() [2/3]

void Aws::Transfer::Model::CreateUserRequest::SetServerId ( Aws::String &&  value)
inline

A system-assigned unique identifier for a file transfer protocol-enabled server instance. This is the specific server that you added your user to.

Definition at line 592 of file CreateUserRequest.h.

◆ SetServerId() [3/3]

void Aws::Transfer::Model::CreateUserRequest::SetServerId ( const char *  value)
inline

A system-assigned unique identifier for a file transfer protocol-enabled server instance. This is the specific server that you added your user to.

Definition at line 598 of file CreateUserRequest.h.

◆ SetSshPublicKeyBody() [1/3]

void Aws::Transfer::Model::CreateUserRequest::SetSshPublicKeyBody ( const Aws::String value)
inline

The public portion of the Secure Shell (SSH) key used to authenticate the user to the file transfer protocol-enabled server.

Definition at line 635 of file CreateUserRequest.h.

◆ SetSshPublicKeyBody() [2/3]

void Aws::Transfer::Model::CreateUserRequest::SetSshPublicKeyBody ( Aws::String &&  value)
inline

The public portion of the Secure Shell (SSH) key used to authenticate the user to the file transfer protocol-enabled server.

Definition at line 641 of file CreateUserRequest.h.

◆ SetSshPublicKeyBody() [3/3]

void Aws::Transfer::Model::CreateUserRequest::SetSshPublicKeyBody ( const char *  value)
inline

The public portion of the Secure Shell (SSH) key used to authenticate the user to the file transfer protocol-enabled server.

Definition at line 647 of file CreateUserRequest.h.

◆ SetTags() [1/2]

void Aws::Transfer::Model::CreateUserRequest::SetTags ( const Aws::Vector< Tag > &  value)
inline

Key-value pairs that can be used to group and search for users. Tags are metadata attached to users for any purpose.

Definition at line 684 of file CreateUserRequest.h.

◆ SetTags() [2/2]

void Aws::Transfer::Model::CreateUserRequest::SetTags ( Aws::Vector< Tag > &&  value)
inline

Key-value pairs that can be used to group and search for users. Tags are metadata attached to users for any purpose.

Definition at line 690 of file CreateUserRequest.h.

◆ SetUserName() [1/3]

void Aws::Transfer::Model::CreateUserRequest::SetUserName ( const Aws::String value)
inline

A unique string that identifies a user and is associated with a file transfer protocol-enabled 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, and at sign.

Definition at line 742 of file CreateUserRequest.h.

◆ SetUserName() [2/3]

void Aws::Transfer::Model::CreateUserRequest::SetUserName ( Aws::String &&  value)
inline

A unique string that identifies a user and is associated with a file transfer protocol-enabled 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, and at sign.

Definition at line 751 of file CreateUserRequest.h.

◆ SetUserName() [3/3]

void Aws::Transfer::Model::CreateUserRequest::SetUserName ( const char *  value)
inline

A unique string that identifies a user and is associated with a file transfer protocol-enabled 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, and at sign.

Definition at line 760 of file CreateUserRequest.h.

◆ SshPublicKeyBodyHasBeenSet()

bool Aws::Transfer::Model::CreateUserRequest::SshPublicKeyBodyHasBeenSet ( ) const
inline

The public portion of the Secure Shell (SSH) key used to authenticate the user to the file transfer protocol-enabled server.

Definition at line 629 of file CreateUserRequest.h.

◆ TagsHasBeenSet()

bool Aws::Transfer::Model::CreateUserRequest::TagsHasBeenSet ( ) const
inline

Key-value pairs that can be used to group and search for users. Tags are metadata attached to users for any purpose.

Definition at line 678 of file CreateUserRequest.h.

◆ UserNameHasBeenSet()

bool Aws::Transfer::Model::CreateUserRequest::UserNameHasBeenSet ( ) const
inline

A unique string that identifies a user and is associated with a file transfer protocol-enabled 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, and at sign.

Definition at line 733 of file CreateUserRequest.h.

◆ WithHomeDirectory() [1/3]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::WithHomeDirectory ( const Aws::String value)
inline

The landing directory (folder) for a user when they log in to the file transfer protocol-enabled server using the client.

An example is your-Amazon-S3-bucket-name>/home/username .

Definition at line 81 of file CreateUserRequest.h.

◆ WithHomeDirectory() [2/3]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::WithHomeDirectory ( Aws::String &&  value)
inline

The landing directory (folder) for a user when they log in to the file transfer protocol-enabled server using the client.

An example is your-Amazon-S3-bucket-name>/home/username .

Definition at line 88 of file CreateUserRequest.h.

◆ WithHomeDirectory() [3/3]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::WithHomeDirectory ( const char *  value)
inline

The landing directory (folder) for a user when they log in to the file transfer protocol-enabled server using the client.

An example is your-Amazon-S3-bucket-name>/home/username .

Definition at line 95 of file CreateUserRequest.h.

◆ WithHomeDirectoryMappings() [1/2]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::WithHomeDirectoryMappings ( const Aws::Vector< HomeDirectoryMapEntry > &  value)
inline

Logical directory mappings that specify what Amazon S3 paths and keys should be visible to your user and how you want to make them visible. You will need to specify the "<code>Entry</code>" and "<code>Target</code>" pair, where Entry shows how the path is made visible and Target is the actual Amazon S3 path. If you only specify a target, it will be displayed as is. You will need to also make sure that your IAM role provides access to paths in Target. The following is an example.

'[ "/bucket2/documentation", { "Entry": "your-personal-report.pdf", "Target": "/bucket3/customized-reports/${transfer:UserName}.pdf" } ]'

In most cases, you can use this value instead of the scope-down policy to lock your user down to the designated home directory ("chroot"). To do this, you can set Entry to '/' and set Target to the HomeDirectory parameter value.

If the target of a logical directory entry does not exist in Amazon S3, the entry will be ignored. As a workaround, you can use the Amazon S3 API to create 0 byte objects as place holders for your directory. If using the CLI, use the s3api call instead of s3 so you can use the put-object operation. For example, you use the following: aws s3api put-object –bucket bucketname –key path/to/folder/. Make sure that the end of the key name ends in a '/' for it to be considered a folder.

Definition at line 277 of file CreateUserRequest.h.

◆ WithHomeDirectoryMappings() [2/2]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::WithHomeDirectoryMappings ( Aws::Vector< HomeDirectoryMapEntry > &&  value)
inline

Logical directory mappings that specify what Amazon S3 paths and keys should be visible to your user and how you want to make them visible. You will need to specify the "<code>Entry</code>" and "<code>Target</code>" pair, where Entry shows how the path is made visible and Target is the actual Amazon S3 path. If you only specify a target, it will be displayed as is. You will need to also make sure that your IAM role provides access to paths in Target. The following is an example.

'[ "/bucket2/documentation", { "Entry": "your-personal-report.pdf", "Target": "/bucket3/customized-reports/${transfer:UserName}.pdf" } ]'

In most cases, you can use this value instead of the scope-down policy to lock your user down to the designated home directory ("chroot"). To do this, you can set Entry to '/' and set Target to the HomeDirectory parameter value.

If the target of a logical directory entry does not exist in Amazon S3, the entry will be ignored. As a workaround, you can use the Amazon S3 API to create 0 byte objects as place holders for your directory. If using the CLI, use the s3api call instead of s3 so you can use the put-object operation. For example, you use the following: aws s3api put-object –bucket bucketname –key path/to/folder/. Make sure that the end of the key name ends in a '/' for it to be considered a folder.

Definition at line 301 of file CreateUserRequest.h.

◆ WithHomeDirectoryType() [1/2]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::WithHomeDirectoryType ( const HomeDirectoryType value)
inline

The type of landing directory (folder) you want your users' home directory to be when they log into the file transfer protocol-enabled server. If you set it to PATH, the user will see the absolute Amazon S3 bucket paths as is in their file transfer protocol clients. If you set it LOGICAL, you will need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 paths visible to your users.

Definition at line 146 of file CreateUserRequest.h.

◆ WithHomeDirectoryType() [2/2]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::WithHomeDirectoryType ( HomeDirectoryType &&  value)
inline

The type of landing directory (folder) you want your users' home directory to be when they log into the file transfer protocol-enabled server. If you set it to PATH, the user will see the absolute Amazon S3 bucket paths as is in their file transfer protocol clients. If you set it LOGICAL, you will need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 paths visible to your users.

Definition at line 156 of file CreateUserRequest.h.

◆ WithPolicy() [1/3]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::WithPolicy ( const Aws::String value)
inline

A scope-down policy for your user so you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}.

For scope-down policies, AWS 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 scope-down policy, see Creating a scope-down policy.

For more information, see AssumeRole in the AWS Security Token Service API Reference.

Definition at line 452 of file CreateUserRequest.h.

◆ WithPolicy() [2/3]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::WithPolicy ( Aws::String &&  value)
inline

A scope-down policy for your user so you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}.

For scope-down policies, AWS 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 scope-down policy, see Creating a scope-down policy.

For more information, see AssumeRole in the AWS Security Token Service API Reference.

Definition at line 469 of file CreateUserRequest.h.

◆ WithPolicy() [3/3]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::WithPolicy ( const char *  value)
inline

A scope-down policy for your user so you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}.

For scope-down policies, AWS 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 scope-down policy, see Creating a scope-down policy.

For more information, see AssumeRole in the AWS Security Token Service API Reference.

Definition at line 486 of file CreateUserRequest.h.

◆ WithRole() [1/3]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::WithRole ( const Aws::String value)
inline

The IAM role that controls your users' access to your Amazon S3 bucket. The policies attached to this role will determine the level of access you want to provide your users when transferring files into and out of your Amazon S3 bucket or buckets. The IAM role should also contain a trust relationship that allows the file transfer protocol-enabled server to access your resources when servicing your users' transfer requests.

Definition at line 547 of file CreateUserRequest.h.

◆ WithRole() [2/3]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::WithRole ( Aws::String &&  value)
inline

The IAM role that controls your users' access to your Amazon S3 bucket. The policies attached to this role will determine the level of access you want to provide your users when transferring files into and out of your Amazon S3 bucket or buckets. The IAM role should also contain a trust relationship that allows the file transfer protocol-enabled server to access your resources when servicing your users' transfer requests.

Definition at line 557 of file CreateUserRequest.h.

◆ WithRole() [3/3]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::WithRole ( const char *  value)
inline

The IAM role that controls your users' access to your Amazon S3 bucket. The policies attached to this role will determine the level of access you want to provide your users when transferring files into and out of your Amazon S3 bucket or buckets. The IAM role should also contain a trust relationship that allows the file transfer protocol-enabled server to access your resources when servicing your users' transfer requests.

Definition at line 567 of file CreateUserRequest.h.

◆ WithServerId() [1/3]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::WithServerId ( const Aws::String value)
inline

A system-assigned unique identifier for a file transfer protocol-enabled server instance. This is the specific server that you added your user to.

Definition at line 604 of file CreateUserRequest.h.

◆ WithServerId() [2/3]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::WithServerId ( Aws::String &&  value)
inline

A system-assigned unique identifier for a file transfer protocol-enabled server instance. This is the specific server that you added your user to.

Definition at line 610 of file CreateUserRequest.h.

◆ WithServerId() [3/3]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::WithServerId ( const char *  value)
inline

A system-assigned unique identifier for a file transfer protocol-enabled server instance. This is the specific server that you added your user to.

Definition at line 616 of file CreateUserRequest.h.

◆ WithSshPublicKeyBody() [1/3]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::WithSshPublicKeyBody ( const Aws::String value)
inline

The public portion of the Secure Shell (SSH) key used to authenticate the user to the file transfer protocol-enabled server.

Definition at line 653 of file CreateUserRequest.h.

◆ WithSshPublicKeyBody() [2/3]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::WithSshPublicKeyBody ( Aws::String &&  value)
inline

The public portion of the Secure Shell (SSH) key used to authenticate the user to the file transfer protocol-enabled server.

Definition at line 659 of file CreateUserRequest.h.

◆ WithSshPublicKeyBody() [3/3]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::WithSshPublicKeyBody ( const char *  value)
inline

The public portion of the Secure Shell (SSH) key used to authenticate the user to the file transfer protocol-enabled server.

Definition at line 665 of file CreateUserRequest.h.

◆ WithTags() [1/2]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::WithTags ( const Aws::Vector< Tag > &  value)
inline

Key-value pairs that can be used to group and search for users. Tags are metadata attached to users for any purpose.

Definition at line 696 of file CreateUserRequest.h.

◆ WithTags() [2/2]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::WithTags ( Aws::Vector< Tag > &&  value)
inline

Key-value pairs that can be used to group and search for users. Tags are metadata attached to users for any purpose.

Definition at line 702 of file CreateUserRequest.h.

◆ WithUserName() [1/3]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::WithUserName ( const Aws::String value)
inline

A unique string that identifies a user and is associated with a file transfer protocol-enabled 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, and at sign.

Definition at line 769 of file CreateUserRequest.h.

◆ WithUserName() [2/3]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::WithUserName ( Aws::String &&  value)
inline

A unique string that identifies a user and is associated with a file transfer protocol-enabled 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, and at sign.

Definition at line 778 of file CreateUserRequest.h.

◆ WithUserName() [3/3]

CreateUserRequest& Aws::Transfer::Model::CreateUserRequest::WithUserName ( const char *  value)
inline

A unique string that identifies a user and is associated with a file transfer protocol-enabled 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, and at sign.

Definition at line 787 of file CreateUserRequest.h.


The documentation for this class was generated from the following file: