aws-sdk-transfer 1.15.0 → 1.20.0
Sign up to get free protection for your applications and to get access to all the features.
- 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
|