aws-sdk-transfer 1.15.0 → 1.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/lib/aws-sdk-transfer.rb +8 -5
- data/lib/aws-sdk-transfer/client.rb +385 -203
- data/lib/aws-sdk-transfer/client_api.rb +38 -1
- data/lib/aws-sdk-transfer/errors.rb +61 -7
- data/lib/aws-sdk-transfer/resource.rb +1 -0
- data/lib/aws-sdk-transfer/types.rb +508 -307
- metadata +5 -5
@@ -11,7 +11,12 @@ module Aws::Transfer
|
|
11
11
|
|
12
12
|
include Seahorse::Model
|
13
13
|
|
14
|
+
AccessDeniedException = Shapes::StructureShape.new(name: 'AccessDeniedException')
|
15
|
+
AddressAllocationId = Shapes::StringShape.new(name: 'AddressAllocationId')
|
16
|
+
AddressAllocationIds = Shapes::ListShape.new(name: 'AddressAllocationIds')
|
14
17
|
Arn = Shapes::StringShape.new(name: 'Arn')
|
18
|
+
Certificate = Shapes::StringShape.new(name: 'Certificate')
|
19
|
+
ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
|
15
20
|
CreateServerRequest = Shapes::StructureShape.new(name: 'CreateServerRequest')
|
16
21
|
CreateServerResponse = Shapes::StructureShape.new(name: 'CreateServerResponse')
|
17
22
|
CreateUserRequest = Shapes::StructureShape.new(name: 'CreateUserRequest')
|
@@ -58,6 +63,8 @@ module Aws::Transfer
|
|
58
63
|
NextToken = Shapes::StringShape.new(name: 'NextToken')
|
59
64
|
NullableRole = Shapes::StringShape.new(name: 'NullableRole')
|
60
65
|
Policy = Shapes::StringShape.new(name: 'Policy')
|
66
|
+
Protocol = Shapes::StringShape.new(name: 'Protocol')
|
67
|
+
Protocols = Shapes::ListShape.new(name: 'Protocols')
|
61
68
|
Resource = Shapes::StringShape.new(name: 'Resource')
|
62
69
|
ResourceExistsException = Shapes::StructureShape.new(name: 'ResourceExistsException')
|
63
70
|
ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
|
@@ -77,6 +84,8 @@ module Aws::Transfer
|
|
77
84
|
State = Shapes::StringShape.new(name: 'State')
|
78
85
|
StatusCode = Shapes::IntegerShape.new(name: 'StatusCode')
|
79
86
|
StopServerRequest = Shapes::StructureShape.new(name: 'StopServerRequest')
|
87
|
+
SubnetId = Shapes::StringShape.new(name: 'SubnetId')
|
88
|
+
SubnetIds = Shapes::ListShape.new(name: 'SubnetIds')
|
80
89
|
Tag = Shapes::StructureShape.new(name: 'Tag')
|
81
90
|
TagKey = Shapes::StringShape.new(name: 'TagKey')
|
82
91
|
TagKeys = Shapes::ListShape.new(name: 'TagKeys')
|
@@ -96,13 +105,24 @@ module Aws::Transfer
|
|
96
105
|
UserName = Shapes::StringShape.new(name: 'UserName')
|
97
106
|
UserPassword = Shapes::StringShape.new(name: 'UserPassword')
|
98
107
|
VpcEndpointId = Shapes::StringShape.new(name: 'VpcEndpointId')
|
108
|
+
VpcId = Shapes::StringShape.new(name: 'VpcId')
|
99
109
|
|
110
|
+
AccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: ServiceErrorMessage, location_name: "Message"))
|
111
|
+
AccessDeniedException.struct_class = Types::AccessDeniedException
|
112
|
+
|
113
|
+
AddressAllocationIds.member = Shapes::ShapeRef.new(shape: AddressAllocationId)
|
114
|
+
|
115
|
+
ConflictException.add_member(:message, Shapes::ShapeRef.new(shape: Message, required: true, location_name: "Message"))
|
116
|
+
ConflictException.struct_class = Types::ConflictException
|
117
|
+
|
118
|
+
CreateServerRequest.add_member(:certificate, Shapes::ShapeRef.new(shape: Certificate, location_name: "Certificate"))
|
100
119
|
CreateServerRequest.add_member(:endpoint_details, Shapes::ShapeRef.new(shape: EndpointDetails, location_name: "EndpointDetails"))
|
101
120
|
CreateServerRequest.add_member(:endpoint_type, Shapes::ShapeRef.new(shape: EndpointType, location_name: "EndpointType"))
|
102
121
|
CreateServerRequest.add_member(:host_key, Shapes::ShapeRef.new(shape: HostKey, location_name: "HostKey"))
|
103
122
|
CreateServerRequest.add_member(:identity_provider_details, Shapes::ShapeRef.new(shape: IdentityProviderDetails, location_name: "IdentityProviderDetails"))
|
104
123
|
CreateServerRequest.add_member(:identity_provider_type, Shapes::ShapeRef.new(shape: IdentityProviderType, location_name: "IdentityProviderType"))
|
105
124
|
CreateServerRequest.add_member(:logging_role, Shapes::ShapeRef.new(shape: Role, location_name: "LoggingRole"))
|
125
|
+
CreateServerRequest.add_member(:protocols, Shapes::ShapeRef.new(shape: Protocols, location_name: "Protocols"))
|
106
126
|
CreateServerRequest.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
|
107
127
|
CreateServerRequest.struct_class = Types::CreateServerRequest
|
108
128
|
|
@@ -151,12 +171,14 @@ module Aws::Transfer
|
|
151
171
|
DescribeUserResponse.struct_class = Types::DescribeUserResponse
|
152
172
|
|
153
173
|
DescribedServer.add_member(:arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "Arn"))
|
174
|
+
DescribedServer.add_member(:certificate, Shapes::ShapeRef.new(shape: Certificate, location_name: "Certificate"))
|
154
175
|
DescribedServer.add_member(:endpoint_details, Shapes::ShapeRef.new(shape: EndpointDetails, location_name: "EndpointDetails"))
|
155
176
|
DescribedServer.add_member(:endpoint_type, Shapes::ShapeRef.new(shape: EndpointType, location_name: "EndpointType"))
|
156
177
|
DescribedServer.add_member(:host_key_fingerprint, Shapes::ShapeRef.new(shape: HostKeyFingerprint, location_name: "HostKeyFingerprint"))
|
157
178
|
DescribedServer.add_member(:identity_provider_details, Shapes::ShapeRef.new(shape: IdentityProviderDetails, location_name: "IdentityProviderDetails"))
|
158
179
|
DescribedServer.add_member(:identity_provider_type, Shapes::ShapeRef.new(shape: IdentityProviderType, location_name: "IdentityProviderType"))
|
159
180
|
DescribedServer.add_member(:logging_role, Shapes::ShapeRef.new(shape: Role, location_name: "LoggingRole"))
|
181
|
+
DescribedServer.add_member(:protocols, Shapes::ShapeRef.new(shape: Protocols, location_name: "Protocols"))
|
160
182
|
DescribedServer.add_member(:server_id, Shapes::ShapeRef.new(shape: ServerId, location_name: "ServerId"))
|
161
183
|
DescribedServer.add_member(:state, Shapes::ShapeRef.new(shape: State, location_name: "State"))
|
162
184
|
DescribedServer.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
|
@@ -174,7 +196,10 @@ module Aws::Transfer
|
|
174
196
|
DescribedUser.add_member(:user_name, Shapes::ShapeRef.new(shape: UserName, location_name: "UserName"))
|
175
197
|
DescribedUser.struct_class = Types::DescribedUser
|
176
198
|
|
199
|
+
EndpointDetails.add_member(:address_allocation_ids, Shapes::ShapeRef.new(shape: AddressAllocationIds, location_name: "AddressAllocationIds"))
|
200
|
+
EndpointDetails.add_member(:subnet_ids, Shapes::ShapeRef.new(shape: SubnetIds, location_name: "SubnetIds"))
|
177
201
|
EndpointDetails.add_member(:vpc_endpoint_id, Shapes::ShapeRef.new(shape: VpcEndpointId, location_name: "VpcEndpointId"))
|
202
|
+
EndpointDetails.add_member(:vpc_id, Shapes::ShapeRef.new(shape: VpcId, location_name: "VpcId"))
|
178
203
|
EndpointDetails.struct_class = Types::EndpointDetails
|
179
204
|
|
180
205
|
HomeDirectoryMapEntry.add_member(:entry, Shapes::ShapeRef.new(shape: MapEntry, required: true, location_name: "Entry"))
|
@@ -255,6 +280,8 @@ module Aws::Transfer
|
|
255
280
|
|
256
281
|
ListedUsers.member = Shapes::ShapeRef.new(shape: ListedUser)
|
257
282
|
|
283
|
+
Protocols.member = Shapes::ShapeRef.new(shape: Protocol)
|
284
|
+
|
258
285
|
ResourceExistsException.add_member(:message, Shapes::ShapeRef.new(shape: Message, required: true, location_name: "Message"))
|
259
286
|
ResourceExistsException.add_member(:resource, Shapes::ShapeRef.new(shape: Resource, required: true, location_name: "Resource"))
|
260
287
|
ResourceExistsException.add_member(:resource_type, Shapes::ShapeRef.new(shape: ResourceType, required: true, location_name: "ResourceType"))
|
@@ -281,6 +308,8 @@ module Aws::Transfer
|
|
281
308
|
StopServerRequest.add_member(:server_id, Shapes::ShapeRef.new(shape: ServerId, required: true, location_name: "ServerId"))
|
282
309
|
StopServerRequest.struct_class = Types::StopServerRequest
|
283
310
|
|
311
|
+
SubnetIds.member = Shapes::ShapeRef.new(shape: SubnetId)
|
312
|
+
|
284
313
|
Tag.add_member(:key, Shapes::ShapeRef.new(shape: TagKey, required: true, location_name: "Key"))
|
285
314
|
Tag.add_member(:value, Shapes::ShapeRef.new(shape: TagValue, required: true, location_name: "Value"))
|
286
315
|
Tag.struct_class = Types::Tag
|
@@ -296,6 +325,7 @@ module Aws::Transfer
|
|
296
325
|
TestIdentityProviderRequest.add_member(:server_id, Shapes::ShapeRef.new(shape: ServerId, required: true, location_name: "ServerId"))
|
297
326
|
TestIdentityProviderRequest.add_member(:user_name, Shapes::ShapeRef.new(shape: UserName, required: true, location_name: "UserName"))
|
298
327
|
TestIdentityProviderRequest.add_member(:user_password, Shapes::ShapeRef.new(shape: UserPassword, location_name: "UserPassword"))
|
328
|
+
TestIdentityProviderRequest.add_member(:server_protocol, Shapes::ShapeRef.new(shape: Protocol, location_name: "ServerProtocol"))
|
299
329
|
TestIdentityProviderRequest.struct_class = Types::TestIdentityProviderRequest
|
300
330
|
|
301
331
|
TestIdentityProviderResponse.add_member(:response, Shapes::ShapeRef.new(shape: Response, location_name: "Response"))
|
@@ -311,11 +341,13 @@ module Aws::Transfer
|
|
311
341
|
UntagResourceRequest.add_member(:tag_keys, Shapes::ShapeRef.new(shape: TagKeys, required: true, location_name: "TagKeys"))
|
312
342
|
UntagResourceRequest.struct_class = Types::UntagResourceRequest
|
313
343
|
|
344
|
+
UpdateServerRequest.add_member(:certificate, Shapes::ShapeRef.new(shape: Certificate, location_name: "Certificate"))
|
314
345
|
UpdateServerRequest.add_member(:endpoint_details, Shapes::ShapeRef.new(shape: EndpointDetails, location_name: "EndpointDetails"))
|
315
346
|
UpdateServerRequest.add_member(:endpoint_type, Shapes::ShapeRef.new(shape: EndpointType, location_name: "EndpointType"))
|
316
347
|
UpdateServerRequest.add_member(:host_key, Shapes::ShapeRef.new(shape: HostKey, location_name: "HostKey"))
|
317
348
|
UpdateServerRequest.add_member(:identity_provider_details, Shapes::ShapeRef.new(shape: IdentityProviderDetails, location_name: "IdentityProviderDetails"))
|
318
349
|
UpdateServerRequest.add_member(:logging_role, Shapes::ShapeRef.new(shape: NullableRole, location_name: "LoggingRole"))
|
350
|
+
UpdateServerRequest.add_member(:protocols, Shapes::ShapeRef.new(shape: Protocols, location_name: "Protocols"))
|
319
351
|
UpdateServerRequest.add_member(:server_id, Shapes::ShapeRef.new(shape: ServerId, required: true, location_name: "ServerId"))
|
320
352
|
UpdateServerRequest.struct_class = Types::UpdateServerRequest
|
321
353
|
|
@@ -347,7 +379,7 @@ module Aws::Transfer
|
|
347
379
|
"jsonVersion" => "1.1",
|
348
380
|
"protocol" => "json",
|
349
381
|
"serviceAbbreviation" => "AWS Transfer",
|
350
|
-
"serviceFullName" => "AWS Transfer
|
382
|
+
"serviceFullName" => "AWS Transfer Family",
|
351
383
|
"serviceId" => "Transfer",
|
352
384
|
"signatureVersion" => "v4",
|
353
385
|
"signingName" => "transfer",
|
@@ -361,10 +393,12 @@ module Aws::Transfer
|
|
361
393
|
o.http_request_uri = "/"
|
362
394
|
o.input = Shapes::ShapeRef.new(shape: CreateServerRequest)
|
363
395
|
o.output = Shapes::ShapeRef.new(shape: CreateServerResponse)
|
396
|
+
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
|
364
397
|
o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
|
365
398
|
o.errors << Shapes::ShapeRef.new(shape: InternalServiceError)
|
366
399
|
o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
|
367
400
|
o.errors << Shapes::ShapeRef.new(shape: ResourceExistsException)
|
401
|
+
o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
|
368
402
|
end)
|
369
403
|
|
370
404
|
api.add_operation(:create_user, Seahorse::Model::Operation.new.tap do |o|
|
@@ -386,6 +420,7 @@ module Aws::Transfer
|
|
386
420
|
o.http_request_uri = "/"
|
387
421
|
o.input = Shapes::ShapeRef.new(shape: DeleteServerRequest)
|
388
422
|
o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
|
423
|
+
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
|
389
424
|
o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
|
390
425
|
o.errors << Shapes::ShapeRef.new(shape: InternalServiceError)
|
391
426
|
o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
|
@@ -578,7 +613,9 @@ module Aws::Transfer
|
|
578
613
|
o.http_request_uri = "/"
|
579
614
|
o.input = Shapes::ShapeRef.new(shape: UpdateServerRequest)
|
580
615
|
o.output = Shapes::ShapeRef.new(shape: UpdateServerResponse)
|
616
|
+
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
|
581
617
|
o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
|
618
|
+
o.errors << Shapes::ShapeRef.new(shape: ConflictException)
|
582
619
|
o.errors << Shapes::ShapeRef.new(shape: InternalServiceError)
|
583
620
|
o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
|
584
621
|
o.errors << Shapes::ShapeRef.new(shape: ResourceExistsException)
|
@@ -6,10 +6,71 @@
|
|
6
6
|
# WARNING ABOUT GENERATED CODE
|
7
7
|
|
8
8
|
module Aws::Transfer
|
9
|
+
|
10
|
+
# When Transfer returns an error response, the Ruby SDK constructs and raises an error.
|
11
|
+
# These errors all extend Aws::Transfer::Errors::ServiceError < {Aws::Errors::ServiceError}
|
12
|
+
#
|
13
|
+
# You can rescue all Transfer errors using ServiceError:
|
14
|
+
#
|
15
|
+
# begin
|
16
|
+
# # do stuff
|
17
|
+
# rescue Aws::Transfer::Errors::ServiceError
|
18
|
+
# # rescues all Transfer API errors
|
19
|
+
# end
|
20
|
+
#
|
21
|
+
#
|
22
|
+
# ## Request Context
|
23
|
+
# ServiceError objects have a {Aws::Errors::ServiceError#context #context} method that returns
|
24
|
+
# information about the request that generated the error.
|
25
|
+
# See {Seahorse::Client::RequestContext} for more information.
|
26
|
+
#
|
27
|
+
# ## Error Classes
|
28
|
+
# * {AccessDeniedException}
|
29
|
+
# * {ConflictException}
|
30
|
+
# * {InternalServiceError}
|
31
|
+
# * {InvalidNextTokenException}
|
32
|
+
# * {InvalidRequestException}
|
33
|
+
# * {ResourceExistsException}
|
34
|
+
# * {ResourceNotFoundException}
|
35
|
+
# * {ServiceUnavailableException}
|
36
|
+
# * {ThrottlingException}
|
37
|
+
#
|
38
|
+
# Additionally, error classes are dynamically generated for service errors based on the error code
|
39
|
+
# if they are not defined above.
|
9
40
|
module Errors
|
10
41
|
|
11
42
|
extend Aws::Errors::DynamicErrors
|
12
43
|
|
44
|
+
class AccessDeniedException < ServiceError
|
45
|
+
|
46
|
+
# @param [Seahorse::Client::RequestContext] context
|
47
|
+
# @param [String] message
|
48
|
+
# @param [Aws::Transfer::Types::AccessDeniedException] data
|
49
|
+
def initialize(context, message, data = Aws::EmptyStructure.new)
|
50
|
+
super(context, message, data)
|
51
|
+
end
|
52
|
+
|
53
|
+
# @return [String]
|
54
|
+
def message
|
55
|
+
@message || @data[:message]
|
56
|
+
end
|
57
|
+
end
|
58
|
+
|
59
|
+
class ConflictException < ServiceError
|
60
|
+
|
61
|
+
# @param [Seahorse::Client::RequestContext] context
|
62
|
+
# @param [String] message
|
63
|
+
# @param [Aws::Transfer::Types::ConflictException] data
|
64
|
+
def initialize(context, message, data = Aws::EmptyStructure.new)
|
65
|
+
super(context, message, data)
|
66
|
+
end
|
67
|
+
|
68
|
+
# @return [String]
|
69
|
+
def message
|
70
|
+
@message || @data[:message]
|
71
|
+
end
|
72
|
+
end
|
73
|
+
|
13
74
|
class InternalServiceError < ServiceError
|
14
75
|
|
15
76
|
# @param [Seahorse::Client::RequestContext] context
|
@@ -23,7 +84,6 @@ module Aws::Transfer
|
|
23
84
|
def message
|
24
85
|
@message || @data[:message]
|
25
86
|
end
|
26
|
-
|
27
87
|
end
|
28
88
|
|
29
89
|
class InvalidNextTokenException < ServiceError
|
@@ -39,7 +99,6 @@ module Aws::Transfer
|
|
39
99
|
def message
|
40
100
|
@message || @data[:message]
|
41
101
|
end
|
42
|
-
|
43
102
|
end
|
44
103
|
|
45
104
|
class InvalidRequestException < ServiceError
|
@@ -55,7 +114,6 @@ module Aws::Transfer
|
|
55
114
|
def message
|
56
115
|
@message || @data[:message]
|
57
116
|
end
|
58
|
-
|
59
117
|
end
|
60
118
|
|
61
119
|
class ResourceExistsException < ServiceError
|
@@ -81,7 +139,6 @@ module Aws::Transfer
|
|
81
139
|
def resource_type
|
82
140
|
@data[:resource_type]
|
83
141
|
end
|
84
|
-
|
85
142
|
end
|
86
143
|
|
87
144
|
class ResourceNotFoundException < ServiceError
|
@@ -107,7 +164,6 @@ module Aws::Transfer
|
|
107
164
|
def resource_type
|
108
165
|
@data[:resource_type]
|
109
166
|
end
|
110
|
-
|
111
167
|
end
|
112
168
|
|
113
169
|
class ServiceUnavailableException < ServiceError
|
@@ -123,7 +179,6 @@ module Aws::Transfer
|
|
123
179
|
def message
|
124
180
|
@message || @data[:message]
|
125
181
|
end
|
126
|
-
|
127
182
|
end
|
128
183
|
|
129
184
|
class ThrottlingException < ServiceError
|
@@ -139,7 +194,6 @@ module Aws::Transfer
|
|
139
194
|
def retry_after_seconds
|
140
195
|
@data[:retry_after_seconds]
|
141
196
|
end
|
142
|
-
|
143
197
|
end
|
144
198
|
|
145
199
|
end
|
@@ -8,14 +8,44 @@
|
|
8
8
|
module Aws::Transfer
|
9
9
|
module Types
|
10
10
|
|
11
|
+
# You do not have sufficient access to perform this action.
|
12
|
+
#
|
13
|
+
# @!attribute [rw] message
|
14
|
+
# @return [String]
|
15
|
+
#
|
16
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/AccessDeniedException AWS API Documentation
|
17
|
+
#
|
18
|
+
class AccessDeniedException < Struct.new(
|
19
|
+
:message)
|
20
|
+
include Aws::Structure
|
21
|
+
end
|
22
|
+
|
23
|
+
# This exception is thrown when the `UpdatServer` is called for a file
|
24
|
+
# transfer protocol-enabled server that has VPC as the endpoint type and
|
25
|
+
# the server's `VpcEndpointID` is not in the available state.
|
26
|
+
#
|
27
|
+
# @!attribute [rw] message
|
28
|
+
# @return [String]
|
29
|
+
#
|
30
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ConflictException AWS API Documentation
|
31
|
+
#
|
32
|
+
class ConflictException < Struct.new(
|
33
|
+
:message)
|
34
|
+
include Aws::Structure
|
35
|
+
end
|
36
|
+
|
11
37
|
# @note When making an API call, you may pass CreateServerRequest
|
12
38
|
# data as a hash:
|
13
39
|
#
|
14
40
|
# {
|
41
|
+
# certificate: "Certificate",
|
15
42
|
# endpoint_details: {
|
43
|
+
# address_allocation_ids: ["AddressAllocationId"],
|
44
|
+
# subnet_ids: ["SubnetId"],
|
16
45
|
# vpc_endpoint_id: "VpcEndpointId",
|
46
|
+
# vpc_id: "VpcId",
|
17
47
|
# },
|
18
|
-
# endpoint_type: "PUBLIC", # accepts PUBLIC, VPC_ENDPOINT
|
48
|
+
# endpoint_type: "PUBLIC", # accepts PUBLIC, VPC, VPC_ENDPOINT
|
19
49
|
# host_key: "HostKey",
|
20
50
|
# identity_provider_details: {
|
21
51
|
# url: "Url",
|
@@ -23,6 +53,7 @@ module Aws::Transfer
|
|
23
53
|
# },
|
24
54
|
# identity_provider_type: "SERVICE_MANAGED", # accepts SERVICE_MANAGED, API_GATEWAY
|
25
55
|
# logging_role: "Role",
|
56
|
+
# protocols: ["SFTP"], # accepts SFTP, FTP, FTPS
|
26
57
|
# tags: [
|
27
58
|
# {
|
28
59
|
# key: "TagKey", # required
|
@@ -31,16 +62,26 @@ module Aws::Transfer
|
|
31
62
|
# ],
|
32
63
|
# }
|
33
64
|
#
|
65
|
+
# @!attribute [rw] certificate
|
66
|
+
# The Amazon Resource Name (ARN) of the AWS Certificate Manager (ACM)
|
67
|
+
# certificate. Required when `Protocols` is set to `FTPS`.
|
68
|
+
# @return [String]
|
69
|
+
#
|
34
70
|
# @!attribute [rw] endpoint_details
|
35
|
-
# The virtual private cloud (VPC) endpoint settings that
|
36
|
-
#
|
37
|
-
#
|
71
|
+
# The virtual private cloud (VPC) endpoint settings that are
|
72
|
+
# configured for your file transfer protocol-enabled server. When you
|
73
|
+
# host your endpoint within your VPC, you can make it accessible only
|
74
|
+
# to resources within your VPC, or you can attach Elastic IPs and make
|
75
|
+
# it accessible to clients over the internet. Your VPC's default
|
76
|
+
# security groups are automatically assigned to your endpoint.
|
38
77
|
# @return [Types::EndpointDetails]
|
39
78
|
#
|
40
79
|
# @!attribute [rw] endpoint_type
|
41
|
-
# The type of VPC endpoint that you want your
|
42
|
-
#
|
43
|
-
#
|
80
|
+
# The type of VPC endpoint that you want your file transfer
|
81
|
+
# protocol-enabled server to connect to. You can choose to connect to
|
82
|
+
# the public internet or a virtual private cloud (VPC) endpoint. With
|
83
|
+
# a VPC endpoint, you can restrict access to your server and resources
|
84
|
+
# only within your VPC.
|
44
85
|
# @return [String]
|
45
86
|
#
|
46
87
|
# @!attribute [rw] host_key
|
@@ -48,56 +89,77 @@ module Aws::Transfer
|
|
48
89
|
# my-new-server-key` command.
|
49
90
|
#
|
50
91
|
# If you aren't planning to migrate existing users from an existing
|
51
|
-
# SFTP server to a new
|
92
|
+
# SFTP-enabled server to a new server, don't update the host key.
|
52
93
|
# Accidentally changing a server's host key can be disruptive.
|
53
94
|
#
|
54
|
-
# For more information, see
|
55
|
-
#
|
56
|
-
#
|
95
|
+
# For more information, see [Changing the Host Key for Your AWS
|
96
|
+
# Transfer Family Server][1] in the *AWS Transfer Family User Guide*.
|
97
|
+
#
|
98
|
+
#
|
99
|
+
#
|
100
|
+
# [1]: https://docs.aws.amazon.com/transfer/latest/userguide/configuring-servers.html#change-host-key
|
57
101
|
# @return [String]
|
58
102
|
#
|
59
103
|
# @!attribute [rw] identity_provider_details
|
60
|
-
#
|
61
|
-
#
|
62
|
-
#
|
63
|
-
#
|
64
|
-
# `
|
104
|
+
# Required when `IdentityProviderType` is set to `API_GATEWAY`.
|
105
|
+
# Accepts an array containing all of the information required to call
|
106
|
+
# a customer-supplied authentication API, including the API Gateway
|
107
|
+
# URL. Not required when `IdentityProviderType` is set to
|
108
|
+
# `SERVICE_MANAGED`.
|
65
109
|
# @return [Types::IdentityProviderDetails]
|
66
110
|
#
|
67
111
|
# @!attribute [rw] identity_provider_type
|
68
|
-
# Specifies the mode of authentication for
|
69
|
-
# default value is `SERVICE_MANAGED`,
|
70
|
-
# access
|
71
|
-
# service. Use the `API_GATEWAY` value to integrate
|
72
|
-
# provider of your choosing. The `API_GATEWAY`
|
73
|
-
# provide an API Gateway endpoint URL to call
|
74
|
-
# the `IdentityProviderDetails` parameter.
|
112
|
+
# Specifies the mode of authentication for a file transfer
|
113
|
+
# protocol-enabled server. The default value is `SERVICE_MANAGED`,
|
114
|
+
# which allows you to store and access user credentials within the AWS
|
115
|
+
# Transfer Family service. Use the `API_GATEWAY` value to integrate
|
116
|
+
# with an identity provider of your choosing. The `API_GATEWAY`
|
117
|
+
# setting requires you to provide an API Gateway endpoint URL to call
|
118
|
+
# for authentication using the `IdentityProviderDetails` parameter.
|
75
119
|
# @return [String]
|
76
120
|
#
|
77
121
|
# @!attribute [rw] logging_role
|
78
|
-
#
|
79
|
-
#
|
122
|
+
# Allows the service to write your users' activity to your Amazon
|
123
|
+
# CloudWatch logs for monitoring and auditing purposes.
|
80
124
|
# @return [String]
|
81
125
|
#
|
126
|
+
# @!attribute [rw] protocols
|
127
|
+
# Specifies the file transfer protocol or protocols over which your
|
128
|
+
# file transfer protocol client can connect to your server's
|
129
|
+
# endpoint. The available protocols are:
|
130
|
+
#
|
131
|
+
# * Secure Shell (SSH) File Transfer Protocol (SFTP): File transfer
|
132
|
+
# over SSH
|
133
|
+
#
|
134
|
+
# * File Transfer Protocol Secure (FTPS): File transfer with TLS
|
135
|
+
# encryption
|
136
|
+
#
|
137
|
+
# * File Transfer Protocol (FTP): Unencrypted file transfer
|
138
|
+
# @return [Array<String>]
|
139
|
+
#
|
82
140
|
# @!attribute [rw] tags
|
83
|
-
# Key-value pairs that can be used to group and search for
|
141
|
+
# Key-value pairs that can be used to group and search for file
|
142
|
+
# transfer protocol-enabled servers.
|
84
143
|
# @return [Array<Types::Tag>]
|
85
144
|
#
|
86
145
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateServerRequest AWS API Documentation
|
87
146
|
#
|
88
147
|
class CreateServerRequest < Struct.new(
|
148
|
+
:certificate,
|
89
149
|
:endpoint_details,
|
90
150
|
:endpoint_type,
|
91
151
|
:host_key,
|
92
152
|
:identity_provider_details,
|
93
153
|
:identity_provider_type,
|
94
154
|
:logging_role,
|
155
|
+
:protocols,
|
95
156
|
:tags)
|
96
157
|
include Aws::Structure
|
97
158
|
end
|
98
159
|
|
99
160
|
# @!attribute [rw] server_id
|
100
|
-
# The service-assigned ID of the
|
161
|
+
# The service-assigned ID of the file transfer protocol-enabled server
|
162
|
+
# that is created.
|
101
163
|
# @return [String]
|
102
164
|
#
|
103
165
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateServerResponse AWS API Documentation
|
@@ -134,38 +196,50 @@ module Aws::Transfer
|
|
134
196
|
#
|
135
197
|
# @!attribute [rw] home_directory
|
136
198
|
# The landing directory (folder) for a user when they log in to the
|
137
|
-
# server using
|
199
|
+
# file transfer protocol-enabled server using the client.
|
138
200
|
#
|
139
|
-
# An example is
|
201
|
+
# An example is `your-Amazon-S3-bucket-name>/home/username`.
|
140
202
|
# @return [String]
|
141
203
|
#
|
142
204
|
# @!attribute [rw] home_directory_type
|
143
205
|
# The type of landing directory (folder) you want your users' home
|
144
|
-
# directory to be when they log into the
|
145
|
-
# `PATH`, the user will see
|
146
|
-
#
|
147
|
-
#
|
148
|
-
#
|
206
|
+
# directory to be when they log into the file transfer
|
207
|
+
# protocol-enabled server. If you set it to `PATH`, the user will see
|
208
|
+
# the absolute Amazon S3 bucket paths as is in their file transfer
|
209
|
+
# protocol clients. If you set it `LOGICAL`, you will need to provide
|
210
|
+
# mappings in the `HomeDirectoryMappings` for how you want to make
|
211
|
+
# Amazon S3 paths visible to your users.
|
149
212
|
# @return [String]
|
150
213
|
#
|
151
214
|
# @!attribute [rw] home_directory_mappings
|
152
|
-
# Logical directory mappings that specify what S3 paths and
|
153
|
-
# should be visible to your user and how you want to make them
|
215
|
+
# Logical directory mappings that specify what Amazon S3 paths and
|
216
|
+
# keys should be visible to your user and how you want to make them
|
154
217
|
# visible. You will need to specify the "`Entry`" and "`Target`"
|
155
218
|
# pair, where `Entry` shows how the path is made visible and `Target`
|
156
|
-
# is the actual S3 path. If you only specify a target, it will
|
157
|
-
# displayed as is. You will need to also make sure that your AWS
|
158
|
-
# Role provides access to paths in `Target`. The following is an
|
219
|
+
# is the actual Amazon S3 path. If you only specify a target, it will
|
220
|
+
# be displayed as is. You will need to also make sure that your AWS
|
221
|
+
# IAM Role provides access to paths in `Target`. The following is an
|
159
222
|
# example.
|
160
223
|
#
|
161
224
|
# `'[ "/bucket2/documentation", \{ "Entry":
|
162
225
|
# "your-personal-report.pdf", "Target":
|
163
226
|
# "/bucket3/customized-reports/$\{transfer:UserName\}.pdf" \} ]'`
|
164
227
|
#
|
165
|
-
# In most cases, you can use this value instead of the scope
|
228
|
+
# In most cases, you can use this value instead of the scope-down
|
166
229
|
# policy to lock your user down to the designated home directory
|
167
230
|
# ("chroot"). To do this, you can set `Entry` to '/' and set
|
168
231
|
# `Target` to the HomeDirectory parameter value.
|
232
|
+
#
|
233
|
+
# <note markdown="1"> If the target of a logical directory entry does not exist in Amazon
|
234
|
+
# S3, the entry will be ignored. As a workaround, you can use the
|
235
|
+
# Amazon S3 api to create 0 byte objects as place holders for your
|
236
|
+
# directory. If using the CLI, use the `s3api` call instead of `s3` so
|
237
|
+
# you can use the put-object operation. For example, you use the
|
238
|
+
# following: `aws s3api put-object --bucket bucketname --key
|
239
|
+
# path/to/folder/`. Make sure that the end of the key name ends in a
|
240
|
+
# '/' for it to be considered a folder.
|
241
|
+
#
|
242
|
+
# </note>
|
169
243
|
# @return [Array<Types::HomeDirectoryMapEntry>]
|
170
244
|
#
|
171
245
|
# @!attribute [rw] policy
|
@@ -175,40 +249,44 @@ module Aws::Transfer
|
|
175
249
|
# inside this policy include `$\{Transfer:UserName\}`,
|
176
250
|
# `$\{Transfer:HomeDirectory\}`, and `$\{Transfer:HomeBucket\}`.
|
177
251
|
#
|
178
|
-
# <note markdown="1"> For scope-down policies, AWS Transfer
|
179
|
-
#
|
180
|
-
#
|
181
|
-
#
|
252
|
+
# <note markdown="1"> For scope-down policies, AWS Transfer Family stores the policy as a
|
253
|
+
# JSON blob, instead of the Amazon Resource Name (ARN) of the policy.
|
254
|
+
# You save the policy as a JSON blob and pass it in the `Policy`
|
255
|
+
# argument.
|
182
256
|
#
|
183
|
-
# For an example of a scope-down policy, see
|
184
|
-
#
|
185
|
-
# a Scope-Down Policy.
|
257
|
+
# For an example of a scope-down policy, see [Creating a Scope-Down
|
258
|
+
# Policy][1].
|
186
259
|
#
|
187
|
-
# For more information, see
|
188
|
-
#
|
189
|
-
# in the *AWS Security Token Service API Reference*.
|
260
|
+
# For more information, see [AssumeRole][2] in the *AWS Security Token
|
261
|
+
# Service API Reference*.
|
190
262
|
#
|
191
263
|
# </note>
|
264
|
+
#
|
265
|
+
#
|
266
|
+
#
|
267
|
+
# [1]: https://docs.aws.amazon.com/transfer/latest/userguide/users.html#users-policies-scope-down
|
268
|
+
# [2]: https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html
|
192
269
|
# @return [String]
|
193
270
|
#
|
194
271
|
# @!attribute [rw] role
|
195
|
-
# The IAM role that controls your
|
272
|
+
# The IAM role that controls your users' access to your Amazon S3
|
196
273
|
# bucket. The policies attached to this role will determine the level
|
197
274
|
# of access you want to provide your users when transferring files
|
198
275
|
# into and out of your Amazon S3 bucket or buckets. The IAM role
|
199
|
-
# should also contain a trust relationship that allows the
|
200
|
-
# to access your resources when
|
201
|
-
# requests.
|
276
|
+
# should also contain a trust relationship that allows the file
|
277
|
+
# transfer protocol-enabled server to access your resources when
|
278
|
+
# servicing your users' transfer requests.
|
202
279
|
# @return [String]
|
203
280
|
#
|
204
281
|
# @!attribute [rw] server_id
|
205
|
-
# A system-assigned unique identifier for
|
206
|
-
# This is the specific
|
282
|
+
# A system-assigned unique identifier for a file transfer
|
283
|
+
# protocol-enabled server instance. This is the specific server that
|
284
|
+
# you added your user to.
|
207
285
|
# @return [String]
|
208
286
|
#
|
209
287
|
# @!attribute [rw] ssh_public_key_body
|
210
288
|
# The public portion of the Secure Shell (SSH) key used to
|
211
|
-
# authenticate the user to the
|
289
|
+
# authenticate the user to the file transfer protocol-enabled server.
|
212
290
|
# @return [String]
|
213
291
|
#
|
214
292
|
# @!attribute [rw] tags
|
@@ -217,11 +295,11 @@ module Aws::Transfer
|
|
217
295
|
# @return [Array<Types::Tag>]
|
218
296
|
#
|
219
297
|
# @!attribute [rw] user_name
|
220
|
-
# A unique string that identifies a user and is associated with a
|
221
|
-
# server as specified by the `ServerId`.
|
222
|
-
# minimum of 3 and a maximum of 32 characters
|
223
|
-
# valid characters: a-z, A-Z, 0-9, underscore,
|
224
|
-
# name can't start with a hyphen.
|
298
|
+
# A unique string that identifies a user and is associated with a file
|
299
|
+
# transfer protocol-enabled server as specified by the `ServerId`.
|
300
|
+
# This user name must be a minimum of 3 and a maximum of 32 characters
|
301
|
+
# long. The following are valid characters: a-z, A-Z, 0-9, underscore,
|
302
|
+
# and hyphen. The user name can't start with a hyphen.
|
225
303
|
# @return [String]
|
226
304
|
#
|
227
305
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateUserRequest AWS API Documentation
|
@@ -240,12 +318,13 @@ module Aws::Transfer
|
|
240
318
|
end
|
241
319
|
|
242
320
|
# @!attribute [rw] server_id
|
243
|
-
# The ID of the
|
321
|
+
# The ID of the file transfer protocol-enabled server that the user is
|
322
|
+
# attached to.
|
244
323
|
# @return [String]
|
245
324
|
#
|
246
325
|
# @!attribute [rw] user_name
|
247
|
-
# A unique string that identifies a user account associated with
|
248
|
-
#
|
326
|
+
# A unique string that identifies a user account associated with a
|
327
|
+
# file transfer protocol-enabled server.
|
249
328
|
# @return [String]
|
250
329
|
#
|
251
330
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateUserResponse AWS API Documentation
|
@@ -264,7 +343,8 @@ module Aws::Transfer
|
|
264
343
|
# }
|
265
344
|
#
|
266
345
|
# @!attribute [rw] server_id
|
267
|
-
# A unique system-assigned identifier for
|
346
|
+
# A unique system-assigned identifier for a file transfer
|
347
|
+
# protocol-enabled server instance.
|
268
348
|
# @return [String]
|
269
349
|
#
|
270
350
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteServerRequest AWS API Documentation
|
@@ -284,8 +364,8 @@ module Aws::Transfer
|
|
284
364
|
# }
|
285
365
|
#
|
286
366
|
# @!attribute [rw] server_id
|
287
|
-
# A system-assigned unique identifier for a
|
288
|
-
#
|
367
|
+
# A system-assigned unique identifier for a file transfer
|
368
|
+
# protocol-enabled server instance that has the user assigned to it.
|
289
369
|
# @return [String]
|
290
370
|
#
|
291
371
|
# @!attribute [rw] ssh_public_key_id
|
@@ -315,13 +395,13 @@ module Aws::Transfer
|
|
315
395
|
# }
|
316
396
|
#
|
317
397
|
# @!attribute [rw] server_id
|
318
|
-
# A system-assigned unique identifier for
|
319
|
-
# has the user assigned to it.
|
398
|
+
# A system-assigned unique identifier for a file transfer
|
399
|
+
# protocol-enabled server instance that has the user assigned to it.
|
320
400
|
# @return [String]
|
321
401
|
#
|
322
402
|
# @!attribute [rw] user_name
|
323
|
-
# A unique string that identifies a user that is being deleted from
|
324
|
-
#
|
403
|
+
# A unique string that identifies a user that is being deleted from a
|
404
|
+
# file transfer protocol-enabled server.
|
325
405
|
# @return [String]
|
326
406
|
#
|
327
407
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteUserRequest AWS API Documentation
|
@@ -340,7 +420,8 @@ module Aws::Transfer
|
|
340
420
|
# }
|
341
421
|
#
|
342
422
|
# @!attribute [rw] server_id
|
343
|
-
# A system-assigned unique identifier for
|
423
|
+
# A system-assigned unique identifier for a file transfer
|
424
|
+
# protocol-enabled server.
|
344
425
|
# @return [String]
|
345
426
|
#
|
346
427
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeServerRequest AWS API Documentation
|
@@ -351,8 +432,8 @@ module Aws::Transfer
|
|
351
432
|
end
|
352
433
|
|
353
434
|
# @!attribute [rw] server
|
354
|
-
# An array containing the properties of
|
355
|
-
# you specified.
|
435
|
+
# An array containing the properties of a file transfer
|
436
|
+
# protocol-enabled server with the `ServerID` you specified.
|
356
437
|
# @return [Types::DescribedServer]
|
357
438
|
#
|
358
439
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeServerResponse AWS API Documentation
|
@@ -371,14 +452,15 @@ module Aws::Transfer
|
|
371
452
|
# }
|
372
453
|
#
|
373
454
|
# @!attribute [rw] server_id
|
374
|
-
# A system-assigned unique identifier for
|
375
|
-
# user assigned.
|
455
|
+
# A system-assigned unique identifier for a file transfer
|
456
|
+
# protocol-enabled server that has this user assigned.
|
376
457
|
# @return [String]
|
377
458
|
#
|
378
459
|
# @!attribute [rw] user_name
|
379
|
-
# The name of the user assigned to one or more
|
380
|
-
# part of the sign-in
|
381
|
-
# service and perform file
|
460
|
+
# The name of the user assigned to one or more file transfer
|
461
|
+
# protocol-enabled servers. User names are part of the sign-in
|
462
|
+
# credentials to use the AWS Transfer Family service and perform file
|
463
|
+
# transfer tasks.
|
382
464
|
# @return [String]
|
383
465
|
#
|
384
466
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeUserRequest AWS API Documentation
|
@@ -390,8 +472,8 @@ module Aws::Transfer
|
|
390
472
|
end
|
391
473
|
|
392
474
|
# @!attribute [rw] server_id
|
393
|
-
# A system-assigned unique identifier for
|
394
|
-
# user assigned.
|
475
|
+
# A system-assigned unique identifier for a file transfer
|
476
|
+
# protocol-enabled server that has this user assigned.
|
395
477
|
# @return [String]
|
396
478
|
#
|
397
479
|
# @!attribute [rw] user
|
@@ -407,65 +489,86 @@ module Aws::Transfer
|
|
407
489
|
include Aws::Structure
|
408
490
|
end
|
409
491
|
|
410
|
-
# Describes the properties of
|
411
|
-
# returned includes the following: the
|
412
|
-
# (ARN), the authentication configuration
|
413
|
-
# the server ID and state, and assigned tags
|
492
|
+
# Describes the properties of a file transfer protocol-enabled server
|
493
|
+
# that was specified. Information returned includes the following: the
|
494
|
+
# server Amazon Resource Name (ARN), the authentication configuration
|
495
|
+
# and type, the logging role, the server ID and state, and assigned tags
|
496
|
+
# or metadata.
|
414
497
|
#
|
415
498
|
# @!attribute [rw] arn
|
416
|
-
# Specifies the unique Amazon Resource Name (ARN) for
|
417
|
-
# described.
|
499
|
+
# Specifies the unique Amazon Resource Name (ARN) for a file transfer
|
500
|
+
# protocol-enabled server to be described.
|
501
|
+
# @return [String]
|
502
|
+
#
|
503
|
+
# @!attribute [rw] certificate
|
504
|
+
# The Amazon Resource Name (ARN) of the AWS Certificate Manager (ACM)
|
505
|
+
# certificate. Required when `Protocols` is set to `FTPS`.
|
418
506
|
# @return [String]
|
419
507
|
#
|
420
508
|
# @!attribute [rw] endpoint_details
|
421
509
|
# The virtual private cloud (VPC) endpoint settings that you
|
422
|
-
# configured for your
|
510
|
+
# configured for your file transfer protocol-enabled server.
|
423
511
|
# @return [Types::EndpointDetails]
|
424
512
|
#
|
425
513
|
# @!attribute [rw] endpoint_type
|
426
|
-
# The type of endpoint that your
|
427
|
-
#
|
428
|
-
# accessible over the public internet.
|
514
|
+
# The type of endpoint that your file transfer protocol-enabled server
|
515
|
+
# is connected to. If your server is connected to a VPC endpoint, your
|
516
|
+
# server isn't accessible over the public internet.
|
429
517
|
# @return [String]
|
430
518
|
#
|
431
519
|
# @!attribute [rw] host_key_fingerprint
|
432
|
-
#
|
433
|
-
# server's host key. This value is equivalent to the
|
434
|
-
# `ssh-keygen -l -E md5 -f my-new-server-key` command.
|
520
|
+
# Contains the message-digest algorithm (MD5) hash of a file transfer
|
521
|
+
# protocol-enabled server's host key. This value is equivalent to the
|
522
|
+
# output of the `ssh-keygen -l -E md5 -f my-new-server-key` command.
|
435
523
|
# @return [String]
|
436
524
|
#
|
437
525
|
# @!attribute [rw] identity_provider_details
|
438
526
|
# Specifies information to call a customer-supplied authentication
|
439
527
|
# API. This field is not populated when the `IdentityProviderType` of
|
440
|
-
#
|
528
|
+
# a file transfer protocol-enabled server is `SERVICE_MANAGED`.
|
441
529
|
# @return [Types::IdentityProviderDetails]
|
442
530
|
#
|
443
531
|
# @!attribute [rw] identity_provider_type
|
444
|
-
#
|
445
|
-
#
|
446
|
-
#
|
447
|
-
# service. A value of `API_GATEWAY` indicates
|
448
|
-
# an API Gateway endpoint that will be
|
449
|
-
# user into the service.
|
532
|
+
# Defines the mode of authentication method enabled for this service.
|
533
|
+
# A value of `SERVICE_MANAGED` means that you are using this file
|
534
|
+
# transfer protocol-enabled server to store and access user
|
535
|
+
# credentials within the service. A value of `API_GATEWAY` indicates
|
536
|
+
# that you have integrated an API Gateway endpoint that will be
|
537
|
+
# invoked for authenticating your user into the service.
|
450
538
|
# @return [String]
|
451
539
|
#
|
452
540
|
# @!attribute [rw] logging_role
|
453
|
-
#
|
454
|
-
#
|
455
|
-
# Amazon S3 events. When set, user activity can be viewed
|
456
|
-
# CloudWatch logs.
|
541
|
+
# An AWS Identity and Access Management (IAM) entity that allows a
|
542
|
+
# file transfer protocol-enabled server to turn on Amazon CloudWatch
|
543
|
+
# logging for Amazon S3 events. When set, user activity can be viewed
|
544
|
+
# in your CloudWatch logs.
|
457
545
|
# @return [String]
|
458
546
|
#
|
547
|
+
# @!attribute [rw] protocols
|
548
|
+
# Specifies the file transfer protocol or protocols over which your
|
549
|
+
# file transfer protocol client can connect to your server's
|
550
|
+
# endpoint. The available protocols are:
|
551
|
+
#
|
552
|
+
# * Secure Shell (SSH) File Transfer Protocol (SFTP): File transfer
|
553
|
+
# over SSH
|
554
|
+
#
|
555
|
+
# * File Transfer Protocol Secure (FTPS): File transfer with TLS
|
556
|
+
# encryption
|
557
|
+
#
|
558
|
+
# * File Transfer Protocol (FTP): Unencrypted file transfer
|
559
|
+
# @return [Array<String>]
|
560
|
+
#
|
459
561
|
# @!attribute [rw] server_id
|
460
|
-
#
|
461
|
-
# server that you instantiate.
|
562
|
+
# Unique system-assigned identifier for a file transfer
|
563
|
+
# protocol-enabled server that you instantiate.
|
462
564
|
# @return [String]
|
463
565
|
#
|
464
566
|
# @!attribute [rw] state
|
465
|
-
# The condition of
|
466
|
-
# A value of `ONLINE` indicates that the
|
467
|
-
# transfer files. A `State` value of
|
468
|
-
# cannot perform file transfer
|
567
|
+
# The condition of a file transfer protocol-enabled server for the
|
568
|
+
# server that was described. A value of `ONLINE` indicates that the
|
569
|
+
# server can accept jobs and transfer files. A `State` value of
|
570
|
+
# `OFFLINE` means that the server cannot perform file transfer
|
571
|
+
# operations.
|
469
572
|
#
|
470
573
|
# The states of `STARTING` and `STOPPING` indicate that the server is
|
471
574
|
# in an intermediate state, either not fully able to respond, or not
|
@@ -474,26 +577,28 @@ module Aws::Transfer
|
|
474
577
|
# @return [String]
|
475
578
|
#
|
476
579
|
# @!attribute [rw] tags
|
477
|
-
#
|
478
|
-
#
|
479
|
-
# was described.
|
580
|
+
# Contains the key-value pairs that you can use to search for and
|
581
|
+
# group file transfer protocol-enabled servers that were assigned to
|
582
|
+
# the server that was described.
|
480
583
|
# @return [Array<Types::Tag>]
|
481
584
|
#
|
482
585
|
# @!attribute [rw] user_count
|
483
|
-
# The number of users that are assigned to
|
484
|
-
# specified with the `ServerId`.
|
586
|
+
# The number of users that are assigned to a file transfer
|
587
|
+
# protocol-enabled server you specified with the `ServerId`.
|
485
588
|
# @return [Integer]
|
486
589
|
#
|
487
590
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribedServer AWS API Documentation
|
488
591
|
#
|
489
592
|
class DescribedServer < Struct.new(
|
490
593
|
:arn,
|
594
|
+
:certificate,
|
491
595
|
:endpoint_details,
|
492
596
|
:endpoint_type,
|
493
597
|
:host_key_fingerprint,
|
494
598
|
:identity_provider_details,
|
495
599
|
:identity_provider_type,
|
496
600
|
:logging_role,
|
601
|
+
:protocols,
|
497
602
|
:server_id,
|
498
603
|
:state,
|
499
604
|
:tags,
|
@@ -504,44 +609,40 @@ module Aws::Transfer
|
|
504
609
|
# Returns properties of the user that you want to describe.
|
505
610
|
#
|
506
611
|
# @!attribute [rw] arn
|
507
|
-
#
|
508
|
-
#
|
612
|
+
# Contains the unique Amazon Resource Name (ARN) for the user that was
|
613
|
+
# requested to be described.
|
509
614
|
# @return [String]
|
510
615
|
#
|
511
616
|
# @!attribute [rw] home_directory
|
512
|
-
#
|
513
|
-
#
|
514
|
-
#
|
617
|
+
# Specifies the landing directory (or folder), which is the location
|
618
|
+
# that files are written to or read from in an Amazon S3 bucket for
|
619
|
+
# the described user. An example is `/your s3 bucket
|
515
620
|
# name/home/username `.
|
516
621
|
# @return [String]
|
517
622
|
#
|
518
623
|
# @!attribute [rw] home_directory_mappings
|
519
|
-
# Logical directory mappings that you specified for what S3
|
520
|
-
# keys should be visible to your user and how you want to
|
521
|
-
# visible. You will need to specify the "`Entry`" and
|
522
|
-
# pair, where `Entry` shows how the path is made visible
|
523
|
-
# is the actual S3 path. If you only specify a
|
524
|
-
# displayed as is. You will need to also make sure
|
525
|
-
# Role provides access to paths in `Target`.
|
526
|
-
#
|
527
|
-
# In most cases, you can use this value instead of the scope
|
528
|
-
# policy to lock your user down to the designated home directory
|
529
|
-
# ("chroot"). To do this, you can set `Entry` to '/' and set
|
530
|
-
# `Target` to the HomeDirectory parameter value.
|
531
|
-
#
|
532
|
-
# In most cases, you can use this value instead of the scope down
|
624
|
+
# Logical directory mappings that you specified for what Amazon S3
|
625
|
+
# paths and keys should be visible to your user and how you want to
|
626
|
+
# make them visible. You will need to specify the "`Entry`" and
|
627
|
+
# "`Target`" pair, where `Entry` shows how the path is made visible
|
628
|
+
# and `Target` is the actual Amazon S3 path. If you only specify a
|
629
|
+
# target, it will be displayed as is. You will need to also make sure
|
630
|
+
# that your AWS IAM Role provides access to paths in `Target`.
|
631
|
+
#
|
632
|
+
# In most cases, you can use this value instead of the scope-down
|
533
633
|
# policy to lock your user down to the designated home directory
|
534
634
|
# ("chroot"). To do this, you can set `Entry` to '/' and set
|
535
635
|
# `Target` to the HomeDirectory parameter value.
|
536
636
|
# @return [Array<Types::HomeDirectoryMapEntry>]
|
537
637
|
#
|
538
638
|
# @!attribute [rw] home_directory_type
|
539
|
-
# The type of landing directory (folder) you mapped for your users
|
540
|
-
#
|
541
|
-
# the user will see the absolute Amazon S3
|
542
|
-
#
|
543
|
-
#
|
544
|
-
#
|
639
|
+
# The type of landing directory (folder) you mapped for your users to
|
640
|
+
# see when they log into the file transfer protocol-enabled server. If
|
641
|
+
# you set it to `PATH`, the user will see the absolute Amazon S3
|
642
|
+
# bucket paths as is in their file transfer protocol clients. If you
|
643
|
+
# set it `LOGICAL`, you will need to provide mappings in the
|
644
|
+
# `HomeDirectoryMappings` for how you want to make Amazon S3 paths
|
645
|
+
# visible to your users.
|
545
646
|
# @return [String]
|
546
647
|
#
|
547
648
|
# @!attribute [rw] policy
|
@@ -549,31 +650,30 @@ module Aws::Transfer
|
|
549
650
|
# @return [String]
|
550
651
|
#
|
551
652
|
# @!attribute [rw] role
|
552
|
-
#
|
553
|
-
#
|
554
|
-
#
|
555
|
-
#
|
556
|
-
#
|
557
|
-
#
|
558
|
-
#
|
653
|
+
# Specifies the IAM role that controls your users' access to your
|
654
|
+
# Amazon S3 bucket. The policies attached to this role will determine
|
655
|
+
# the level of access you want to provide your users when transferring
|
656
|
+
# files into and out of your Amazon S3 bucket or buckets. The IAM role
|
657
|
+
# should also contain a trust relationship that allows a file transfer
|
658
|
+
# protocol-enabled server to access your resources when servicing your
|
659
|
+
# users' transfer requests.
|
559
660
|
# @return [String]
|
560
661
|
#
|
561
662
|
# @!attribute [rw] ssh_public_keys
|
562
|
-
#
|
563
|
-
#
|
663
|
+
# Contains the public key portion of the Secure Shell (SSH) keys
|
664
|
+
# stored for the described user.
|
564
665
|
# @return [Array<Types::SshPublicKey>]
|
565
666
|
#
|
566
667
|
# @!attribute [rw] tags
|
567
|
-
#
|
568
|
-
#
|
569
|
-
# purposes.
|
668
|
+
# Contains the key-value pairs for the user requested. Tag can be used
|
669
|
+
# to search for and group users for a variety of purposes.
|
570
670
|
# @return [Array<Types::Tag>]
|
571
671
|
#
|
572
672
|
# @!attribute [rw] user_name
|
573
|
-
#
|
574
|
-
#
|
575
|
-
#
|
576
|
-
#
|
673
|
+
# The name of the user that was requested to be described. User names
|
674
|
+
# are used for authentication purposes. This is the string that will
|
675
|
+
# be used by your user when they log in to your file transfer
|
676
|
+
# protocol-enabled server.
|
577
677
|
# @return [String]
|
578
678
|
#
|
579
679
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribedUser AWS API Documentation
|
@@ -591,24 +691,53 @@ module Aws::Transfer
|
|
591
691
|
include Aws::Structure
|
592
692
|
end
|
593
693
|
|
594
|
-
# The
|
595
|
-
#
|
694
|
+
# The virtual private cloud (VPC) endpoint settings that are configured
|
695
|
+
# for your file transfer protocol-enabled server. With a VPC endpoint,
|
696
|
+
# you can restrict access to your server and resources only within your
|
697
|
+
# VPC. To control incoming internet traffic, invoke the `UpdateServer`
|
698
|
+
# API and attach an Elastic IP to your server's endpoint.
|
596
699
|
#
|
597
700
|
# @note When making an API call, you may pass EndpointDetails
|
598
701
|
# data as a hash:
|
599
702
|
#
|
600
703
|
# {
|
704
|
+
# address_allocation_ids: ["AddressAllocationId"],
|
705
|
+
# subnet_ids: ["SubnetId"],
|
601
706
|
# vpc_endpoint_id: "VpcEndpointId",
|
707
|
+
# vpc_id: "VpcId",
|
602
708
|
# }
|
603
709
|
#
|
710
|
+
# @!attribute [rw] address_allocation_ids
|
711
|
+
# A list of address allocation IDs that are required to attach an
|
712
|
+
# Elastic IP address to your file transfer protocol-enabled server's
|
713
|
+
# endpoint. This is only valid in the `UpdateServer` API.
|
714
|
+
#
|
715
|
+
# <note markdown="1"> This property can only be use when `EndpointType` is set to `VPC`.
|
716
|
+
#
|
717
|
+
# </note>
|
718
|
+
# @return [Array<String>]
|
719
|
+
#
|
720
|
+
# @!attribute [rw] subnet_ids
|
721
|
+
# A list of subnet IDs that are required to host your file transfer
|
722
|
+
# protocol-enabled server endpoint in your VPC.
|
723
|
+
# @return [Array<String>]
|
724
|
+
#
|
604
725
|
# @!attribute [rw] vpc_endpoint_id
|
605
726
|
# The ID of the VPC endpoint.
|
606
727
|
# @return [String]
|
607
728
|
#
|
729
|
+
# @!attribute [rw] vpc_id
|
730
|
+
# The VPC ID of the VPC in which a file transfer protocol-enabled
|
731
|
+
# server's endpoint will be hosted.
|
732
|
+
# @return [String]
|
733
|
+
#
|
608
734
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/EndpointDetails AWS API Documentation
|
609
735
|
#
|
610
736
|
class EndpointDetails < Struct.new(
|
611
|
-
:
|
737
|
+
:address_allocation_ids,
|
738
|
+
:subnet_ids,
|
739
|
+
:vpc_endpoint_id,
|
740
|
+
:vpc_id)
|
612
741
|
include Aws::Structure
|
613
742
|
end
|
614
743
|
|
@@ -640,8 +769,8 @@ module Aws::Transfer
|
|
640
769
|
end
|
641
770
|
|
642
771
|
# Returns information related to the type of user authentication that is
|
643
|
-
# in use for a server's users. A server
|
644
|
-
# authentication.
|
772
|
+
# in use for a file transfer protocol-enabled server's users. A server
|
773
|
+
# can have only one method of authentication.
|
645
774
|
#
|
646
775
|
# @note When making an API call, you may pass IdentityProviderDetails
|
647
776
|
# data as a hash:
|
@@ -652,13 +781,13 @@ module Aws::Transfer
|
|
652
781
|
# }
|
653
782
|
#
|
654
783
|
# @!attribute [rw] url
|
655
|
-
#
|
656
|
-
#
|
784
|
+
# Contains the location of the service endpoint used to authenticate
|
785
|
+
# users.
|
657
786
|
# @return [String]
|
658
787
|
#
|
659
788
|
# @!attribute [rw] invocation_role
|
660
|
-
#
|
661
|
-
#
|
789
|
+
# Provides the type of `InvocationRole` used to authenticate the user
|
790
|
+
# account.
|
662
791
|
# @return [String]
|
663
792
|
#
|
664
793
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/IdentityProviderDetails AWS API Documentation
|
@@ -679,7 +808,8 @@ module Aws::Transfer
|
|
679
808
|
# }
|
680
809
|
#
|
681
810
|
# @!attribute [rw] server_id
|
682
|
-
# A system-assigned unique identifier for
|
811
|
+
# A system-assigned unique identifier for a file transfer
|
812
|
+
# protocol-enabled server.
|
683
813
|
# @return [String]
|
684
814
|
#
|
685
815
|
# @!attribute [rw] ssh_public_key_body
|
@@ -687,8 +817,8 @@ module Aws::Transfer
|
|
687
817
|
# @return [String]
|
688
818
|
#
|
689
819
|
# @!attribute [rw] user_name
|
690
|
-
# The name of the user account that is assigned to one or more
|
691
|
-
# servers.
|
820
|
+
# The name of the user account that is assigned to one or more file
|
821
|
+
# transfer protocol-enabled servers.
|
692
822
|
# @return [String]
|
693
823
|
#
|
694
824
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ImportSshPublicKeyRequest AWS API Documentation
|
@@ -700,17 +830,18 @@ module Aws::Transfer
|
|
700
830
|
include Aws::Structure
|
701
831
|
end
|
702
832
|
|
703
|
-
#
|
704
|
-
# identifier of the SSH public key associated with
|
705
|
-
# have more than one key on each server that they
|
833
|
+
# Identifies the user, the file transfer protocol-enabled server they
|
834
|
+
# belong to, and the identifier of the SSH public key associated with
|
835
|
+
# that user. A user can have more than one key on each server that they
|
836
|
+
# are associated with.
|
706
837
|
#
|
707
838
|
# @!attribute [rw] server_id
|
708
|
-
# A system-assigned unique identifier for
|
839
|
+
# A system-assigned unique identifier for a file transfer
|
840
|
+
# protocol-enabled server.
|
709
841
|
# @return [String]
|
710
842
|
#
|
711
843
|
# @!attribute [rw] ssh_public_key_id
|
712
|
-
#
|
713
|
-
# was imported.
|
844
|
+
# The name given to a public key by the system that was imported.
|
714
845
|
# @return [String]
|
715
846
|
#
|
716
847
|
# @!attribute [rw] user_name
|
@@ -726,8 +857,8 @@ module Aws::Transfer
|
|
726
857
|
include Aws::Structure
|
727
858
|
end
|
728
859
|
|
729
|
-
# This exception is thrown when an error occurs in the AWS Transfer
|
730
|
-
#
|
860
|
+
# This exception is thrown when an error occurs in the AWS Transfer
|
861
|
+
# Family service.
|
731
862
|
#
|
732
863
|
# @!attribute [rw] message
|
733
864
|
# @return [String]
|
@@ -772,15 +903,15 @@ module Aws::Transfer
|
|
772
903
|
# }
|
773
904
|
#
|
774
905
|
# @!attribute [rw] max_results
|
775
|
-
# Specifies the number of
|
776
|
-
# `ListServers` query.
|
906
|
+
# Specifies the number of file transfer protocol-enabled servers to
|
907
|
+
# return as a response to the `ListServers` query.
|
777
908
|
# @return [Integer]
|
778
909
|
#
|
779
910
|
# @!attribute [rw] next_token
|
780
|
-
# When additional results are obtained from the
|
911
|
+
# When additional results are obtained from the`ListServers` command,
|
781
912
|
# a `NextToken` parameter is returned in the output. You can then pass
|
782
913
|
# the `NextToken` parameter in a subsequent command to continue
|
783
|
-
# listing additional servers.
|
914
|
+
# listing additional file transfer protocol-enabled servers.
|
784
915
|
# @return [String]
|
785
916
|
#
|
786
917
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListServersRequest AWS API Documentation
|
@@ -795,11 +926,11 @@ module Aws::Transfer
|
|
795
926
|
# When you can get additional results from the `ListServers`
|
796
927
|
# operation, a `NextToken` parameter is returned in the output. In a
|
797
928
|
# following command, you can pass in the `NextToken` parameter to
|
798
|
-
# continue listing additional servers.
|
929
|
+
# continue listing additional file transfer protocol-enabled servers.
|
799
930
|
# @return [String]
|
800
931
|
#
|
801
932
|
# @!attribute [rw] servers
|
802
|
-
# An array of servers that were listed.
|
933
|
+
# An array of file transfer protocol-enabled servers that were listed.
|
803
934
|
# @return [Array<Types::ListedServer>]
|
804
935
|
#
|
805
936
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListServersResponse AWS API Documentation
|
@@ -847,7 +978,7 @@ module Aws::Transfer
|
|
847
978
|
end
|
848
979
|
|
849
980
|
# @!attribute [rw] arn
|
850
|
-
#
|
981
|
+
# The ARN you specified to list the tags of.
|
851
982
|
# @return [String]
|
852
983
|
#
|
853
984
|
# @!attribute [rw] next_token
|
@@ -894,8 +1025,8 @@ module Aws::Transfer
|
|
894
1025
|
# @return [String]
|
895
1026
|
#
|
896
1027
|
# @!attribute [rw] server_id
|
897
|
-
# A system-assigned unique identifier for a
|
898
|
-
#
|
1028
|
+
# A system-assigned unique identifier for a file transfer
|
1029
|
+
# protocol-enabled server that has users assigned to it.
|
899
1030
|
# @return [String]
|
900
1031
|
#
|
901
1032
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListUsersRequest AWS API Documentation
|
@@ -915,8 +1046,8 @@ module Aws::Transfer
|
|
915
1046
|
# @return [String]
|
916
1047
|
#
|
917
1048
|
# @!attribute [rw] server_id
|
918
|
-
# A system-assigned unique identifier for
|
919
|
-
# users are assigned to.
|
1049
|
+
# A system-assigned unique identifier for a file transfer
|
1050
|
+
# protocol-enabled server that the users are assigned to.
|
920
1051
|
# @return [String]
|
921
1052
|
#
|
922
1053
|
# @!attribute [rw] users
|
@@ -933,40 +1064,44 @@ module Aws::Transfer
|
|
933
1064
|
include Aws::Structure
|
934
1065
|
end
|
935
1066
|
|
936
|
-
# Returns properties of
|
1067
|
+
# Returns properties of a file transfer protocol-enabled server that was
|
1068
|
+
# specified.
|
937
1069
|
#
|
938
1070
|
# @!attribute [rw] arn
|
939
|
-
# The unique Amazon Resource Name (ARN) for
|
1071
|
+
# The unique Amazon Resource Name (ARN) for a file transfer
|
1072
|
+
# protocol-enabled server to be listed.
|
940
1073
|
# @return [String]
|
941
1074
|
#
|
942
1075
|
# @!attribute [rw] identity_provider_type
|
943
|
-
# The authentication method used to validate a user for
|
944
|
-
# that was specified. This can
|
945
|
-
#
|
946
|
-
# Valid values include
|
1076
|
+
# The authentication method used to validate a user for a file
|
1077
|
+
# transfer protocol-enabled server that was specified. This can
|
1078
|
+
# include Secure Shell (SSH), user name and password combinations, or
|
1079
|
+
# your own custom authentication method. Valid values include
|
1080
|
+
# `SERVICE_MANAGED` or `API_GATEWAY`.
|
947
1081
|
# @return [String]
|
948
1082
|
#
|
949
1083
|
# @!attribute [rw] endpoint_type
|
950
|
-
# The type of VPC endpoint that your
|
951
|
-
# your
|
952
|
-
# accessible over the public internet.
|
1084
|
+
# The type of VPC endpoint that your file transfer protocol-enabled
|
1085
|
+
# server is connected to. If your server is connected to a VPC
|
1086
|
+
# endpoint, your server isn't accessible over the public internet.
|
953
1087
|
# @return [String]
|
954
1088
|
#
|
955
1089
|
# @!attribute [rw] logging_role
|
956
|
-
# The AWS Identity and Access Management entity that allows
|
957
|
-
# to turn on Amazon CloudWatch
|
1090
|
+
# The AWS Identity and Access Management (IAM) entity that allows a
|
1091
|
+
# file transfer protocol-enabled server to turn on Amazon CloudWatch
|
1092
|
+
# logging.
|
958
1093
|
# @return [String]
|
959
1094
|
#
|
960
1095
|
# @!attribute [rw] server_id
|
961
|
-
#
|
962
|
-
# servers that were listed.
|
1096
|
+
# The unique system assigned identifier for a file transfer
|
1097
|
+
# protocol-enabled servers that were listed.
|
963
1098
|
# @return [String]
|
964
1099
|
#
|
965
1100
|
# @!attribute [rw] state
|
966
|
-
#
|
967
|
-
# server that was described. A value of `ONLINE
|
968
|
-
# the server can accept jobs and transfer files. A `State` value
|
969
|
-
# `OFFLINE` means that the server cannot perform file transfer
|
1101
|
+
# Describes the condition of a file transfer protocol-enabled server
|
1102
|
+
# for the server that was described. A value of `ONLINE` indicates
|
1103
|
+
# that the server can accept jobs and transfer files. A `State` value
|
1104
|
+
# of `OFFLINE` means that the server cannot perform file transfer
|
970
1105
|
# operations.
|
971
1106
|
#
|
972
1107
|
# The states of `STARTING` and `STOPPING` indicate that the server is
|
@@ -976,8 +1111,8 @@ module Aws::Transfer
|
|
976
1111
|
# @return [String]
|
977
1112
|
#
|
978
1113
|
# @!attribute [rw] user_count
|
979
|
-
#
|
980
|
-
#
|
1114
|
+
# A numeric value that indicates the number of users that are assigned
|
1115
|
+
# to a file transfer protocol-enabled server you specified with the
|
981
1116
|
# `ServerId`.
|
982
1117
|
# @return [Integer]
|
983
1118
|
#
|
@@ -997,35 +1132,34 @@ module Aws::Transfer
|
|
997
1132
|
# Returns properties of the user that you specify.
|
998
1133
|
#
|
999
1134
|
# @!attribute [rw] arn
|
1000
|
-
#
|
1001
|
-
#
|
1135
|
+
# The unique Amazon Resource Name (ARN) for the user that you want to
|
1136
|
+
# learn about.
|
1002
1137
|
# @return [String]
|
1003
1138
|
#
|
1004
1139
|
# @!attribute [rw] home_directory
|
1005
|
-
#
|
1006
|
-
#
|
1140
|
+
# Specifies the location that files are written to or read from an
|
1141
|
+
# Amazon S3 bucket for the user you specify by their ARN.
|
1007
1142
|
# @return [String]
|
1008
1143
|
#
|
1009
1144
|
# @!attribute [rw] home_directory_type
|
1010
1145
|
# The type of landing directory (folder) you mapped for your users'
|
1011
1146
|
# home directory. If you set it to `PATH`, the user will see the
|
1012
|
-
# absolute Amazon S3 bucket paths as is in their
|
1013
|
-
# set it `LOGICAL`, you will need to provide
|
1014
|
-
# `HomeDirectoryMappings` for how you want to make
|
1015
|
-
# your
|
1147
|
+
# absolute Amazon S3 bucket paths as is in their file transfer
|
1148
|
+
# protocol clients. If you set it `LOGICAL`, you will need to provide
|
1149
|
+
# mappings in the `HomeDirectoryMappings` for how you want to make
|
1150
|
+
# Amazon S3 paths visible to your users.
|
1016
1151
|
# @return [String]
|
1017
1152
|
#
|
1018
1153
|
# @!attribute [rw] role
|
1019
1154
|
# The role in use by this user. A *role* is an AWS Identity and Access
|
1020
|
-
# Management (IAM) entity that, in this case, allows
|
1021
|
-
# to act on a user's behalf. It allows the
|
1022
|
-
# trust relationship that enables that user to
|
1023
|
-
# to their Amazon S3 bucket.
|
1155
|
+
# Management (IAM) entity that, in this case, allows a file transfer
|
1156
|
+
# protocol-enabled server to act on a user's behalf. It allows the
|
1157
|
+
# server to inherit the trust relationship that enables that user to
|
1158
|
+
# perform file operations to their Amazon S3 bucket.
|
1024
1159
|
# @return [String]
|
1025
1160
|
#
|
1026
1161
|
# @!attribute [rw] ssh_public_key_count
|
1027
|
-
#
|
1028
|
-
# specified.
|
1162
|
+
# The number of SSH public keys stored for the user you specified.
|
1029
1163
|
# @return [Integer]
|
1030
1164
|
#
|
1031
1165
|
# @!attribute [rw] user_name
|
@@ -1066,7 +1200,7 @@ module Aws::Transfer
|
|
1066
1200
|
end
|
1067
1201
|
|
1068
1202
|
# This exception is thrown when a resource is not found by the AWS
|
1069
|
-
# Transfer
|
1203
|
+
# Transfer Family service.
|
1070
1204
|
#
|
1071
1205
|
# @!attribute [rw] message
|
1072
1206
|
# @return [String]
|
@@ -1086,8 +1220,8 @@ module Aws::Transfer
|
|
1086
1220
|
include Aws::Structure
|
1087
1221
|
end
|
1088
1222
|
|
1089
|
-
# The request has failed because the AWS Transfer
|
1090
|
-
#
|
1223
|
+
# The request has failed because the AWS Transfer Family service is not
|
1224
|
+
# available.
|
1091
1225
|
#
|
1092
1226
|
# @!attribute [rw] message
|
1093
1227
|
# @return [String]
|
@@ -1100,11 +1234,11 @@ module Aws::Transfer
|
|
1100
1234
|
end
|
1101
1235
|
|
1102
1236
|
# Provides information about the public Secure Shell (SSH) key that is
|
1103
|
-
# associated with a user account for
|
1104
|
-
# `ServerId`). The information
|
1105
|
-
#
|
1106
|
-
#
|
1107
|
-
# a specific
|
1237
|
+
# associated with a user account for the specific file transfer
|
1238
|
+
# protocol-enabled server (as identified by `ServerId`). The information
|
1239
|
+
# returned includes the date the key was imported, the public key
|
1240
|
+
# contents, and the public key ID. A user can store more than one SSH
|
1241
|
+
# public key associated with their user name on a specific server.
|
1108
1242
|
#
|
1109
1243
|
# @!attribute [rw] date_imported
|
1110
1244
|
# The date that the public key was added to the user account.
|
@@ -1136,8 +1270,8 @@ module Aws::Transfer
|
|
1136
1270
|
# }
|
1137
1271
|
#
|
1138
1272
|
# @!attribute [rw] server_id
|
1139
|
-
# A system-assigned unique identifier for
|
1140
|
-
# start.
|
1273
|
+
# A system-assigned unique identifier for a file transfer
|
1274
|
+
# protocol-enabled server that you start.
|
1141
1275
|
# @return [String]
|
1142
1276
|
#
|
1143
1277
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/StartServerRequest AWS API Documentation
|
@@ -1155,8 +1289,8 @@ module Aws::Transfer
|
|
1155
1289
|
# }
|
1156
1290
|
#
|
1157
1291
|
# @!attribute [rw] server_id
|
1158
|
-
# A system-assigned unique identifier for
|
1159
|
-
# stopped.
|
1292
|
+
# A system-assigned unique identifier for a file transfer
|
1293
|
+
# protocol-enabled server that you stopped.
|
1160
1294
|
# @return [String]
|
1161
1295
|
#
|
1162
1296
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/StopServerRequest AWS API Documentation
|
@@ -1186,8 +1320,8 @@ module Aws::Transfer
|
|
1186
1320
|
# @return [String]
|
1187
1321
|
#
|
1188
1322
|
# @!attribute [rw] value
|
1189
|
-
#
|
1190
|
-
#
|
1323
|
+
# Contains one or more values that you assigned to the key name you
|
1324
|
+
# create.
|
1191
1325
|
# @return [String]
|
1192
1326
|
#
|
1193
1327
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/Tag AWS API Documentation
|
@@ -1237,27 +1371,42 @@ module Aws::Transfer
|
|
1237
1371
|
# server_id: "ServerId", # required
|
1238
1372
|
# user_name: "UserName", # required
|
1239
1373
|
# user_password: "UserPassword",
|
1374
|
+
# server_protocol: "SFTP", # accepts SFTP, FTP, FTPS
|
1240
1375
|
# }
|
1241
1376
|
#
|
1242
1377
|
# @!attribute [rw] server_id
|
1243
|
-
# A system-assigned identifier for a specific
|
1244
|
-
#
|
1378
|
+
# A system-assigned identifier for a specific file transfer
|
1379
|
+
# protocol-enabled server. That server's user authentication method
|
1380
|
+
# is tested with a user name and password.
|
1245
1381
|
# @return [String]
|
1246
1382
|
#
|
1247
1383
|
# @!attribute [rw] user_name
|
1248
|
-
#
|
1384
|
+
# The name of the user account to be tested.
|
1249
1385
|
# @return [String]
|
1250
1386
|
#
|
1251
1387
|
# @!attribute [rw] user_password
|
1252
1388
|
# The password of the user account to be tested.
|
1253
1389
|
# @return [String]
|
1254
1390
|
#
|
1391
|
+
# @!attribute [rw] server_protocol
|
1392
|
+
# The type of file transfer protocol to be tested.
|
1393
|
+
#
|
1394
|
+
# The available protocols are:
|
1395
|
+
#
|
1396
|
+
# * Secure Shell (SSH) File Transfer Protocol (SFTP)
|
1397
|
+
#
|
1398
|
+
# * File Transfer Protocol Secure (FTPS)
|
1399
|
+
#
|
1400
|
+
# * File Transfer Protocol (FTP)
|
1401
|
+
# @return [String]
|
1402
|
+
#
|
1255
1403
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/TestIdentityProviderRequest AWS API Documentation
|
1256
1404
|
#
|
1257
1405
|
class TestIdentityProviderRequest < Struct.new(
|
1258
1406
|
:server_id,
|
1259
1407
|
:user_name,
|
1260
|
-
:user_password
|
1408
|
+
:user_password,
|
1409
|
+
:server_protocol)
|
1261
1410
|
include Aws::Structure
|
1262
1411
|
end
|
1263
1412
|
|
@@ -1310,9 +1459,9 @@ module Aws::Transfer
|
|
1310
1459
|
# }
|
1311
1460
|
#
|
1312
1461
|
# @!attribute [rw] arn
|
1313
|
-
#
|
1314
|
-
#
|
1315
|
-
#
|
1462
|
+
# The value of the resource that will have the tag removed. An Amazon
|
1463
|
+
# Resource Name (ARN) is an identifier for a specific AWS resource,
|
1464
|
+
# such as a server, user, or role.
|
1316
1465
|
# @return [String]
|
1317
1466
|
#
|
1318
1467
|
# @!attribute [rw] tag_keys
|
@@ -1333,30 +1482,43 @@ module Aws::Transfer
|
|
1333
1482
|
# data as a hash:
|
1334
1483
|
#
|
1335
1484
|
# {
|
1485
|
+
# certificate: "Certificate",
|
1336
1486
|
# endpoint_details: {
|
1487
|
+
# address_allocation_ids: ["AddressAllocationId"],
|
1488
|
+
# subnet_ids: ["SubnetId"],
|
1337
1489
|
# vpc_endpoint_id: "VpcEndpointId",
|
1490
|
+
# vpc_id: "VpcId",
|
1338
1491
|
# },
|
1339
|
-
# endpoint_type: "PUBLIC", # accepts PUBLIC, VPC_ENDPOINT
|
1492
|
+
# endpoint_type: "PUBLIC", # accepts PUBLIC, VPC, VPC_ENDPOINT
|
1340
1493
|
# host_key: "HostKey",
|
1341
1494
|
# identity_provider_details: {
|
1342
1495
|
# url: "Url",
|
1343
1496
|
# invocation_role: "Role",
|
1344
1497
|
# },
|
1345
1498
|
# logging_role: "NullableRole",
|
1499
|
+
# protocols: ["SFTP"], # accepts SFTP, FTP, FTPS
|
1346
1500
|
# server_id: "ServerId", # required
|
1347
1501
|
# }
|
1348
1502
|
#
|
1503
|
+
# @!attribute [rw] certificate
|
1504
|
+
# The Amazon Resource Name (ARN) of the AWS Certificate Manager (ACM)
|
1505
|
+
# certificate. Required when `Protocols` is set to `FTPS`.
|
1506
|
+
# @return [String]
|
1507
|
+
#
|
1349
1508
|
# @!attribute [rw] endpoint_details
|
1350
1509
|
# The virtual private cloud (VPC) endpoint settings that are
|
1351
|
-
# configured for your
|
1352
|
-
#
|
1510
|
+
# configured for your file transfer protocol-enabled server. With a
|
1511
|
+
# VPC endpoint, you can restrict access to your server to resources
|
1512
|
+
# only within your VPC. To control incoming internet traffic, you will
|
1513
|
+
# need to associate one or more Elastic IP addresses with your
|
1514
|
+
# server's endpoint.
|
1353
1515
|
# @return [Types::EndpointDetails]
|
1354
1516
|
#
|
1355
1517
|
# @!attribute [rw] endpoint_type
|
1356
|
-
# The type of endpoint that you want your
|
1357
|
-
#
|
1358
|
-
#
|
1359
|
-
# isn't accessible over the public internet.
|
1518
|
+
# The type of endpoint that you want your file transfer
|
1519
|
+
# protocol-enabled server to connect to. You can choose to connect to
|
1520
|
+
# the public internet or a VPC endpoint. With a VPC endpoint, your
|
1521
|
+
# server isn't accessible over the public internet.
|
1360
1522
|
# @return [String]
|
1361
1523
|
#
|
1362
1524
|
# @!attribute [rw] host_key
|
@@ -1364,46 +1526,66 @@ module Aws::Transfer
|
|
1364
1526
|
# my-new-server-key`.
|
1365
1527
|
#
|
1366
1528
|
# If you aren't planning to migrate existing users from an existing
|
1367
|
-
#
|
1368
|
-
# Accidentally changing a server's host key can be
|
1529
|
+
# file transfer protocol-enabled server to a new server, don't update
|
1530
|
+
# the host key. Accidentally changing a server's host key can be
|
1531
|
+
# disruptive.
|
1532
|
+
#
|
1533
|
+
# For more information, see [Changing the Host Key for Your AWS
|
1534
|
+
# Transfer Family Server][1] in the *AWS Transfer Family User Guide*.
|
1369
1535
|
#
|
1370
|
-
#
|
1371
|
-
#
|
1372
|
-
#
|
1536
|
+
#
|
1537
|
+
#
|
1538
|
+
# [1]: https://docs.aws.amazon.com/transfer/latest/userguide/configuring-servers.html#change-host-key
|
1373
1539
|
# @return [String]
|
1374
1540
|
#
|
1375
1541
|
# @!attribute [rw] identity_provider_details
|
1376
|
-
#
|
1377
|
-
#
|
1378
|
-
# method.
|
1542
|
+
# An array containing all of the information required to call a
|
1543
|
+
# customer's authentication API method.
|
1379
1544
|
# @return [Types::IdentityProviderDetails]
|
1380
1545
|
#
|
1381
1546
|
# @!attribute [rw] logging_role
|
1382
|
-
#
|
1383
|
-
#
|
1384
|
-
#
|
1547
|
+
# Changes the AWS Identity and Access Management (IAM) role that
|
1548
|
+
# allows Amazon S3 events to be logged in Amazon CloudWatch, turning
|
1549
|
+
# logging on or off.
|
1385
1550
|
# @return [String]
|
1386
1551
|
#
|
1552
|
+
# @!attribute [rw] protocols
|
1553
|
+
# Specifies the file transfer protocol or protocols over which your
|
1554
|
+
# file transfer protocol client can connect to your server's
|
1555
|
+
# endpoint. The available protocols are:
|
1556
|
+
#
|
1557
|
+
# * Secure Shell (SSH) File Transfer Protocol (SFTP): File transfer
|
1558
|
+
# over SSH
|
1559
|
+
#
|
1560
|
+
# * File Transfer Protocol Secure (FTPS): File transfer with TLS
|
1561
|
+
# encryption
|
1562
|
+
#
|
1563
|
+
# * File Transfer Protocol (FTP): Unencrypted file transfer
|
1564
|
+
# @return [Array<String>]
|
1565
|
+
#
|
1387
1566
|
# @!attribute [rw] server_id
|
1388
|
-
# A system-assigned unique identifier for
|
1389
|
-
# the user account is assigned
|
1567
|
+
# A system-assigned unique identifier for a file transfer
|
1568
|
+
# protocol-enabled server instance that the user account is assigned
|
1569
|
+
# to.
|
1390
1570
|
# @return [String]
|
1391
1571
|
#
|
1392
1572
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateServerRequest AWS API Documentation
|
1393
1573
|
#
|
1394
1574
|
class UpdateServerRequest < Struct.new(
|
1575
|
+
:certificate,
|
1395
1576
|
:endpoint_details,
|
1396
1577
|
:endpoint_type,
|
1397
1578
|
:host_key,
|
1398
1579
|
:identity_provider_details,
|
1399
1580
|
:logging_role,
|
1581
|
+
:protocols,
|
1400
1582
|
:server_id)
|
1401
1583
|
include Aws::Structure
|
1402
1584
|
end
|
1403
1585
|
|
1404
1586
|
# @!attribute [rw] server_id
|
1405
|
-
# A system-assigned unique identifier for
|
1406
|
-
# account is assigned to.
|
1587
|
+
# A system-assigned unique identifier for a file transfer
|
1588
|
+
# protocol-enabled server that the user account is assigned to.
|
1407
1589
|
# @return [String]
|
1408
1590
|
#
|
1409
1591
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateServerResponse AWS API Documentation
|
@@ -1432,39 +1614,52 @@ module Aws::Transfer
|
|
1432
1614
|
# }
|
1433
1615
|
#
|
1434
1616
|
# @!attribute [rw] home_directory
|
1435
|
-
#
|
1436
|
-
#
|
1617
|
+
# Specifies the landing directory (folder) for a user when they log in
|
1618
|
+
# to the file transfer protocol-enabled server using their file
|
1619
|
+
# transfer protocol client.
|
1437
1620
|
#
|
1438
|
-
# An example is
|
1621
|
+
# An example is `your-Amazon-S3-bucket-name>/home/username`.
|
1439
1622
|
# @return [String]
|
1440
1623
|
#
|
1441
1624
|
# @!attribute [rw] home_directory_type
|
1442
1625
|
# The type of landing directory (folder) you want your users' home
|
1443
|
-
# directory to be when they log into the
|
1444
|
-
# `PATH`, the user will see
|
1445
|
-
#
|
1446
|
-
#
|
1447
|
-
#
|
1626
|
+
# directory to be when they log into the file transfer
|
1627
|
+
# protocol-enabled server. If you set it to `PATH`, the user will see
|
1628
|
+
# the absolute Amazon S3 bucket paths as is in their file transfer
|
1629
|
+
# protocol clients. If you set it `LOGICAL`, you will need to provide
|
1630
|
+
# mappings in the `HomeDirectoryMappings` for how you want to make
|
1631
|
+
# Amazon S3 paths visible to your users.
|
1448
1632
|
# @return [String]
|
1449
1633
|
#
|
1450
1634
|
# @!attribute [rw] home_directory_mappings
|
1451
|
-
# Logical directory mappings that specify what S3 paths and
|
1452
|
-
# should be visible to your user and how you want to make them
|
1635
|
+
# Logical directory mappings that specify what Amazon S3 paths and
|
1636
|
+
# keys should be visible to your user and how you want to make them
|
1453
1637
|
# visible. You will need to specify the "`Entry`" and "`Target`"
|
1454
1638
|
# pair, where `Entry` shows how the path is made visible and `Target`
|
1455
|
-
# is the actual S3 path. If you only specify a target, it will
|
1456
|
-
# displayed as is. You will need to also make sure that your AWS
|
1457
|
-
# Role provides access to paths in `Target`. The following is an
|
1639
|
+
# is the actual Amazon S3 path. If you only specify a target, it will
|
1640
|
+
# be displayed as is. You will need to also make sure that your AWS
|
1641
|
+
# IAM Role provides access to paths in `Target`. The following is an
|
1458
1642
|
# example.
|
1459
1643
|
#
|
1460
1644
|
# `'[ "/bucket2/documentation", \{ "Entry":
|
1461
1645
|
# "your-personal-report.pdf", "Target":
|
1462
1646
|
# "/bucket3/customized-reports/$\{transfer:UserName\}.pdf" \} ]'`
|
1463
1647
|
#
|
1464
|
-
# In most cases, you can use this value instead of the scope
|
1648
|
+
# In most cases, you can use this value instead of the scope-down
|
1465
1649
|
# policy to lock your user down to the designated home directory
|
1466
1650
|
# ("chroot"). To do this, you can set `Entry` to '/' and set
|
1467
1651
|
# `Target` to the HomeDirectory parameter value.
|
1652
|
+
#
|
1653
|
+
# <note markdown="1"> If the target of a logical directory entry does not exist in Amazon
|
1654
|
+
# S3, the entry will be ignored. As a workaround, you can use the
|
1655
|
+
# Amazon S3 api to create 0 byte objects as place holders for your
|
1656
|
+
# directory. If using the CLI, use the `s3api` call instead of `s3` so
|
1657
|
+
# you can use the put-object operation. For example, you use the
|
1658
|
+
# following: `aws s3api put-object --bucket bucketname --key
|
1659
|
+
# path/to/folder/`. Make sure that the end of the key name ends in a /
|
1660
|
+
# for it to be considered a folder.
|
1661
|
+
#
|
1662
|
+
# </note>
|
1468
1663
|
# @return [Array<Types::HomeDirectoryMapEntry>]
|
1469
1664
|
#
|
1470
1665
|
# @!attribute [rw] policy
|
@@ -1475,44 +1670,48 @@ module Aws::Transfer
|
|
1475
1670
|
# include `$\{Transfer:UserName\}`, `$\{Transfer:HomeDirectory\}`, and
|
1476
1671
|
# `$\{Transfer:HomeBucket\}`.
|
1477
1672
|
#
|
1478
|
-
# <note markdown="1"> For scope-down policies, AWS Transfer
|
1479
|
-
#
|
1480
|
-
#
|
1481
|
-
#
|
1673
|
+
# <note markdown="1"> For scope-down policies, AWS Transfer Family stores the policy as a
|
1674
|
+
# JSON blob, instead of the Amazon Resource Name (ARN) of the policy.
|
1675
|
+
# You save the policy as a JSON blob and pass it in the `Policy`
|
1676
|
+
# argument.
|
1482
1677
|
#
|
1483
|
-
# For an example of a scope-down policy, see
|
1484
|
-
#
|
1485
|
-
# a Scope-Down Policy.
|
1678
|
+
# For an example of a scope-down policy, see [Creating a Scope-Down
|
1679
|
+
# Policy][1].
|
1486
1680
|
#
|
1487
|
-
# For more information, see
|
1488
|
-
#
|
1489
|
-
# in the *AWS Security Token Service API Reference*.
|
1681
|
+
# For more information, see [AssumeRole][2] in the *AWS Security Token
|
1682
|
+
# Service API Reference*.
|
1490
1683
|
#
|
1491
1684
|
# </note>
|
1685
|
+
#
|
1686
|
+
#
|
1687
|
+
#
|
1688
|
+
# [1]: https://docs.aws.amazon.com/transfer/latest/userguide/users.html#users-policies-scope-down
|
1689
|
+
# [2]: https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html
|
1492
1690
|
# @return [String]
|
1493
1691
|
#
|
1494
1692
|
# @!attribute [rw] role
|
1495
|
-
# The IAM role that controls your
|
1693
|
+
# The IAM role that controls your users' access to your Amazon S3
|
1496
1694
|
# bucket. The policies attached to this role will determine the level
|
1497
1695
|
# of access you want to provide your users when transferring files
|
1498
1696
|
# into and out of your Amazon S3 bucket or buckets. The IAM role
|
1499
|
-
# should also contain a trust relationship that allows the
|
1500
|
-
#
|
1501
|
-
# servicing your
|
1697
|
+
# should also contain a trust relationship that allows the file
|
1698
|
+
# transfer protocol-enabled server to access your resources when
|
1699
|
+
# servicing your users' transfer requests.
|
1502
1700
|
# @return [String]
|
1503
1701
|
#
|
1504
1702
|
# @!attribute [rw] server_id
|
1505
|
-
# A system-assigned unique identifier for
|
1506
|
-
# the user account is assigned
|
1703
|
+
# A system-assigned unique identifier for a file transfer
|
1704
|
+
# protocol-enabled server instance that the user account is assigned
|
1705
|
+
# to.
|
1507
1706
|
# @return [String]
|
1508
1707
|
#
|
1509
1708
|
# @!attribute [rw] user_name
|
1510
|
-
# A unique string that identifies a user and is associated with a
|
1511
|
-
# server as specified by the `ServerId`.
|
1512
|
-
# be used by your user when they log in
|
1513
|
-
# name is a minimum of 3 and a maximum of 32
|
1514
|
-
# following are valid characters: a-z, A-Z, 0-9,
|
1515
|
-
# hyphen. The user name can't start with a hyphen.
|
1709
|
+
# A unique string that identifies a user and is associated with a file
|
1710
|
+
# transfer protocol-enabled server as specified by the `ServerId`.
|
1711
|
+
# This is the string that will be used by your user when they log in
|
1712
|
+
# to your server. This user name is a minimum of 3 and a maximum of 32
|
1713
|
+
# characters long. The following are valid characters: a-z, A-Z, 0-9,
|
1714
|
+
# underscore, and hyphen. The user name can't start with a hyphen.
|
1516
1715
|
# @return [String]
|
1517
1716
|
#
|
1518
1717
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateUserRequest AWS API Documentation
|
@@ -1528,17 +1727,19 @@ module Aws::Transfer
|
|
1528
1727
|
include Aws::Structure
|
1529
1728
|
end
|
1530
1729
|
|
1531
|
-
# `UpdateUserResponse` returns the user name and
|
1532
|
-
# the request to update a user's
|
1730
|
+
# `UpdateUserResponse` returns the user name and file transfer
|
1731
|
+
# protocol-enabled server identifier for the request to update a user's
|
1732
|
+
# properties.
|
1533
1733
|
#
|
1534
1734
|
# @!attribute [rw] server_id
|
1535
|
-
# A system-assigned unique identifier for
|
1536
|
-
# the user account is assigned
|
1735
|
+
# A system-assigned unique identifier for a file transfer
|
1736
|
+
# protocol-enabled server instance that the user account is assigned
|
1737
|
+
# to.
|
1537
1738
|
# @return [String]
|
1538
1739
|
#
|
1539
1740
|
# @!attribute [rw] user_name
|
1540
|
-
# The unique identifier for a user that is assigned to
|
1541
|
-
# instance that was specified in the request.
|
1741
|
+
# The unique identifier for a user that is assigned to a file transfer
|
1742
|
+
# protocol-enabled server instance that was specified in the request.
|
1542
1743
|
# @return [String]
|
1543
1744
|
#
|
1544
1745
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateUserResponse AWS API Documentation
|