aws-sdk-transfer 1.30.0 → 1.35.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +188 -0
- data/LICENSE.txt +202 -0
- data/VERSION +1 -0
- data/lib/aws-sdk-transfer.rb +3 -3
- data/lib/aws-sdk-transfer/client.rb +756 -166
- data/lib/aws-sdk-transfer/client_api.rb +159 -1
- data/lib/aws-sdk-transfer/errors.rb +1 -1
- data/lib/aws-sdk-transfer/resource.rb +1 -1
- data/lib/aws-sdk-transfer/types.rb +1174 -223
- metadata +9 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 327c4deee603e20339847e569914d2e06c37fffa2701637750817ba22617e4db
|
4
|
+
data.tar.gz: b237e93d727370b0c00b8f9cd13e909b1c8e989df6820bd752698f5e501909b9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6927065160c49fdd282dce11d1e9f81ab2f3f1fae359a37244ae6c188ccf910adc93b02e2085654c9dd128bfeb9fc6cd807207cbfb5dd920002816298cb8fa8d
|
7
|
+
data.tar.gz: 0e70a969236064cf90f1e5d6a8d0ac51162f38457db4f47e9733fcecf4c3f42f0e81461be909f36079b27d3ab10a6b2793486331f0aa2c6ed17378004b1923e5
|
data/CHANGELOG.md
ADDED
@@ -0,0 +1,188 @@
|
|
1
|
+
Unreleased Changes
|
2
|
+
------------------
|
3
|
+
|
4
|
+
1.35.0 (2021-06-24)
|
5
|
+
------------------
|
6
|
+
|
7
|
+
* Feature - Customers can successfully use legacy clients with Transfer Family endpoints enabled for FTPS and FTP behind routers, firewalls, and load balancers by providing a Custom IP address used for data channel communication.
|
8
|
+
|
9
|
+
1.34.0 (2021-06-09)
|
10
|
+
------------------
|
11
|
+
|
12
|
+
* Feature - Documentation updates for the AWS Transfer Family service.
|
13
|
+
|
14
|
+
1.33.0 (2021-05-25)
|
15
|
+
------------------
|
16
|
+
|
17
|
+
* Feature - AWS Transfer Family customers can now use AWS Managed Active Directory or AD Connector to authenticate their end users, enabling seamless migration of file transfer workflows that rely on AD authentication, without changing end users' credentials or needing a custom authorizer.
|
18
|
+
|
19
|
+
1.32.0 (2021-03-10)
|
20
|
+
------------------
|
21
|
+
|
22
|
+
* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
|
23
|
+
|
24
|
+
1.31.0 (2021-02-25)
|
25
|
+
------------------
|
26
|
+
|
27
|
+
* Feature - Corrected the upper limit for TestIdentityProvider input lengths to 1024 characters
|
28
|
+
|
29
|
+
1.30.0 (2021-02-02)
|
30
|
+
------------------
|
31
|
+
|
32
|
+
* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
|
33
|
+
|
34
|
+
1.29.0 (2021-01-06)
|
35
|
+
------------------
|
36
|
+
|
37
|
+
* Feature - This release adds support for Amazon EFS, so customers can transfer files over SFTP, FTPS and FTP in and out of Amazon S3 as well as Amazon EFS.
|
38
|
+
|
39
|
+
1.28.0 (2020-10-15)
|
40
|
+
------------------
|
41
|
+
|
42
|
+
* Feature - Add support to associate VPC Security Groups at server creation.
|
43
|
+
|
44
|
+
1.27.0 (2020-09-30)
|
45
|
+
------------------
|
46
|
+
|
47
|
+
* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
|
48
|
+
|
49
|
+
1.26.0 (2020-09-15)
|
50
|
+
------------------
|
51
|
+
|
52
|
+
* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
|
53
|
+
|
54
|
+
1.25.0 (2020-08-25)
|
55
|
+
------------------
|
56
|
+
|
57
|
+
* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
|
58
|
+
|
59
|
+
1.24.0 (2020-08-12)
|
60
|
+
------------------
|
61
|
+
|
62
|
+
* Feature - Adds security policies to control cryptographic algorithms advertised by your server, additional characters in usernames and length increase, and FIPS compliant endpoints in the US and Canada regions.
|
63
|
+
|
64
|
+
1.23.0 (2020-06-23)
|
65
|
+
------------------
|
66
|
+
|
67
|
+
* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
|
68
|
+
|
69
|
+
1.22.1 (2020-06-11)
|
70
|
+
------------------
|
71
|
+
|
72
|
+
* Issue - Republish previous version with correct dependency on `aws-sdk-core`.
|
73
|
+
|
74
|
+
1.22.0 (2020-06-10)
|
75
|
+
------------------
|
76
|
+
|
77
|
+
* Issue - This version has been yanked. (#2327).
|
78
|
+
* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
|
79
|
+
|
80
|
+
1.21.0 (2020-06-09)
|
81
|
+
------------------
|
82
|
+
|
83
|
+
* Feature - This release updates the API so customers can test use of Source IP to allow, deny or limit access to data in their S3 buckets after integrating their identity provider.
|
84
|
+
|
85
|
+
1.20.0 (2020-05-28)
|
86
|
+
------------------
|
87
|
+
|
88
|
+
* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
|
89
|
+
|
90
|
+
1.19.0 (2020-05-07)
|
91
|
+
------------------
|
92
|
+
|
93
|
+
* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
|
94
|
+
|
95
|
+
1.18.0 (2020-04-23)
|
96
|
+
------------------
|
97
|
+
|
98
|
+
* Feature - This release adds support for transfers over FTPS and FTP in and out of Amazon S3, which makes it easy to migrate File Transfer Protocol over SSL (FTPS) and FTP workloads to AWS, in addition to the existing support for Secure File Transfer Protocol (SFTP).
|
99
|
+
|
100
|
+
1.17.0 (2020-03-09)
|
101
|
+
------------------
|
102
|
+
|
103
|
+
* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
|
104
|
+
|
105
|
+
1.16.0 (2020-01-10)
|
106
|
+
------------------
|
107
|
+
|
108
|
+
* Feature - This release introduces a new endpoint type that allows you to attach Elastic IP addresses from your AWS account with your server's endpoint directly and whitelist access to your server by client's internet IP address(es) using VPC Security Groups.
|
109
|
+
|
110
|
+
1.15.0 (2019-10-28)
|
111
|
+
------------------
|
112
|
+
|
113
|
+
* Feature - This release adds logical directories support to your AWS SFTP server endpoint, so you can now create logical directory structures mapped to Amazon Simple Storage Service (Amazon S3) bucket paths for users created and stored within the service. Amazon S3 bucket names and paths can now be hidden from AWS SFTP users, providing an additional level of privacy to meet security requirements. You can lock down your SFTP users' access to designated folders (commonly referred to as 'chroot'), and simplify complex folder structures for data distribution through SFTP without replicating files across multiple users.
|
114
|
+
|
115
|
+
1.14.0 (2019-10-23)
|
116
|
+
------------------
|
117
|
+
|
118
|
+
* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
|
119
|
+
|
120
|
+
1.13.0 (2019-08-20)
|
121
|
+
------------------
|
122
|
+
|
123
|
+
* Feature - New field in response of TestIdentityProvider
|
124
|
+
|
125
|
+
1.12.0 (2019-07-25)
|
126
|
+
------------------
|
127
|
+
|
128
|
+
* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
|
129
|
+
|
130
|
+
1.11.0 (2019-07-01)
|
131
|
+
------------------
|
132
|
+
|
133
|
+
* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
|
134
|
+
|
135
|
+
1.10.0 (2019-06-17)
|
136
|
+
------------------
|
137
|
+
|
138
|
+
* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
|
139
|
+
|
140
|
+
1.9.0 (2019-05-21)
|
141
|
+
------------------
|
142
|
+
|
143
|
+
* Feature - API update.
|
144
|
+
|
145
|
+
1.8.0 (2019-05-15)
|
146
|
+
------------------
|
147
|
+
|
148
|
+
* Feature - API update.
|
149
|
+
|
150
|
+
1.7.0 (2019-05-14)
|
151
|
+
------------------
|
152
|
+
|
153
|
+
* Feature - API update.
|
154
|
+
|
155
|
+
1.6.0 (2019-04-29)
|
156
|
+
------------------
|
157
|
+
|
158
|
+
* Feature - API update.
|
159
|
+
|
160
|
+
1.5.0 (2019-03-27)
|
161
|
+
------------------
|
162
|
+
|
163
|
+
* Feature - API update.
|
164
|
+
|
165
|
+
1.4.0 (2019-03-21)
|
166
|
+
------------------
|
167
|
+
|
168
|
+
* Feature - API update.
|
169
|
+
|
170
|
+
1.3.0 (2019-03-18)
|
171
|
+
------------------
|
172
|
+
|
173
|
+
* Feature - API update.
|
174
|
+
|
175
|
+
1.2.0 (2019-03-14)
|
176
|
+
------------------
|
177
|
+
|
178
|
+
* Feature - API update.
|
179
|
+
|
180
|
+
1.1.0 (2019-02-21)
|
181
|
+
------------------
|
182
|
+
|
183
|
+
* Feature - API update.
|
184
|
+
|
185
|
+
1.0.0 (2018-11-26)
|
186
|
+
------------------
|
187
|
+
|
188
|
+
* Feature - Initial release of `aws-sdk-transfer`.
|
data/LICENSE.txt
ADDED
@@ -0,0 +1,202 @@
|
|
1
|
+
|
2
|
+
Apache License
|
3
|
+
Version 2.0, January 2004
|
4
|
+
http://www.apache.org/licenses/
|
5
|
+
|
6
|
+
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
7
|
+
|
8
|
+
1. Definitions.
|
9
|
+
|
10
|
+
"License" shall mean the terms and conditions for use, reproduction,
|
11
|
+
and distribution as defined by Sections 1 through 9 of this document.
|
12
|
+
|
13
|
+
"Licensor" shall mean the copyright owner or entity authorized by
|
14
|
+
the copyright owner that is granting the License.
|
15
|
+
|
16
|
+
"Legal Entity" shall mean the union of the acting entity and all
|
17
|
+
other entities that control, are controlled by, or are under common
|
18
|
+
control with that entity. For the purposes of this definition,
|
19
|
+
"control" means (i) the power, direct or indirect, to cause the
|
20
|
+
direction or management of such entity, whether by contract or
|
21
|
+
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
22
|
+
outstanding shares, or (iii) beneficial ownership of such entity.
|
23
|
+
|
24
|
+
"You" (or "Your") shall mean an individual or Legal Entity
|
25
|
+
exercising permissions granted by this License.
|
26
|
+
|
27
|
+
"Source" form shall mean the preferred form for making modifications,
|
28
|
+
including but not limited to software source code, documentation
|
29
|
+
source, and configuration files.
|
30
|
+
|
31
|
+
"Object" form shall mean any form resulting from mechanical
|
32
|
+
transformation or translation of a Source form, including but
|
33
|
+
not limited to compiled object code, generated documentation,
|
34
|
+
and conversions to other media types.
|
35
|
+
|
36
|
+
"Work" shall mean the work of authorship, whether in Source or
|
37
|
+
Object form, made available under the License, as indicated by a
|
38
|
+
copyright notice that is included in or attached to the work
|
39
|
+
(an example is provided in the Appendix below).
|
40
|
+
|
41
|
+
"Derivative Works" shall mean any work, whether in Source or Object
|
42
|
+
form, that is based on (or derived from) the Work and for which the
|
43
|
+
editorial revisions, annotations, elaborations, or other modifications
|
44
|
+
represent, as a whole, an original work of authorship. For the purposes
|
45
|
+
of this License, Derivative Works shall not include works that remain
|
46
|
+
separable from, or merely link (or bind by name) to the interfaces of,
|
47
|
+
the Work and Derivative Works thereof.
|
48
|
+
|
49
|
+
"Contribution" shall mean any work of authorship, including
|
50
|
+
the original version of the Work and any modifications or additions
|
51
|
+
to that Work or Derivative Works thereof, that is intentionally
|
52
|
+
submitted to Licensor for inclusion in the Work by the copyright owner
|
53
|
+
or by an individual or Legal Entity authorized to submit on behalf of
|
54
|
+
the copyright owner. For the purposes of this definition, "submitted"
|
55
|
+
means any form of electronic, verbal, or written communication sent
|
56
|
+
to the Licensor or its representatives, including but not limited to
|
57
|
+
communication on electronic mailing lists, source code control systems,
|
58
|
+
and issue tracking systems that are managed by, or on behalf of, the
|
59
|
+
Licensor for the purpose of discussing and improving the Work, but
|
60
|
+
excluding communication that is conspicuously marked or otherwise
|
61
|
+
designated in writing by the copyright owner as "Not a Contribution."
|
62
|
+
|
63
|
+
"Contributor" shall mean Licensor and any individual or Legal Entity
|
64
|
+
on behalf of whom a Contribution has been received by Licensor and
|
65
|
+
subsequently incorporated within the Work.
|
66
|
+
|
67
|
+
2. Grant of Copyright License. Subject to the terms and conditions of
|
68
|
+
this License, each Contributor hereby grants to You a perpetual,
|
69
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
70
|
+
copyright license to reproduce, prepare Derivative Works of,
|
71
|
+
publicly display, publicly perform, sublicense, and distribute the
|
72
|
+
Work and such Derivative Works in Source or Object form.
|
73
|
+
|
74
|
+
3. Grant of Patent License. Subject to the terms and conditions of
|
75
|
+
this License, each Contributor hereby grants to You a perpetual,
|
76
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
77
|
+
(except as stated in this section) patent license to make, have made,
|
78
|
+
use, offer to sell, sell, import, and otherwise transfer the Work,
|
79
|
+
where such license applies only to those patent claims licensable
|
80
|
+
by such Contributor that are necessarily infringed by their
|
81
|
+
Contribution(s) alone or by combination of their Contribution(s)
|
82
|
+
with the Work to which such Contribution(s) was submitted. If You
|
83
|
+
institute patent litigation against any entity (including a
|
84
|
+
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
85
|
+
or a Contribution incorporated within the Work constitutes direct
|
86
|
+
or contributory patent infringement, then any patent licenses
|
87
|
+
granted to You under this License for that Work shall terminate
|
88
|
+
as of the date such litigation is filed.
|
89
|
+
|
90
|
+
4. Redistribution. You may reproduce and distribute copies of the
|
91
|
+
Work or Derivative Works thereof in any medium, with or without
|
92
|
+
modifications, and in Source or Object form, provided that You
|
93
|
+
meet the following conditions:
|
94
|
+
|
95
|
+
(a) You must give any other recipients of the Work or
|
96
|
+
Derivative Works a copy of this License; and
|
97
|
+
|
98
|
+
(b) You must cause any modified files to carry prominent notices
|
99
|
+
stating that You changed the files; and
|
100
|
+
|
101
|
+
(c) You must retain, in the Source form of any Derivative Works
|
102
|
+
that You distribute, all copyright, patent, trademark, and
|
103
|
+
attribution notices from the Source form of the Work,
|
104
|
+
excluding those notices that do not pertain to any part of
|
105
|
+
the Derivative Works; and
|
106
|
+
|
107
|
+
(d) If the Work includes a "NOTICE" text file as part of its
|
108
|
+
distribution, then any Derivative Works that You distribute must
|
109
|
+
include a readable copy of the attribution notices contained
|
110
|
+
within such NOTICE file, excluding those notices that do not
|
111
|
+
pertain to any part of the Derivative Works, in at least one
|
112
|
+
of the following places: within a NOTICE text file distributed
|
113
|
+
as part of the Derivative Works; within the Source form or
|
114
|
+
documentation, if provided along with the Derivative Works; or,
|
115
|
+
within a display generated by the Derivative Works, if and
|
116
|
+
wherever such third-party notices normally appear. The contents
|
117
|
+
of the NOTICE file are for informational purposes only and
|
118
|
+
do not modify the License. You may add Your own attribution
|
119
|
+
notices within Derivative Works that You distribute, alongside
|
120
|
+
or as an addendum to the NOTICE text from the Work, provided
|
121
|
+
that such additional attribution notices cannot be construed
|
122
|
+
as modifying the License.
|
123
|
+
|
124
|
+
You may add Your own copyright statement to Your modifications and
|
125
|
+
may provide additional or different license terms and conditions
|
126
|
+
for use, reproduction, or distribution of Your modifications, or
|
127
|
+
for any such Derivative Works as a whole, provided Your use,
|
128
|
+
reproduction, and distribution of the Work otherwise complies with
|
129
|
+
the conditions stated in this License.
|
130
|
+
|
131
|
+
5. Submission of Contributions. Unless You explicitly state otherwise,
|
132
|
+
any Contribution intentionally submitted for inclusion in the Work
|
133
|
+
by You to the Licensor shall be under the terms and conditions of
|
134
|
+
this License, without any additional terms or conditions.
|
135
|
+
Notwithstanding the above, nothing herein shall supersede or modify
|
136
|
+
the terms of any separate license agreement you may have executed
|
137
|
+
with Licensor regarding such Contributions.
|
138
|
+
|
139
|
+
6. Trademarks. This License does not grant permission to use the trade
|
140
|
+
names, trademarks, service marks, or product names of the Licensor,
|
141
|
+
except as required for reasonable and customary use in describing the
|
142
|
+
origin of the Work and reproducing the content of the NOTICE file.
|
143
|
+
|
144
|
+
7. Disclaimer of Warranty. Unless required by applicable law or
|
145
|
+
agreed to in writing, Licensor provides the Work (and each
|
146
|
+
Contributor provides its Contributions) on an "AS IS" BASIS,
|
147
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
148
|
+
implied, including, without limitation, any warranties or conditions
|
149
|
+
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
150
|
+
PARTICULAR PURPOSE. You are solely responsible for determining the
|
151
|
+
appropriateness of using or redistributing the Work and assume any
|
152
|
+
risks associated with Your exercise of permissions under this License.
|
153
|
+
|
154
|
+
8. Limitation of Liability. In no event and under no legal theory,
|
155
|
+
whether in tort (including negligence), contract, or otherwise,
|
156
|
+
unless required by applicable law (such as deliberate and grossly
|
157
|
+
negligent acts) or agreed to in writing, shall any Contributor be
|
158
|
+
liable to You for damages, including any direct, indirect, special,
|
159
|
+
incidental, or consequential damages of any character arising as a
|
160
|
+
result of this License or out of the use or inability to use the
|
161
|
+
Work (including but not limited to damages for loss of goodwill,
|
162
|
+
work stoppage, computer failure or malfunction, or any and all
|
163
|
+
other commercial damages or losses), even if such Contributor
|
164
|
+
has been advised of the possibility of such damages.
|
165
|
+
|
166
|
+
9. Accepting Warranty or Additional Liability. While redistributing
|
167
|
+
the Work or Derivative Works thereof, You may choose to offer,
|
168
|
+
and charge a fee for, acceptance of support, warranty, indemnity,
|
169
|
+
or other liability obligations and/or rights consistent with this
|
170
|
+
License. However, in accepting such obligations, You may act only
|
171
|
+
on Your own behalf and on Your sole responsibility, not on behalf
|
172
|
+
of any other Contributor, and only if You agree to indemnify,
|
173
|
+
defend, and hold each Contributor harmless for any liability
|
174
|
+
incurred by, or claims asserted against, such Contributor by reason
|
175
|
+
of your accepting any such warranty or additional liability.
|
176
|
+
|
177
|
+
END OF TERMS AND CONDITIONS
|
178
|
+
|
179
|
+
APPENDIX: How to apply the Apache License to your work.
|
180
|
+
|
181
|
+
To apply the Apache License to your work, attach the following
|
182
|
+
boilerplate notice, with the fields enclosed by brackets "[]"
|
183
|
+
replaced with your own identifying information. (Don't include
|
184
|
+
the brackets!) The text should be enclosed in the appropriate
|
185
|
+
comment syntax for the file format. We also recommend that a
|
186
|
+
file or class name and description of purpose be included on the
|
187
|
+
same "printed page" as the copyright notice for easier
|
188
|
+
identification within third-party archives.
|
189
|
+
|
190
|
+
Copyright [yyyy] [name of copyright owner]
|
191
|
+
|
192
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
193
|
+
you may not use this file except in compliance with the License.
|
194
|
+
You may obtain a copy of the License at
|
195
|
+
|
196
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
197
|
+
|
198
|
+
Unless required by applicable law or agreed to in writing, software
|
199
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
200
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
201
|
+
See the License for the specific language governing permissions and
|
202
|
+
limitations under the License.
|
data/VERSION
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
1.35.0
|
data/lib/aws-sdk-transfer.rb
CHANGED
@@ -3,7 +3,7 @@
|
|
3
3
|
# WARNING ABOUT GENERATED CODE
|
4
4
|
#
|
5
5
|
# This file is generated. See the contributing guide for more information:
|
6
|
-
# https://github.com/aws/aws-sdk-ruby/blob/
|
6
|
+
# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
|
7
7
|
#
|
8
8
|
# WARNING ABOUT GENERATED CODE
|
9
9
|
|
@@ -28,7 +28,7 @@ require_relative 'aws-sdk-transfer/customizations'
|
|
28
28
|
# structure.
|
29
29
|
#
|
30
30
|
# transfer = Aws::Transfer::Client.new
|
31
|
-
# resp = transfer.
|
31
|
+
# resp = transfer.create_access(params)
|
32
32
|
#
|
33
33
|
# See {Client} for more information.
|
34
34
|
#
|
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-transfer/customizations'
|
|
48
48
|
# @!group service
|
49
49
|
module Aws::Transfer
|
50
50
|
|
51
|
-
GEM_VERSION = '1.
|
51
|
+
GEM_VERSION = '1.35.0'
|
52
52
|
|
53
53
|
end
|
@@ -3,7 +3,7 @@
|
|
3
3
|
# WARNING ABOUT GENERATED CODE
|
4
4
|
#
|
5
5
|
# This file is generated. See the contributing guide for more information:
|
6
|
-
# https://github.com/aws/aws-sdk-ruby/blob/
|
6
|
+
# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
|
7
7
|
#
|
8
8
|
# WARNING ABOUT GENERATED CODE
|
9
9
|
|
@@ -337,26 +337,195 @@ module Aws::Transfer
|
|
337
337
|
|
338
338
|
# @!group API Operations
|
339
339
|
|
340
|
-
#
|
341
|
-
#
|
342
|
-
#
|
343
|
-
#
|
344
|
-
#
|
340
|
+
# Used by administrators to choose which groups in the directory should
|
341
|
+
# have access to upload and download files over the enabled protocols
|
342
|
+
# using Amazon Web Services Transfer Family. For example, a Microsoft
|
343
|
+
# Active Directory might contain 50,000 users, but only a small fraction
|
344
|
+
# might need the ability to transfer files to the server. An
|
345
|
+
# administrator can use `CreateAccess` to limit the access to the
|
346
|
+
# correct set of users who need this ability.
|
347
|
+
#
|
348
|
+
# @option params [String] :home_directory
|
349
|
+
# The landing directory (folder) for a user when they log in to the
|
350
|
+
# server using the client.
|
351
|
+
#
|
352
|
+
# A `HomeDirectory` example is `/bucket_name/home/mydirectory`.
|
353
|
+
#
|
354
|
+
# @option params [String] :home_directory_type
|
355
|
+
# The type of landing directory (folder) you want your users' home
|
356
|
+
# directory to be when they log into the server. If you set it to
|
357
|
+
# `PATH`, the user will see the absolute Amazon S3 bucket or EFS paths
|
358
|
+
# as is in their file transfer protocol clients. If you set it
|
359
|
+
# `LOGICAL`, you will need to provide mappings in the
|
360
|
+
# `HomeDirectoryMappings` for how you want to make Amazon S3 or EFS
|
361
|
+
# paths visible to your users.
|
362
|
+
#
|
363
|
+
# @option params [Array<Types::HomeDirectoryMapEntry>] :home_directory_mappings
|
364
|
+
# Logical directory mappings that specify what Amazon S3 or Amazon EFS
|
365
|
+
# paths and keys should be visible to your user and how you want to make
|
366
|
+
# them visible. You must specify the `Entry` and `Target` pair, where
|
367
|
+
# `Entry` shows how the path is made visible and `Target` is the actual
|
368
|
+
# Amazon S3 or Amazon EFS path. If you only specify a target, it is
|
369
|
+
# displayed as is. You also must ensure that your Amazon Web Services
|
370
|
+
# Identity and Access Management (IAM) role provides access to paths in
|
371
|
+
# `Target`. This value can only be set when `HomeDirectoryType` is set
|
372
|
+
# to *LOGICAL*.
|
373
|
+
#
|
374
|
+
# The following is an `Entry` and `Target` pair example.
|
375
|
+
#
|
376
|
+
# `[ \{ "Entry": "your-personal-report.pdf", "Target":
|
377
|
+
# "/bucket3/customized-reports/$\{transfer:UserName\}.pdf" \} ]`
|
378
|
+
#
|
379
|
+
# In most cases, you can use this value instead of the scope-down policy
|
380
|
+
# to lock down your user to the designated home directory
|
381
|
+
# ("`chroot`"). To do this, you can set `Entry` to `/` and set
|
382
|
+
# `Target` to the `HomeDirectory` parameter value.
|
383
|
+
#
|
384
|
+
# The following is an `Entry` and `Target` pair example for `chroot`.
|
385
|
+
#
|
386
|
+
# `[ \{ "Entry:": "/", "Target": "/bucket_name/home/mydirectory" \} ]`
|
387
|
+
#
|
388
|
+
# <note markdown="1"> If the target of a logical directory entry does not exist in Amazon S3
|
389
|
+
# or EFS, the entry is ignored. As a workaround, you can use the Amazon
|
390
|
+
# S3 API or EFS API to create 0 byte objects as place holders for your
|
391
|
+
# directory. If using the CLI, use the `s3api` or `efsapi` call instead
|
392
|
+
# of `s3` or `efs` so you can use the put-object operation. For example,
|
393
|
+
# you use the following: `aws s3api put-object --bucket bucketname --key
|
394
|
+
# path/to/folder/`. Make sure that the end of the key name ends in a `/`
|
395
|
+
# for it to be considered a folder.
|
396
|
+
#
|
397
|
+
# </note>
|
398
|
+
#
|
399
|
+
# @option params [String] :policy
|
400
|
+
# A scope-down policy for your user so that you can use the same IAM
|
401
|
+
# role across multiple users. This policy scopes down user access to
|
402
|
+
# portions of their Amazon S3 bucket. Variables that you can use inside
|
403
|
+
# this policy include `$\{Transfer:UserName\}`,
|
404
|
+
# `$\{Transfer:HomeDirectory\}`, and `$\{Transfer:HomeBucket\}`.
|
405
|
+
#
|
406
|
+
# <note markdown="1"> This only applies when domain of `ServerId` is S3. Amazon EFS does not
|
407
|
+
# use scope-down policies.
|
408
|
+
#
|
409
|
+
# For scope-down policies, Amazon Web Services Transfer Family stores
|
410
|
+
# the policy as a JSON blob, instead of the Amazon Resource Name (ARN)
|
411
|
+
# of the policy. You save the policy as a JSON blob and pass it in the
|
412
|
+
# `Policy` argument.
|
413
|
+
#
|
414
|
+
# For an example of a scope-down policy, see [Example scope-down
|
415
|
+
# policy][1].
|
416
|
+
#
|
417
|
+
# For more information, see [AssumeRole][2] in the *Amazon Web Services
|
418
|
+
# Security Token Service API Reference*.
|
419
|
+
#
|
420
|
+
# </note>
|
421
|
+
#
|
422
|
+
#
|
423
|
+
#
|
424
|
+
# [1]: https://docs.aws.amazon.com/transfer/latest/userguide/scope-down-policy.html
|
425
|
+
# [2]: https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html
|
426
|
+
#
|
427
|
+
# @option params [Types::PosixProfile] :posix_profile
|
428
|
+
# The full POSIX identity, including user ID (`Uid`), group ID (`Gid`),
|
429
|
+
# and any secondary groups IDs (`SecondaryGids`), that controls your
|
430
|
+
# users' access to your Amazon EFS file systems. The POSIX permissions
|
431
|
+
# that are set on files and directories in your file system determine
|
432
|
+
# the level of access your users get when transferring files into and
|
433
|
+
# out of your Amazon EFS file systems.
|
434
|
+
#
|
435
|
+
# @option params [required, String] :role
|
436
|
+
# Specifies the Amazon Resource Name (ARN) of the IAM role that controls
|
437
|
+
# your users' access to your Amazon S3 bucket or EFS file system. The
|
438
|
+
# policies attached to this role determine the level of access that you
|
439
|
+
# want to provide your users when transferring files into and out of
|
440
|
+
# your Amazon S3 bucket or EFS file system. The IAM role should also
|
441
|
+
# contain a trust relationship that allows the server to access your
|
442
|
+
# resources when servicing your users' transfer requests.
|
443
|
+
#
|
444
|
+
# @option params [required, String] :server_id
|
445
|
+
# A system-assigned unique identifier for a server instance. This is the
|
446
|
+
# specific server that you added your user to.
|
447
|
+
#
|
448
|
+
# @option params [required, String] :external_id
|
449
|
+
# A unique identifier that is required to identify specific groups
|
450
|
+
# within your directory. The users of the group that you associate have
|
451
|
+
# access to your Amazon S3 or Amazon EFS resources over the enabled
|
452
|
+
# protocols using Amazon Web Services Transfer Family. If you know the
|
453
|
+
# group name, you can view the SID values by running the following
|
454
|
+
# command using Windows PowerShell.
|
455
|
+
#
|
456
|
+
# `Get-ADGroup -Filter \{samAccountName -like "YourGroupName*"\}
|
457
|
+
# -Properties * | Select SamAccountName,ObjectSid`
|
458
|
+
#
|
459
|
+
# In that command, replace *YourGroupName* with the name of your Active
|
460
|
+
# Directory group.
|
461
|
+
#
|
462
|
+
# The regex used to validate this parameter is a string of characters
|
463
|
+
# consisting of uppercase and lowercase alphanumeric characters with no
|
464
|
+
# spaces. You can also include underscores or any of the following
|
465
|
+
# characters: =,.@:/-
|
466
|
+
#
|
467
|
+
# @return [Types::CreateAccessResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
468
|
+
#
|
469
|
+
# * {Types::CreateAccessResponse#server_id #server_id} => String
|
470
|
+
# * {Types::CreateAccessResponse#external_id #external_id} => String
|
471
|
+
#
|
472
|
+
# @example Request syntax with placeholder values
|
473
|
+
#
|
474
|
+
# resp = client.create_access({
|
475
|
+
# home_directory: "HomeDirectory",
|
476
|
+
# home_directory_type: "PATH", # accepts PATH, LOGICAL
|
477
|
+
# home_directory_mappings: [
|
478
|
+
# {
|
479
|
+
# entry: "MapEntry", # required
|
480
|
+
# target: "MapTarget", # required
|
481
|
+
# },
|
482
|
+
# ],
|
483
|
+
# policy: "Policy",
|
484
|
+
# posix_profile: {
|
485
|
+
# uid: 1, # required
|
486
|
+
# gid: 1, # required
|
487
|
+
# secondary_gids: [1],
|
488
|
+
# },
|
489
|
+
# role: "Role", # required
|
490
|
+
# server_id: "ServerId", # required
|
491
|
+
# external_id: "ExternalId", # required
|
492
|
+
# })
|
493
|
+
#
|
494
|
+
# @example Response structure
|
495
|
+
#
|
496
|
+
# resp.server_id #=> String
|
497
|
+
# resp.external_id #=> String
|
498
|
+
#
|
499
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateAccess AWS API Documentation
|
500
|
+
#
|
501
|
+
# @overload create_access(params = {})
|
502
|
+
# @param [Hash] params ({})
|
503
|
+
def create_access(params = {}, options = {})
|
504
|
+
req = build_request(:create_access, params)
|
505
|
+
req.send_request(options)
|
506
|
+
end
|
507
|
+
|
508
|
+
# Instantiates an auto-scaling virtual server based on the selected file
|
509
|
+
# transfer protocol in Amazon Web Services. When you make updates to
|
510
|
+
# your file transfer protocol-enabled server or when you work with
|
511
|
+
# users, use the service-generated `ServerId` property that is assigned
|
512
|
+
# to the newly created server.
|
345
513
|
#
|
346
514
|
# @option params [String] :certificate
|
347
|
-
# The Amazon Resource Name (ARN) of the
|
348
|
-
# certificate. Required when `Protocols` is set to `FTPS`.
|
515
|
+
# The Amazon Resource Name (ARN) of the Amazon Web Services Certificate
|
516
|
+
# Manager (ACM) certificate. Required when `Protocols` is set to `FTPS`.
|
349
517
|
#
|
350
518
|
# To request a new public certificate, see [Request a public
|
351
|
-
# certificate][1] in the <i>
|
519
|
+
# certificate][1] in the <i> Amazon Web Services Certificate Manager
|
520
|
+
# User Guide</i>.
|
352
521
|
#
|
353
522
|
# To import an existing certificate into ACM, see [Importing
|
354
|
-
# certificates into ACM][2] in the <i>
|
355
|
-
# Guide</i>.
|
523
|
+
# certificates into ACM][2] in the <i> Amazon Web Services Certificate
|
524
|
+
# Manager User Guide</i>.
|
356
525
|
#
|
357
526
|
# To request a private certificate to use FTPS through private IP
|
358
|
-
# addresses, see [Request a private certificate][3] in the <i>
|
359
|
-
# Certificate Manager User Guide</i>.
|
527
|
+
# addresses, see [Request a private certificate][3] in the <i> Amazon
|
528
|
+
# Web Services Certificate Manager User Guide</i>.
|
360
529
|
#
|
361
530
|
# Certificates with the following cryptographic algorithms and key sizes
|
362
531
|
# are supported:
|
@@ -383,22 +552,42 @@ module Aws::Transfer
|
|
383
552
|
# [3]: https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-private.html
|
384
553
|
#
|
385
554
|
# @option params [String] :domain
|
555
|
+
# The domain of the storage system that is used for file transfers.
|
556
|
+
# There are two domains available: Amazon Simple Storage Service (Amazon
|
557
|
+
# S3) and Amazon Elastic File System (Amazon EFS). The default value is
|
558
|
+
# S3.
|
559
|
+
#
|
560
|
+
# <note markdown="1"> After the server is created, the domain cannot be changed.
|
561
|
+
#
|
562
|
+
# </note>
|
386
563
|
#
|
387
564
|
# @option params [Types::EndpointDetails] :endpoint_details
|
388
565
|
# The virtual private cloud (VPC) endpoint settings that are configured
|
389
566
|
# for your server. When you host your endpoint within your VPC, you can
|
390
567
|
# make it accessible only to resources within your VPC, or you can
|
391
|
-
# attach Elastic
|
568
|
+
# attach Elastic IP addresses and make it accessible to clients over the
|
392
569
|
# internet. Your VPC's default security groups are automatically
|
393
570
|
# assigned to your endpoint.
|
394
571
|
#
|
395
572
|
# @option params [String] :endpoint_type
|
396
|
-
# The type of
|
397
|
-
#
|
398
|
-
# VPC endpoint
|
399
|
-
# only within your VPC
|
400
|
-
#
|
401
|
-
#
|
573
|
+
# The type of endpoint that you want your server to use. You can choose
|
574
|
+
# to make your server's endpoint publicly accessible (PUBLIC) or host
|
575
|
+
# it inside your VPC. With an endpoint that is hosted in a VPC, you can
|
576
|
+
# restrict access to your server and resources only within your VPC or
|
577
|
+
# choose to make it internet facing by attaching Elastic IP addresses
|
578
|
+
# directly to it.
|
579
|
+
#
|
580
|
+
# <note markdown="1"> After May 19, 2021, you won't be able to create a server using
|
581
|
+
# `EndpointType=VPC_ENDPOINT` in your Amazon Web Services account if
|
582
|
+
# your account hasn't already done so before May 19, 2021. If you have
|
583
|
+
# already created servers with `EndpointType=VPC_ENDPOINT` in your
|
584
|
+
# Amazon Web Services account on or before May 19, 2021, you will not be
|
585
|
+
# affected. After this date, use `EndpointType`=`VPC`.
|
586
|
+
#
|
587
|
+
# For more information, see
|
588
|
+
# https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
|
589
|
+
#
|
590
|
+
# It is recommended that you use `VPC` as the `EndpointType`. With this
|
402
591
|
# endpoint type, you have the option to directly associate up to three
|
403
592
|
# Elastic IPv4 addresses (BYO IP included) with your server's endpoint
|
404
593
|
# and use VPC security groups to restrict traffic by the client's
|
@@ -416,30 +605,40 @@ module Aws::Transfer
|
|
416
605
|
# Accidentally changing a server's host key can be disruptive.
|
417
606
|
#
|
418
607
|
# For more information, see [Change the host key for your SFTP-enabled
|
419
|
-
# server][1] in the *
|
608
|
+
# server][1] in the *Amazon Web Services Transfer Family User Guide*.
|
420
609
|
#
|
421
610
|
#
|
422
611
|
#
|
423
612
|
# [1]: https://docs.aws.amazon.com/transfer/latest/userguide/edit-server-config.html#configuring-servers-change-host-key
|
424
613
|
#
|
425
614
|
# @option params [Types::IdentityProviderDetails] :identity_provider_details
|
426
|
-
# Required when `IdentityProviderType` is set to `
|
427
|
-
# an array containing all of the information
|
615
|
+
# Required when `IdentityProviderType` is set to `AWS_DIRECTORY_SERVICE`
|
616
|
+
# or `API_GATEWAY`. Accepts an array containing all of the information
|
617
|
+
# required to use a directory in `AWS_DIRECTORY_SERVICE` or invoke a
|
428
618
|
# customer-supplied authentication API, including the API Gateway URL.
|
429
619
|
# Not required when `IdentityProviderType` is set to `SERVICE_MANAGED`.
|
430
620
|
#
|
431
621
|
# @option params [String] :identity_provider_type
|
432
622
|
# Specifies the mode of authentication for a server. The default value
|
433
623
|
# is `SERVICE_MANAGED`, which allows you to store and access user
|
434
|
-
# credentials within the
|
435
|
-
#
|
436
|
-
#
|
437
|
-
#
|
624
|
+
# credentials within the Amazon Web Services Transfer Family service.
|
625
|
+
#
|
626
|
+
# Use `AWS_DIRECTORY_SERVICE` to provide access to Active Directory
|
627
|
+
# groups in Amazon Web Services Managed Active Directory or Microsoft
|
628
|
+
# Active Directory in your on-premises environment or in Amazon Web
|
629
|
+
# Services using AD Connectors. This option also requires you to provide
|
630
|
+
# a Directory ID using the `IdentityProviderDetails` parameter.
|
631
|
+
#
|
632
|
+
# Use the `API_GATEWAY` value to integrate with an identity provider of
|
633
|
+
# your choosing. The `API_GATEWAY` setting requires you to provide an
|
634
|
+
# API Gateway endpoint URL to call for authentication using the
|
438
635
|
# `IdentityProviderDetails` parameter.
|
439
636
|
#
|
440
637
|
# @option params [String] :logging_role
|
441
|
-
#
|
442
|
-
#
|
638
|
+
# Specifies the Amazon Resource Name (ARN) of the Amazon Web Services
|
639
|
+
# Identity and Access Management (IAM) role that allows a server to turn
|
640
|
+
# on Amazon CloudWatch logging for Amazon S3 or Amazon EFS events. When
|
641
|
+
# set, user activity can be viewed in your CloudWatch logs.
|
443
642
|
#
|
444
643
|
# @option params [Array<String>] :protocols
|
445
644
|
# Specifies the file transfer protocol or protocols over which your file
|
@@ -454,12 +653,13 @@ module Aws::Transfer
|
|
454
653
|
#
|
455
654
|
# * `FTP` (File Transfer Protocol): Unencrypted file transfer
|
456
655
|
#
|
457
|
-
# <note markdown="1"> If you select `FTPS`, you must choose a certificate stored in
|
458
|
-
# Certificate Manager (ACM) which
|
459
|
-
# when clients connect to it over FTPS.
|
656
|
+
# <note markdown="1"> If you select `FTPS`, you must choose a certificate stored in Amazon
|
657
|
+
# Web Services Certificate Manager (ACM) which is used to identify your
|
658
|
+
# server when clients connect to it over FTPS.
|
460
659
|
#
|
461
660
|
# If `Protocol` includes either `FTP` or `FTPS`, then the `EndpointType`
|
462
|
-
# must be `VPC` and the `IdentityProviderType` must be
|
661
|
+
# must be `VPC` and the `IdentityProviderType` must be
|
662
|
+
# `AWS_DIRECTORY_SERVICE` or `API_GATEWAY`.
|
463
663
|
#
|
464
664
|
# If `Protocol` includes `FTP`, then `AddressAllocationIds` cannot be
|
465
665
|
# associated.
|
@@ -498,8 +698,9 @@ module Aws::Transfer
|
|
498
698
|
# identity_provider_details: {
|
499
699
|
# url: "Url",
|
500
700
|
# invocation_role: "Role",
|
701
|
+
# directory_id: "DirectoryId",
|
501
702
|
# },
|
502
|
-
# identity_provider_type: "SERVICE_MANAGED", # accepts SERVICE_MANAGED, API_GATEWAY
|
703
|
+
# identity_provider_type: "SERVICE_MANAGED", # accepts SERVICE_MANAGED, API_GATEWAY, AWS_DIRECTORY_SERVICE
|
503
704
|
# logging_role: "Role",
|
504
705
|
# protocols: ["SFTP"], # accepts SFTP, FTP, FTPS
|
505
706
|
# security_policy_name: "SecurityPolicyName",
|
@@ -529,86 +730,103 @@ module Aws::Transfer
|
|
529
730
|
# servers that have the `IdentityProviderType` set to `SERVICE_MANAGED`.
|
530
731
|
# Using parameters for `CreateUser`, you can specify the user name, set
|
531
732
|
# the home directory, store the user's public key, and assign the
|
532
|
-
# user's
|
533
|
-
# optionally add a scope-down policy, and assign metadata
|
534
|
-
# can be used to group and search for users.
|
733
|
+
# user's Amazon Web Services Identity and Access Management (IAM) role.
|
734
|
+
# You can also optionally add a scope-down policy, and assign metadata
|
735
|
+
# with tags that can be used to group and search for users.
|
535
736
|
#
|
536
737
|
# @option params [String] :home_directory
|
537
738
|
# The landing directory (folder) for a user when they log in to the
|
538
739
|
# server using the client.
|
539
740
|
#
|
540
|
-
#
|
541
|
-
# <code>your-Amazon-S3-bucket-name>/home/username</code> </i>.
|
741
|
+
# A `HomeDirectory` example is `/bucket_name/home/mydirectory`.
|
542
742
|
#
|
543
743
|
# @option params [String] :home_directory_type
|
544
744
|
# The type of landing directory (folder) you want your users' home
|
545
745
|
# directory to be when they log into the server. If you set it to
|
546
|
-
# `PATH`, the user will see the absolute Amazon S3 bucket
|
547
|
-
# their file transfer protocol clients. If you set it
|
548
|
-
# will need to provide mappings in the
|
549
|
-
# you want to make Amazon S3
|
746
|
+
# `PATH`, the user will see the absolute Amazon S3 bucket or EFS paths
|
747
|
+
# as is in their file transfer protocol clients. If you set it
|
748
|
+
# `LOGICAL`, you will need to provide mappings in the
|
749
|
+
# `HomeDirectoryMappings` for how you want to make Amazon S3 or EFS
|
750
|
+
# paths visible to your users.
|
550
751
|
#
|
551
752
|
# @option params [Array<Types::HomeDirectoryMapEntry>] :home_directory_mappings
|
552
|
-
# Logical directory mappings that specify what Amazon S3
|
553
|
-
# should be visible to your user and how you want to make
|
554
|
-
#
|
753
|
+
# Logical directory mappings that specify what Amazon S3 or Amazon EFS
|
754
|
+
# paths and keys should be visible to your user and how you want to make
|
755
|
+
# them visible. You must specify the `Entry` and `Target` pair, where
|
555
756
|
# `Entry` shows how the path is made visible and `Target` is the actual
|
556
|
-
# Amazon S3 path. If you only specify a target, it
|
557
|
-
# is. You
|
558
|
-
#
|
757
|
+
# Amazon S3 or Amazon EFS path. If you only specify a target, it is
|
758
|
+
# displayed as is. You also must ensure that your Amazon Web Services
|
759
|
+
# Identity and Access Management (IAM) role provides access to paths in
|
760
|
+
# `Target`. This value can only be set when `HomeDirectoryType` is set
|
761
|
+
# to *LOGICAL*.
|
559
762
|
#
|
560
|
-
#
|
561
|
-
#
|
562
|
-
#
|
763
|
+
# The following is an `Entry` and `Target` pair example.
|
764
|
+
#
|
765
|
+
# `[ \{ "Entry": "your-personal-report.pdf", "Target":
|
766
|
+
# "/bucket3/customized-reports/$\{transfer:UserName\}.pdf" \} ]`
|
563
767
|
#
|
564
768
|
# In most cases, you can use this value instead of the scope-down policy
|
565
|
-
# to lock your user down to the designated home directory
|
566
|
-
# To do this, you can set `Entry` to
|
567
|
-
# HomeDirectory parameter value.
|
568
|
-
#
|
569
|
-
#
|
570
|
-
#
|
571
|
-
#
|
572
|
-
#
|
573
|
-
# the
|
574
|
-
#
|
575
|
-
#
|
576
|
-
#
|
769
|
+
# to lock your user down to the designated home directory
|
770
|
+
# ("`chroot`"). To do this, you can set `Entry` to `/` and set
|
771
|
+
# `Target` to the HomeDirectory parameter value.
|
772
|
+
#
|
773
|
+
# The following is an `Entry` and `Target` pair example for `chroot`.
|
774
|
+
#
|
775
|
+
# `[ \{ "Entry:": "/", "Target": "/bucket_name/home/mydirectory" \} ]`
|
776
|
+
#
|
777
|
+
# <note markdown="1"> If the target of a logical directory entry does not exist in Amazon S3
|
778
|
+
# or EFS, the entry is ignored. As a workaround, you can use the Amazon
|
779
|
+
# S3 API or EFS API to create 0 byte objects as place holders for your
|
780
|
+
# directory. If using the CLI, use the `s3api` or `efsapi` call instead
|
781
|
+
# of `s3` or `efs` so you can use the put-object operation. For example,
|
782
|
+
# you use the following: `aws s3api put-object --bucket bucketname --key
|
783
|
+
# path/to/folder/`. Make sure that the end of the key name ends in a `/`
|
784
|
+
# for it to be considered a folder.
|
577
785
|
#
|
578
786
|
# </note>
|
579
787
|
#
|
580
788
|
# @option params [String] :policy
|
581
|
-
# A scope-down policy for your user so you can use the same IAM
|
582
|
-
# across multiple users. This policy scopes down user access to
|
583
|
-
# of their Amazon S3 bucket. Variables that you can use inside
|
584
|
-
# policy include `$\{Transfer:UserName\}`,
|
789
|
+
# A scope-down policy for your user so that you can use the same IAM
|
790
|
+
# role across multiple users. This policy scopes down user access to
|
791
|
+
# portions of their Amazon S3 bucket. Variables that you can use inside
|
792
|
+
# this policy include `$\{Transfer:UserName\}`,
|
585
793
|
# `$\{Transfer:HomeDirectory\}`, and `$\{Transfer:HomeBucket\}`.
|
586
794
|
#
|
587
|
-
# <note markdown="1">
|
588
|
-
#
|
589
|
-
# You save the policy as a JSON blob and pass it in the `Policy`
|
590
|
-
# argument.
|
795
|
+
# <note markdown="1"> This only applies when domain of ServerId is S3. EFS does not use
|
796
|
+
# scope down policy.
|
591
797
|
#
|
592
|
-
# For
|
798
|
+
# For scope-down policies, Amazon Web Services Transfer Family stores
|
799
|
+
# the policy as a JSON blob, instead of the Amazon Resource Name (ARN)
|
800
|
+
# of the policy. You save the policy as a JSON blob and pass it in the
|
801
|
+
# `Policy` argument.
|
802
|
+
#
|
803
|
+
# For an example of a scope-down policy, see [Example scope-down
|
593
804
|
# policy][1].
|
594
805
|
#
|
595
|
-
# For more information, see [AssumeRole][2] in the *
|
596
|
-
# Service API Reference*.
|
806
|
+
# For more information, see [AssumeRole][2] in the *Amazon Web Services
|
807
|
+
# Security Token Service API Reference*.
|
597
808
|
#
|
598
809
|
# </note>
|
599
810
|
#
|
600
811
|
#
|
601
812
|
#
|
602
|
-
# [1]: https://docs.aws.amazon.com/transfer/latest/userguide/
|
813
|
+
# [1]: https://docs.aws.amazon.com/transfer/latest/userguide/scope-down-policy.html
|
603
814
|
# [2]: https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html
|
604
815
|
#
|
605
816
|
# @option params [Types::PosixProfile] :posix_profile
|
817
|
+
# Specifies the full POSIX identity, including user ID (`Uid`), group ID
|
818
|
+
# (`Gid`), and any secondary groups IDs (`SecondaryGids`), that controls
|
819
|
+
# your users' access to your Amazon EFS file systems. The POSIX
|
820
|
+
# permissions that are set on files and directories in Amazon EFS
|
821
|
+
# determine the level of access your users get when transferring files
|
822
|
+
# into and out of your Amazon EFS file systems.
|
606
823
|
#
|
607
824
|
# @option params [required, String] :role
|
608
|
-
#
|
609
|
-
#
|
610
|
-
#
|
611
|
-
#
|
825
|
+
# Specifies the Amazon Resource Name (ARN) of the IAM role that controls
|
826
|
+
# your users' access to your Amazon S3 bucket or EFS file system. The
|
827
|
+
# policies attached to this role determine the level of access that you
|
828
|
+
# want to provide your users when transferring files into and out of
|
829
|
+
# your Amazon S3 bucket or EFS file system. The IAM role should also
|
612
830
|
# contain a trust relationship that allows the server to access your
|
613
831
|
# resources when servicing your users' transfer requests.
|
614
832
|
#
|
@@ -680,6 +898,50 @@ module Aws::Transfer
|
|
680
898
|
req.send_request(options)
|
681
899
|
end
|
682
900
|
|
901
|
+
# Allows you to delete the access specified in the `ServerID` and
|
902
|
+
# `ExternalID` parameters.
|
903
|
+
#
|
904
|
+
# @option params [required, String] :server_id
|
905
|
+
# A system-assigned unique identifier for a server that has this user
|
906
|
+
# assigned.
|
907
|
+
#
|
908
|
+
# @option params [required, String] :external_id
|
909
|
+
# A unique identifier that is required to identify specific groups
|
910
|
+
# within your directory. The users of the group that you associate have
|
911
|
+
# access to your Amazon S3 or Amazon EFS resources over the enabled
|
912
|
+
# protocols using Amazon Web Services Transfer Family. If you know the
|
913
|
+
# group name, you can view the SID values by running the following
|
914
|
+
# command using Windows PowerShell.
|
915
|
+
#
|
916
|
+
# `Get-ADGroup -Filter \{samAccountName -like "YourGroupName*"\}
|
917
|
+
# -Properties * | Select SamAccountName,ObjectSid`
|
918
|
+
#
|
919
|
+
# In that command, replace *YourGroupName* with the name of your Active
|
920
|
+
# Directory group.
|
921
|
+
#
|
922
|
+
# The regex used to validate this parameter is a string of characters
|
923
|
+
# consisting of uppercase and lowercase alphanumeric characters with no
|
924
|
+
# spaces. You can also include underscores or any of the following
|
925
|
+
# characters: =,.@:/-
|
926
|
+
#
|
927
|
+
# @return [Struct] Returns an empty {Seahorse::Client::Response response}.
|
928
|
+
#
|
929
|
+
# @example Request syntax with placeholder values
|
930
|
+
#
|
931
|
+
# resp = client.delete_access({
|
932
|
+
# server_id: "ServerId", # required
|
933
|
+
# external_id: "ExternalId", # required
|
934
|
+
# })
|
935
|
+
#
|
936
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteAccess AWS API Documentation
|
937
|
+
#
|
938
|
+
# @overload delete_access(params = {})
|
939
|
+
# @param [Hash] params ({})
|
940
|
+
def delete_access(params = {}, options = {})
|
941
|
+
req = build_request(:delete_access, params)
|
942
|
+
req.send_request(options)
|
943
|
+
end
|
944
|
+
|
683
945
|
# Deletes the file transfer protocol-enabled server that you specify.
|
684
946
|
#
|
685
947
|
# No response returns from this operation.
|
@@ -773,6 +1035,73 @@ module Aws::Transfer
|
|
773
1035
|
req.send_request(options)
|
774
1036
|
end
|
775
1037
|
|
1038
|
+
# Describes the access that is assigned to the specific file transfer
|
1039
|
+
# protocol-enabled server, as identified by its `ServerId` property and
|
1040
|
+
# its `ExternalID`.
|
1041
|
+
#
|
1042
|
+
# The response from this call returns the properties of the access that
|
1043
|
+
# is associated with the `ServerId` value that was specified.
|
1044
|
+
#
|
1045
|
+
# @option params [required, String] :server_id
|
1046
|
+
# A system-assigned unique identifier for a server that has this access
|
1047
|
+
# assigned.
|
1048
|
+
#
|
1049
|
+
# @option params [required, String] :external_id
|
1050
|
+
# A unique identifier that is required to identify specific groups
|
1051
|
+
# within your directory. The users of the group that you associate have
|
1052
|
+
# access to your Amazon S3 or Amazon EFS resources over the enabled
|
1053
|
+
# protocols using Amazon Web Services Transfer Family. If you know the
|
1054
|
+
# group name, you can view the SID values by running the following
|
1055
|
+
# command using Windows PowerShell.
|
1056
|
+
#
|
1057
|
+
# `Get-ADGroup -Filter \{samAccountName -like "YourGroupName*"\}
|
1058
|
+
# -Properties * | Select SamAccountName,ObjectSid`
|
1059
|
+
#
|
1060
|
+
# In that command, replace *YourGroupName* with the name of your Active
|
1061
|
+
# Directory group.
|
1062
|
+
#
|
1063
|
+
# The regex used to validate this parameter is a string of characters
|
1064
|
+
# consisting of uppercase and lowercase alphanumeric characters with no
|
1065
|
+
# spaces. You can also include underscores or any of the following
|
1066
|
+
# characters: =,.@:/-
|
1067
|
+
#
|
1068
|
+
# @return [Types::DescribeAccessResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
1069
|
+
#
|
1070
|
+
# * {Types::DescribeAccessResponse#server_id #server_id} => String
|
1071
|
+
# * {Types::DescribeAccessResponse#access #access} => Types::DescribedAccess
|
1072
|
+
#
|
1073
|
+
# @example Request syntax with placeholder values
|
1074
|
+
#
|
1075
|
+
# resp = client.describe_access({
|
1076
|
+
# server_id: "ServerId", # required
|
1077
|
+
# external_id: "ExternalId", # required
|
1078
|
+
# })
|
1079
|
+
#
|
1080
|
+
# @example Response structure
|
1081
|
+
#
|
1082
|
+
# resp.server_id #=> String
|
1083
|
+
# resp.access.home_directory #=> String
|
1084
|
+
# resp.access.home_directory_mappings #=> Array
|
1085
|
+
# resp.access.home_directory_mappings[0].entry #=> String
|
1086
|
+
# resp.access.home_directory_mappings[0].target #=> String
|
1087
|
+
# resp.access.home_directory_type #=> String, one of "PATH", "LOGICAL"
|
1088
|
+
# resp.access.policy #=> String
|
1089
|
+
# resp.access.posix_profile.uid #=> Integer
|
1090
|
+
# resp.access.posix_profile.gid #=> Integer
|
1091
|
+
# resp.access.posix_profile.secondary_gids #=> Array
|
1092
|
+
# resp.access.posix_profile.secondary_gids[0] #=> Integer
|
1093
|
+
# resp.access.role #=> String
|
1094
|
+
# resp.access.external_id #=> String
|
1095
|
+
#
|
1096
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeAccess AWS API Documentation
|
1097
|
+
#
|
1098
|
+
# @overload describe_access(params = {})
|
1099
|
+
# @param [Hash] params ({})
|
1100
|
+
def describe_access(params = {}, options = {})
|
1101
|
+
req = build_request(:describe_access, params)
|
1102
|
+
req.send_request(options)
|
1103
|
+
end
|
1104
|
+
|
776
1105
|
# Describes the security policy that is attached to your file transfer
|
777
1106
|
# protocol-enabled server. The response contains a description of the
|
778
1107
|
# security policy's properties. For more information about security
|
@@ -842,6 +1171,7 @@ module Aws::Transfer
|
|
842
1171
|
#
|
843
1172
|
# resp.server.arn #=> String
|
844
1173
|
# resp.server.certificate #=> String
|
1174
|
+
# resp.server.protocol_details.passive_ip #=> String
|
845
1175
|
# resp.server.domain #=> String, one of "S3", "EFS"
|
846
1176
|
# resp.server.endpoint_details.address_allocation_ids #=> Array
|
847
1177
|
# resp.server.endpoint_details.address_allocation_ids[0] #=> String
|
@@ -855,7 +1185,8 @@ module Aws::Transfer
|
|
855
1185
|
# resp.server.host_key_fingerprint #=> String
|
856
1186
|
# resp.server.identity_provider_details.url #=> String
|
857
1187
|
# resp.server.identity_provider_details.invocation_role #=> String
|
858
|
-
# resp.server.
|
1188
|
+
# resp.server.identity_provider_details.directory_id #=> String
|
1189
|
+
# resp.server.identity_provider_type #=> String, one of "SERVICE_MANAGED", "API_GATEWAY", "AWS_DIRECTORY_SERVICE"
|
859
1190
|
# resp.server.logging_role #=> String
|
860
1191
|
# resp.server.protocols #=> Array
|
861
1192
|
# resp.server.protocols[0] #=> String, one of "SFTP", "FTP", "FTPS"
|
@@ -888,8 +1219,8 @@ module Aws::Transfer
|
|
888
1219
|
#
|
889
1220
|
# @option params [required, String] :user_name
|
890
1221
|
# The name of the user assigned to one or more servers. User names are
|
891
|
-
# part of the sign-in credentials to use the
|
892
|
-
# and perform file transfer tasks.
|
1222
|
+
# part of the sign-in credentials to use the Amazon Web Services
|
1223
|
+
# Transfer Family service and perform file transfer tasks.
|
893
1224
|
#
|
894
1225
|
# @return [Types::DescribeUserResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
895
1226
|
#
|
@@ -981,6 +1312,56 @@ module Aws::Transfer
|
|
981
1312
|
req.send_request(options)
|
982
1313
|
end
|
983
1314
|
|
1315
|
+
# Lists the details for all the accesses you have on your server.
|
1316
|
+
#
|
1317
|
+
# @option params [Integer] :max_results
|
1318
|
+
# Specifies the maximum number of access SIDs to return.
|
1319
|
+
#
|
1320
|
+
# @option params [String] :next_token
|
1321
|
+
# When you can get additional results from the `ListAccesses` call, a
|
1322
|
+
# `NextToken` parameter is returned in the output. You can then pass in
|
1323
|
+
# a subsequent command to the `NextToken` parameter to continue listing
|
1324
|
+
# additional accesses.
|
1325
|
+
#
|
1326
|
+
# @option params [required, String] :server_id
|
1327
|
+
# A system-assigned unique identifier for a server that has users
|
1328
|
+
# assigned to it.
|
1329
|
+
#
|
1330
|
+
# @return [Types::ListAccessesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
1331
|
+
#
|
1332
|
+
# * {Types::ListAccessesResponse#next_token #next_token} => String
|
1333
|
+
# * {Types::ListAccessesResponse#server_id #server_id} => String
|
1334
|
+
# * {Types::ListAccessesResponse#accesses #accesses} => Array<Types::ListedAccess>
|
1335
|
+
#
|
1336
|
+
# The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
|
1337
|
+
#
|
1338
|
+
# @example Request syntax with placeholder values
|
1339
|
+
#
|
1340
|
+
# resp = client.list_accesses({
|
1341
|
+
# max_results: 1,
|
1342
|
+
# next_token: "NextToken",
|
1343
|
+
# server_id: "ServerId", # required
|
1344
|
+
# })
|
1345
|
+
#
|
1346
|
+
# @example Response structure
|
1347
|
+
#
|
1348
|
+
# resp.next_token #=> String
|
1349
|
+
# resp.server_id #=> String
|
1350
|
+
# resp.accesses #=> Array
|
1351
|
+
# resp.accesses[0].home_directory #=> String
|
1352
|
+
# resp.accesses[0].home_directory_type #=> String, one of "PATH", "LOGICAL"
|
1353
|
+
# resp.accesses[0].role #=> String
|
1354
|
+
# resp.accesses[0].external_id #=> String
|
1355
|
+
#
|
1356
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListAccesses AWS API Documentation
|
1357
|
+
#
|
1358
|
+
# @overload list_accesses(params = {})
|
1359
|
+
# @param [Hash] params ({})
|
1360
|
+
def list_accesses(params = {}, options = {})
|
1361
|
+
req = build_request(:list_accesses, params)
|
1362
|
+
req.send_request(options)
|
1363
|
+
end
|
1364
|
+
|
984
1365
|
# Lists the security policies that are attached to your file transfer
|
985
1366
|
# protocol-enabled servers.
|
986
1367
|
#
|
@@ -1024,7 +1405,7 @@ module Aws::Transfer
|
|
1024
1405
|
end
|
1025
1406
|
|
1026
1407
|
# Lists the file transfer protocol-enabled servers that are associated
|
1027
|
-
# with your
|
1408
|
+
# with your Amazon Web Services account.
|
1028
1409
|
#
|
1029
1410
|
# @option params [Integer] :max_results
|
1030
1411
|
# Specifies the number of servers to return as a response to the
|
@@ -1056,7 +1437,7 @@ module Aws::Transfer
|
|
1056
1437
|
# resp.servers #=> Array
|
1057
1438
|
# resp.servers[0].arn #=> String
|
1058
1439
|
# resp.servers[0].domain #=> String, one of "S3", "EFS"
|
1059
|
-
# resp.servers[0].identity_provider_type #=> String, one of "SERVICE_MANAGED", "API_GATEWAY"
|
1440
|
+
# resp.servers[0].identity_provider_type #=> String, one of "SERVICE_MANAGED", "API_GATEWAY", "AWS_DIRECTORY_SERVICE"
|
1060
1441
|
# resp.servers[0].endpoint_type #=> String, one of "PUBLIC", "VPC", "VPC_ENDPOINT"
|
1061
1442
|
# resp.servers[0].logging_role #=> String
|
1062
1443
|
# resp.servers[0].server_id #=> String
|
@@ -1072,13 +1453,13 @@ module Aws::Transfer
|
|
1072
1453
|
req.send_request(options)
|
1073
1454
|
end
|
1074
1455
|
|
1075
|
-
# Lists all of the tags associated with the Amazon Resource
|
1076
|
-
# you specify. The resource can be a user, server, or role.
|
1456
|
+
# Lists all of the tags associated with the Amazon Resource Name (ARN)
|
1457
|
+
# that you specify. The resource can be a user, server, or role.
|
1077
1458
|
#
|
1078
1459
|
# @option params [required, String] :arn
|
1079
1460
|
# Requests the tags associated with a particular Amazon Resource Name
|
1080
|
-
# (ARN). An ARN is an identifier for a specific
|
1081
|
-
# server, user, or role.
|
1461
|
+
# (ARN). An ARN is an identifier for a specific Amazon Web Services
|
1462
|
+
# resource, such as a server, user, or role.
|
1082
1463
|
#
|
1083
1464
|
# @option params [Integer] :max_results
|
1084
1465
|
# Specifies the number of tags to return as a response to the
|
@@ -1252,8 +1633,8 @@ module Aws::Transfer
|
|
1252
1633
|
# There is no response returned from this call.
|
1253
1634
|
#
|
1254
1635
|
# @option params [required, String] :arn
|
1255
|
-
# An Amazon Resource Name (ARN) for a specific
|
1256
|
-
# server, user, or role.
|
1636
|
+
# An Amazon Resource Name (ARN) for a specific Amazon Web Services
|
1637
|
+
# resource, such as a server, user, or role.
|
1257
1638
|
#
|
1258
1639
|
# @option params [required, Array<Types::Tag>] :tags
|
1259
1640
|
# Key-value pairs assigned to ARNs that you can use to group and search
|
@@ -1284,11 +1665,12 @@ module Aws::Transfer
|
|
1284
1665
|
end
|
1285
1666
|
|
1286
1667
|
# If the `IdentityProviderType` of a file transfer protocol-enabled
|
1287
|
-
# server is `API_Gateway`, tests whether your
|
1288
|
-
# successfully. We highly recommend that you
|
1289
|
-
# your authentication method as soon as you
|
1290
|
-
# so, you can troubleshoot issues with the
|
1291
|
-
# ensure that your users can
|
1668
|
+
# server is `AWS_DIRECTORY_SERVICE` or `API_Gateway`, tests whether your
|
1669
|
+
# identity provider is set up successfully. We highly recommend that you
|
1670
|
+
# call this operation to test your authentication method as soon as you
|
1671
|
+
# create your server. By doing so, you can troubleshoot issues with the
|
1672
|
+
# identity provider integration to ensure that your users can
|
1673
|
+
# successfully use the service.
|
1292
1674
|
#
|
1293
1675
|
# @option params [required, String] :server_id
|
1294
1676
|
# A system-assigned identifier for a specific server. That server's
|
@@ -1355,8 +1737,8 @@ module Aws::Transfer
|
|
1355
1737
|
#
|
1356
1738
|
# @option params [required, String] :arn
|
1357
1739
|
# The value of the resource that will have the tag removed. An Amazon
|
1358
|
-
# Resource Name (ARN) is an identifier for a specific
|
1359
|
-
# as a server, user, or role.
|
1740
|
+
# Resource Name (ARN) is an identifier for a specific Amazon Web
|
1741
|
+
# Services resource, such as a server, user, or role.
|
1360
1742
|
#
|
1361
1743
|
# @option params [required, Array<String>] :tag_keys
|
1362
1744
|
# TagKeys are key-value pairs assigned to ARNs that can be used to group
|
@@ -1381,6 +1763,169 @@ module Aws::Transfer
|
|
1381
1763
|
req.send_request(options)
|
1382
1764
|
end
|
1383
1765
|
|
1766
|
+
# Allows you to update parameters for the access specified in the
|
1767
|
+
# `ServerID` and `ExternalID` parameters.
|
1768
|
+
#
|
1769
|
+
# @option params [String] :home_directory
|
1770
|
+
# The landing directory (folder) for a user when they log in to the
|
1771
|
+
# server using the client.
|
1772
|
+
#
|
1773
|
+
# A `HomeDirectory` example is `/bucket_name/home/mydirectory`.
|
1774
|
+
#
|
1775
|
+
# @option params [String] :home_directory_type
|
1776
|
+
# The type of landing directory (folder) you want your users' home
|
1777
|
+
# directory to be when they log into the server. If you set it to
|
1778
|
+
# `PATH`, the user will see the absolute Amazon S3 bucket or EFS paths
|
1779
|
+
# as is in their file transfer protocol clients. If you set it
|
1780
|
+
# `LOGICAL`, you will need to provide mappings in the
|
1781
|
+
# `HomeDirectoryMappings` for how you want to make Amazon S3 or EFS
|
1782
|
+
# paths visible to your users.
|
1783
|
+
#
|
1784
|
+
# @option params [Array<Types::HomeDirectoryMapEntry>] :home_directory_mappings
|
1785
|
+
# Logical directory mappings that specify what Amazon S3 or Amazon EFS
|
1786
|
+
# paths and keys should be visible to your user and how you want to make
|
1787
|
+
# them visible. You must specify the `Entry` and `Target` pair, where
|
1788
|
+
# `Entry` shows how the path is made visible and `Target` is the actual
|
1789
|
+
# Amazon S3 or Amazon EFS path. If you only specify a target, it is
|
1790
|
+
# displayed as is. You also must ensure that your Amazon Web Services
|
1791
|
+
# Identity and Access Management (IAM) role provides access to paths in
|
1792
|
+
# `Target`. This value can only be set when `HomeDirectoryType` is set
|
1793
|
+
# to *LOGICAL*.
|
1794
|
+
#
|
1795
|
+
# The following is an `Entry` and `Target` pair example.
|
1796
|
+
#
|
1797
|
+
# `[ \{ "Entry": "your-personal-report.pdf", "Target":
|
1798
|
+
# "/bucket3/customized-reports/$\{transfer:UserName\}.pdf" \} ]`
|
1799
|
+
#
|
1800
|
+
# In most cases, you can use this value instead of the scope-down policy
|
1801
|
+
# to lock down your user to the designated home directory
|
1802
|
+
# ("`chroot`"). To do this, you can set `Entry` to `/` and set
|
1803
|
+
# `Target` to the `HomeDirectory` parameter value.
|
1804
|
+
#
|
1805
|
+
# The following is an `Entry` and `Target` pair example for `chroot`.
|
1806
|
+
#
|
1807
|
+
# `[ \{ "Entry:": "/", "Target": "/bucket_name/home/mydirectory" \} ]`
|
1808
|
+
#
|
1809
|
+
# <note markdown="1"> If the target of a logical directory entry does not exist in Amazon S3
|
1810
|
+
# or EFS, the entry is ignored. As a workaround, you can use the Amazon
|
1811
|
+
# S3 API or EFS API to create 0 byte objects as place holders for your
|
1812
|
+
# directory. If using the CLI, use the `s3api` or `efsapi` call instead
|
1813
|
+
# of `s3` or `efs` so you can use the put-object operation. For example,
|
1814
|
+
# you use the following: `aws s3api put-object --bucket bucketname --key
|
1815
|
+
# path/to/folder/`. Make sure that the end of the key name ends in a `/`
|
1816
|
+
# for it to be considered a folder.
|
1817
|
+
#
|
1818
|
+
# </note>
|
1819
|
+
#
|
1820
|
+
# @option params [String] :policy
|
1821
|
+
# A scope-down policy for your user so that you can use the same IAM
|
1822
|
+
# role across multiple users. This policy scopes down user access to
|
1823
|
+
# portions of their Amazon S3 bucket. Variables that you can use inside
|
1824
|
+
# this policy include `$\{Transfer:UserName\}`,
|
1825
|
+
# `$\{Transfer:HomeDirectory\}`, and `$\{Transfer:HomeBucket\}`.
|
1826
|
+
#
|
1827
|
+
# <note markdown="1"> This only applies when domain of `ServerId` is S3. Amazon EFS does not
|
1828
|
+
# use scope down policy.
|
1829
|
+
#
|
1830
|
+
# For scope-down policies, Amazon Web ServicesTransfer Family stores the
|
1831
|
+
# policy as a JSON blob, instead of the Amazon Resource Name (ARN) of
|
1832
|
+
# the policy. You save the policy as a JSON blob and pass it in the
|
1833
|
+
# `Policy` argument.
|
1834
|
+
#
|
1835
|
+
# For an example of a scope-down policy, see [Example scope-down
|
1836
|
+
# policy][1].
|
1837
|
+
#
|
1838
|
+
# For more information, see [AssumeRole][2] in the *Amazon Web
|
1839
|
+
# ServicesSecurity Token Service API Reference*.
|
1840
|
+
#
|
1841
|
+
# </note>
|
1842
|
+
#
|
1843
|
+
#
|
1844
|
+
#
|
1845
|
+
# [1]: https://docs.aws.amazon.com/transfer/latest/userguide/scope-down-policy.html
|
1846
|
+
# [2]: https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html
|
1847
|
+
#
|
1848
|
+
# @option params [Types::PosixProfile] :posix_profile
|
1849
|
+
# The full POSIX identity, including user ID (`Uid`), group ID (`Gid`),
|
1850
|
+
# and any secondary groups IDs (`SecondaryGids`), that controls your
|
1851
|
+
# users' access to your Amazon EFS file systems. The POSIX permissions
|
1852
|
+
# that are set on files and directories in your file system determine
|
1853
|
+
# the level of access your users get when transferring files into and
|
1854
|
+
# out of your Amazon EFS file systems.
|
1855
|
+
#
|
1856
|
+
# @option params [String] :role
|
1857
|
+
# Specifies the Amazon Resource Name (ARN) of the IAM role that controls
|
1858
|
+
# your users' access to your Amazon S3 bucket or EFS file system. The
|
1859
|
+
# policies attached to this role determine the level of access that you
|
1860
|
+
# want to provide your users when transferring files into and out of
|
1861
|
+
# your Amazon S3 bucket or EFS file system. The IAM role should also
|
1862
|
+
# contain a trust relationship that allows the server to access your
|
1863
|
+
# resources when servicing your users' transfer requests.
|
1864
|
+
#
|
1865
|
+
# @option params [required, String] :server_id
|
1866
|
+
# A system-assigned unique identifier for a server instance. This is the
|
1867
|
+
# specific server that you added your user to.
|
1868
|
+
#
|
1869
|
+
# @option params [required, String] :external_id
|
1870
|
+
# A unique identifier that is required to identify specific groups
|
1871
|
+
# within your directory. The users of the group that you associate have
|
1872
|
+
# access to your Amazon S3 or Amazon EFS resources over the enabled
|
1873
|
+
# protocols using Amazon Web Services Transfer Family. If you know the
|
1874
|
+
# group name, you can view the SID values by running the following
|
1875
|
+
# command using Windows PowerShell.
|
1876
|
+
#
|
1877
|
+
# `Get-ADGroup -Filter \{samAccountName -like "YourGroupName*"\}
|
1878
|
+
# -Properties * | Select SamAccountName,ObjectSid`
|
1879
|
+
#
|
1880
|
+
# In that command, replace *YourGroupName* with the name of your Active
|
1881
|
+
# Directory group.
|
1882
|
+
#
|
1883
|
+
# The regex used to validate this parameter is a string of characters
|
1884
|
+
# consisting of uppercase and lowercase alphanumeric characters with no
|
1885
|
+
# spaces. You can also include underscores or any of the following
|
1886
|
+
# characters: =,.@:/-
|
1887
|
+
#
|
1888
|
+
# @return [Types::UpdateAccessResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
1889
|
+
#
|
1890
|
+
# * {Types::UpdateAccessResponse#server_id #server_id} => String
|
1891
|
+
# * {Types::UpdateAccessResponse#external_id #external_id} => String
|
1892
|
+
#
|
1893
|
+
# @example Request syntax with placeholder values
|
1894
|
+
#
|
1895
|
+
# resp = client.update_access({
|
1896
|
+
# home_directory: "HomeDirectory",
|
1897
|
+
# home_directory_type: "PATH", # accepts PATH, LOGICAL
|
1898
|
+
# home_directory_mappings: [
|
1899
|
+
# {
|
1900
|
+
# entry: "MapEntry", # required
|
1901
|
+
# target: "MapTarget", # required
|
1902
|
+
# },
|
1903
|
+
# ],
|
1904
|
+
# policy: "Policy",
|
1905
|
+
# posix_profile: {
|
1906
|
+
# uid: 1, # required
|
1907
|
+
# gid: 1, # required
|
1908
|
+
# secondary_gids: [1],
|
1909
|
+
# },
|
1910
|
+
# role: "Role",
|
1911
|
+
# server_id: "ServerId", # required
|
1912
|
+
# external_id: "ExternalId", # required
|
1913
|
+
# })
|
1914
|
+
#
|
1915
|
+
# @example Response structure
|
1916
|
+
#
|
1917
|
+
# resp.server_id #=> String
|
1918
|
+
# resp.external_id #=> String
|
1919
|
+
#
|
1920
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateAccess AWS API Documentation
|
1921
|
+
#
|
1922
|
+
# @overload update_access(params = {})
|
1923
|
+
# @param [Hash] params ({})
|
1924
|
+
def update_access(params = {}, options = {})
|
1925
|
+
req = build_request(:update_access, params)
|
1926
|
+
req.send_request(options)
|
1927
|
+
end
|
1928
|
+
|
1384
1929
|
# Updates the file transfer protocol-enabled server's properties after
|
1385
1930
|
# that server has been created.
|
1386
1931
|
#
|
@@ -1388,19 +1933,20 @@ module Aws::Transfer
|
|
1388
1933
|
# updated.
|
1389
1934
|
#
|
1390
1935
|
# @option params [String] :certificate
|
1391
|
-
# The Amazon Resource Name (ARN) of the
|
1392
|
-
# certificate. Required when `Protocols` is set to `FTPS`.
|
1936
|
+
# The Amazon Resource Name (ARN) of the Amazon Web ServicesCertificate
|
1937
|
+
# Manager (ACM) certificate. Required when `Protocols` is set to `FTPS`.
|
1393
1938
|
#
|
1394
1939
|
# To request a new public certificate, see [Request a public
|
1395
|
-
# certificate][1] in the <i>
|
1940
|
+
# certificate][1] in the <i> Amazon Web ServicesCertificate Manager User
|
1941
|
+
# Guide</i>.
|
1396
1942
|
#
|
1397
1943
|
# To import an existing certificate into ACM, see [Importing
|
1398
|
-
# certificates into ACM][2] in the <i>
|
1399
|
-
# Guide</i>.
|
1944
|
+
# certificates into ACM][2] in the <i> Amazon Web ServicesCertificate
|
1945
|
+
# Manager User Guide</i>.
|
1400
1946
|
#
|
1401
1947
|
# To request a private certificate to use FTPS through private IP
|
1402
|
-
# addresses, see [Request a private certificate][3] in the <i>
|
1403
|
-
#
|
1948
|
+
# addresses, see [Request a private certificate][3] in the <i> Amazon
|
1949
|
+
# Web ServicesCertificate Manager User Guide</i>.
|
1404
1950
|
#
|
1405
1951
|
# Certificates with the following cryptographic algorithms and key sizes
|
1406
1952
|
# are supported:
|
@@ -1426,20 +1972,40 @@ module Aws::Transfer
|
|
1426
1972
|
# [2]: https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html
|
1427
1973
|
# [3]: https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-private.html
|
1428
1974
|
#
|
1975
|
+
# @option params [Types::ProtocolDetails] :protocol_details
|
1976
|
+
# The protocol settings that are configured for your server.
|
1977
|
+
#
|
1978
|
+
# Use the `PassiveIp` parameter to indicate passive mode (for FTP and
|
1979
|
+
# FTPS protocols). Enter a single dotted-quad IPv4 address, such as the
|
1980
|
+
# external IP address of a firewall, router, or load balancer.
|
1981
|
+
#
|
1429
1982
|
# @option params [Types::EndpointDetails] :endpoint_details
|
1430
1983
|
# The virtual private cloud (VPC) endpoint settings that are configured
|
1431
|
-
# for your server.
|
1432
|
-
#
|
1433
|
-
#
|
1434
|
-
#
|
1984
|
+
# for your server. When you host your endpoint within your VPC, you can
|
1985
|
+
# make it accessible only to resources within your VPC, or you can
|
1986
|
+
# attach Elastic IP addresses and make it accessible to clients over the
|
1987
|
+
# internet. Your VPC's default security groups are automatically
|
1988
|
+
# assigned to your endpoint.
|
1435
1989
|
#
|
1436
1990
|
# @option params [String] :endpoint_type
|
1437
|
-
# The type of endpoint that you want your server to
|
1438
|
-
#
|
1439
|
-
#
|
1440
|
-
# within your VPC
|
1441
|
-
#
|
1442
|
-
#
|
1991
|
+
# The type of endpoint that you want your server to use. You can choose
|
1992
|
+
# to make your server's endpoint publicly accessible (PUBLIC) or host
|
1993
|
+
# it inside your VPC. With an endpoint that is hosted in a VPC, you can
|
1994
|
+
# restrict access to your server and resources only within your VPC or
|
1995
|
+
# choose to make it internet facing by attaching Elastic IP addresses
|
1996
|
+
# directly to it.
|
1997
|
+
#
|
1998
|
+
# <note markdown="1"> After May 19, 2021, you won't be able to create a server using
|
1999
|
+
# `EndpointType=VPC_ENDPOINT` in your Amazon Web Servicesaccount if your
|
2000
|
+
# account hasn't already done so before May 19, 2021. If you have
|
2001
|
+
# already created servers with `EndpointType=VPC_ENDPOINT` in your
|
2002
|
+
# Amazon Web Servicesaccount on or before May 19, 2021, you will not be
|
2003
|
+
# affected. After this date, use `EndpointType`=`VPC`.
|
2004
|
+
#
|
2005
|
+
# For more information, see
|
2006
|
+
# https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
|
2007
|
+
#
|
2008
|
+
# It is recommended that you use `VPC` as the `EndpointType`. With this
|
1443
2009
|
# endpoint type, you have the option to directly associate up to three
|
1444
2010
|
# Elastic IPv4 addresses (BYO IP included) with your server's endpoint
|
1445
2011
|
# and use VPC security groups to restrict traffic by the client's
|
@@ -1457,7 +2023,7 @@ module Aws::Transfer
|
|
1457
2023
|
# changing a server's host key can be disruptive.
|
1458
2024
|
#
|
1459
2025
|
# For more information, see [Change the host key for your SFTP-enabled
|
1460
|
-
# server][1] in the *
|
2026
|
+
# server][1] in the *Amazon Web ServicesTransfer Family User Guide*.
|
1461
2027
|
#
|
1462
2028
|
#
|
1463
2029
|
#
|
@@ -1468,9 +2034,10 @@ module Aws::Transfer
|
|
1468
2034
|
# customer's authentication API method.
|
1469
2035
|
#
|
1470
2036
|
# @option params [String] :logging_role
|
1471
|
-
#
|
1472
|
-
#
|
1473
|
-
# or
|
2037
|
+
# Specifies the Amazon Resource Name (ARN) of the Amazon Web Services
|
2038
|
+
# Identity and Access Management (IAM) role that allows a server to turn
|
2039
|
+
# on Amazon CloudWatch logging for Amazon S3 or Amazon EFS events. When
|
2040
|
+
# set, user activity can be viewed in your CloudWatch logs.
|
1474
2041
|
#
|
1475
2042
|
# @option params [Array<String>] :protocols
|
1476
2043
|
# Specifies the file transfer protocol or protocols over which your file
|
@@ -1485,12 +2052,13 @@ module Aws::Transfer
|
|
1485
2052
|
#
|
1486
2053
|
# * File Transfer Protocol (FTP): Unencrypted file transfer
|
1487
2054
|
#
|
1488
|
-
# <note markdown="1"> If you select `FTPS`, you must choose a certificate stored in
|
1489
|
-
#
|
1490
|
-
# when clients connect to it over FTPS.
|
2055
|
+
# <note markdown="1"> If you select `FTPS`, you must choose a certificate stored in Amazon
|
2056
|
+
# Web ServicesCertificate Manager (ACM) which will be used to identify
|
2057
|
+
# your server when clients connect to it over FTPS.
|
1491
2058
|
#
|
1492
2059
|
# If `Protocol` includes either `FTP` or `FTPS`, then the `EndpointType`
|
1493
|
-
# must be `VPC` and the `IdentityProviderType` must be
|
2060
|
+
# must be `VPC` and the `IdentityProviderType` must be
|
2061
|
+
# `AWS_DIRECTORY_SERVICE` or `API_GATEWAY`.
|
1494
2062
|
#
|
1495
2063
|
# If `Protocol` includes `FTP`, then `AddressAllocationIds` cannot be
|
1496
2064
|
# associated.
|
@@ -1517,6 +2085,9 @@ module Aws::Transfer
|
|
1517
2085
|
#
|
1518
2086
|
# resp = client.update_server({
|
1519
2087
|
# certificate: "Certificate",
|
2088
|
+
# protocol_details: {
|
2089
|
+
# passive_ip: "PassiveIp",
|
2090
|
+
# },
|
1520
2091
|
# endpoint_details: {
|
1521
2092
|
# address_allocation_ids: ["AddressAllocationId"],
|
1522
2093
|
# subnet_ids: ["SubnetId"],
|
@@ -1529,6 +2100,7 @@ module Aws::Transfer
|
|
1529
2100
|
# identity_provider_details: {
|
1530
2101
|
# url: "Url",
|
1531
2102
|
# invocation_role: "Role",
|
2103
|
+
# directory_id: "DirectoryId",
|
1532
2104
|
# },
|
1533
2105
|
# logging_role: "NullableRole",
|
1534
2106
|
# protocols: ["SFTP"], # accepts SFTP, FTP, FTPS
|
@@ -1557,65 +2129,76 @@ module Aws::Transfer
|
|
1557
2129
|
# user.
|
1558
2130
|
#
|
1559
2131
|
# @option params [String] :home_directory
|
1560
|
-
#
|
1561
|
-
#
|
2132
|
+
# The landing directory (folder) for a user when they log in to the
|
2133
|
+
# server using the client.
|
1562
2134
|
#
|
1563
|
-
#
|
2135
|
+
# A `HomeDirectory` example is `/bucket_name/home/mydirectory`.
|
1564
2136
|
#
|
1565
2137
|
# @option params [String] :home_directory_type
|
1566
2138
|
# The type of landing directory (folder) you want your users' home
|
1567
2139
|
# directory to be when they log into the server. If you set it to
|
1568
|
-
# `PATH`, the user will see the absolute Amazon S3 bucket
|
1569
|
-
# their file transfer protocol clients. If you set it
|
1570
|
-
# will need to provide mappings in the
|
1571
|
-
# you want to make Amazon S3
|
2140
|
+
# `PATH`, the user will see the absolute Amazon S3 bucket or EFS paths
|
2141
|
+
# as is in their file transfer protocol clients. If you set it
|
2142
|
+
# `LOGICAL`, you will need to provide mappings in the
|
2143
|
+
# `HomeDirectoryMappings` for how you want to make Amazon S3 or EFS
|
2144
|
+
# paths visible to your users.
|
1572
2145
|
#
|
1573
2146
|
# @option params [Array<Types::HomeDirectoryMapEntry>] :home_directory_mappings
|
1574
|
-
# Logical directory mappings that specify what Amazon S3
|
1575
|
-
# should be visible to your user and how you want to make
|
1576
|
-
#
|
2147
|
+
# Logical directory mappings that specify what Amazon S3 or Amazon EFS
|
2148
|
+
# paths and keys should be visible to your user and how you want to make
|
2149
|
+
# them visible. You must specify the `Entry` and `Target` pair, where
|
1577
2150
|
# `Entry` shows how the path is made visible and `Target` is the actual
|
1578
|
-
# Amazon S3 path. If you only specify a target, it
|
1579
|
-
# is. You
|
1580
|
-
#
|
2151
|
+
# Amazon S3 or Amazon EFS path. If you only specify a target, it is
|
2152
|
+
# displayed as is. You also must ensure that your Amazon Web Services
|
2153
|
+
# Identity and Access Management (IAM) role provides access to paths in
|
2154
|
+
# `Target`. This value can only be set when `HomeDirectoryType` is set
|
2155
|
+
# to *LOGICAL*.
|
2156
|
+
#
|
2157
|
+
# The following is an `Entry` and `Target` pair example.
|
1581
2158
|
#
|
1582
|
-
# `
|
1583
|
-
# "
|
1584
|
-
# ]'`
|
2159
|
+
# `[ \{ "Entry": "your-personal-report.pdf", "Target":
|
2160
|
+
# "/bucket3/customized-reports/$\{transfer:UserName\}.pdf" \} ]`
|
1585
2161
|
#
|
1586
2162
|
# In most cases, you can use this value instead of the scope-down policy
|
1587
|
-
# to lock your user
|
1588
|
-
# To do this, you can set `Entry` to '/' and set
|
1589
|
-
# HomeDirectory parameter value.
|
1590
|
-
#
|
1591
|
-
#
|
1592
|
-
#
|
1593
|
-
#
|
1594
|
-
#
|
1595
|
-
# the
|
1596
|
-
#
|
1597
|
-
#
|
1598
|
-
#
|
2163
|
+
# to lock down your user to the designated home directory
|
2164
|
+
# ("`chroot`"). To do this, you can set `Entry` to '/' and set
|
2165
|
+
# `Target` to the HomeDirectory parameter value.
|
2166
|
+
#
|
2167
|
+
# The following is an `Entry` and `Target` pair example for `chroot`.
|
2168
|
+
#
|
2169
|
+
# `[ \{ "Entry:": "/", "Target": "/bucket_name/home/mydirectory" \} ]`
|
2170
|
+
#
|
2171
|
+
# <note markdown="1"> If the target of a logical directory entry does not exist in Amazon S3
|
2172
|
+
# or EFS, the entry is ignored. As a workaround, you can use the Amazon
|
2173
|
+
# S3 API or EFS API to create 0 byte objects as place holders for your
|
2174
|
+
# directory. If using the CLI, use the `s3api` or `efsapi` call instead
|
2175
|
+
# of `s3` or `efs` so you can use the put-object operation. For example,
|
2176
|
+
# you use the following: `aws s3api put-object --bucket bucketname --key
|
2177
|
+
# path/to/folder/`. Make sure that the end of the key name ends in a `/`
|
2178
|
+
# for it to be considered a folder.
|
1599
2179
|
#
|
1600
2180
|
# </note>
|
1601
2181
|
#
|
1602
2182
|
# @option params [String] :policy
|
1603
|
-
#
|
1604
|
-
#
|
1605
|
-
#
|
1606
|
-
#
|
2183
|
+
# A scope-down policy for your user so that you can use the same IAM
|
2184
|
+
# role across multiple users. This policy scopes down user access to
|
2185
|
+
# portions of their Amazon S3 bucket. Variables that you can use inside
|
2186
|
+
# this policy include `$\{Transfer:UserName\}`,
|
1607
2187
|
# `$\{Transfer:HomeDirectory\}`, and `$\{Transfer:HomeBucket\}`.
|
1608
2188
|
#
|
1609
|
-
# <note markdown="1">
|
1610
|
-
#
|
1611
|
-
#
|
1612
|
-
#
|
2189
|
+
# <note markdown="1"> This only applies when domain of `ServerId` is S3. Amazon EFS does not
|
2190
|
+
# use scope-down policies.
|
2191
|
+
#
|
2192
|
+
# For scope-down policies, Amazon Web ServicesTransfer Family stores the
|
2193
|
+
# policy as a JSON blob, instead of the Amazon Resource Name (ARN) of
|
2194
|
+
# the policy. You save the policy as a JSON blob and pass it in the
|
2195
|
+
# `Policy` argument.
|
1613
2196
|
#
|
1614
2197
|
# For an example of a scope-down policy, see [Creating a scope-down
|
1615
2198
|
# policy][1].
|
1616
2199
|
#
|
1617
|
-
# For more information, see [AssumeRole][2] in the *
|
1618
|
-
# Service API Reference*.
|
2200
|
+
# For more information, see [AssumeRole][2] in the *Amazon Web Services
|
2201
|
+
# Security Token Service API Reference*.
|
1619
2202
|
#
|
1620
2203
|
# </note>
|
1621
2204
|
#
|
@@ -1625,12 +2208,19 @@ module Aws::Transfer
|
|
1625
2208
|
# [2]: https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html
|
1626
2209
|
#
|
1627
2210
|
# @option params [Types::PosixProfile] :posix_profile
|
2211
|
+
# Specifies the full POSIX identity, including user ID (`Uid`), group ID
|
2212
|
+
# (`Gid`), and any secondary groups IDs (`SecondaryGids`), that controls
|
2213
|
+
# your users' access to your Amazon Elastic File Systems (Amazon EFS).
|
2214
|
+
# The POSIX permissions that are set on files and directories in your
|
2215
|
+
# file system determines the level of access your users get when
|
2216
|
+
# transferring files into and out of your Amazon EFS file systems.
|
1628
2217
|
#
|
1629
2218
|
# @option params [String] :role
|
1630
|
-
#
|
1631
|
-
#
|
1632
|
-
#
|
1633
|
-
#
|
2219
|
+
# Specifies the Amazon Resource Name (ARN) of the IAM role that controls
|
2220
|
+
# your users' access to your Amazon S3 bucket or EFS file system. The
|
2221
|
+
# policies attached to this role determine the level of access that you
|
2222
|
+
# want to provide your users when transferring files into and out of
|
2223
|
+
# your Amazon S3 bucket or EFS file system. The IAM role should also
|
1634
2224
|
# contain a trust relationship that allows the server to access your
|
1635
2225
|
# resources when servicing your users' transfer requests.
|
1636
2226
|
#
|
@@ -1700,7 +2290,7 @@ module Aws::Transfer
|
|
1700
2290
|
params: params,
|
1701
2291
|
config: config)
|
1702
2292
|
context[:gem_name] = 'aws-sdk-transfer'
|
1703
|
-
context[:gem_version] = '1.
|
2293
|
+
context[:gem_version] = '1.35.0'
|
1704
2294
|
Seahorse::Client::Request.new(handlers, context)
|
1705
2295
|
end
|
1706
2296
|
|