@aws-sdk/client-transfer 3.34.0 → 3.37.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (400) hide show
  1. package/CHANGELOG.md +47 -0
  2. package/{dist/cjs → dist-cjs}/Transfer.js +1 -13
  3. package/dist-cjs/TransferClient.js +35 -0
  4. package/{dist/cjs → dist-cjs}/commands/CreateAccessCommand.js +2 -32
  5. package/{dist/cjs → dist-cjs}/commands/CreateServerCommand.js +2 -30
  6. package/{dist/cjs → dist-cjs}/commands/CreateUserCommand.js +2 -33
  7. package/{dist/cjs → dist-cjs}/commands/CreateWorkflowCommand.js +2 -30
  8. package/{dist/cjs → dist-cjs}/commands/DeleteAccessCommand.js +2 -28
  9. package/{dist/cjs → dist-cjs}/commands/DeleteServerCommand.js +2 -29
  10. package/{dist/cjs → dist-cjs}/commands/DeleteSshPublicKeyCommand.js +2 -27
  11. package/{dist/cjs → dist-cjs}/commands/DeleteUserCommand.js +2 -33
  12. package/{dist/cjs → dist-cjs}/commands/DeleteWorkflowCommand.js +2 -27
  13. package/{dist/cjs → dist-cjs}/commands/DescribeAccessCommand.js +2 -32
  14. package/{dist/cjs → dist-cjs}/commands/DescribeExecutionCommand.js +2 -27
  15. package/{dist/cjs → dist-cjs}/commands/DescribeSecurityPolicyCommand.js +2 -30
  16. package/{dist/cjs → dist-cjs}/commands/DescribeServerCommand.js +2 -32
  17. package/{dist/cjs → dist-cjs}/commands/DescribeUserCommand.js +2 -31
  18. package/{dist/cjs → dist-cjs}/commands/DescribeWorkflowCommand.js +2 -27
  19. package/{dist/cjs → dist-cjs}/commands/ImportSshPublicKeyCommand.js +2 -32
  20. package/{dist/cjs → dist-cjs}/commands/ListAccessesCommand.js +2 -27
  21. package/{dist/cjs → dist-cjs}/commands/ListExecutionsCommand.js +2 -27
  22. package/{dist/cjs → dist-cjs}/commands/ListSecurityPoliciesCommand.js +2 -28
  23. package/{dist/cjs → dist-cjs}/commands/ListServersCommand.js +2 -28
  24. package/{dist/cjs → dist-cjs}/commands/ListTagsForResourceCommand.js +2 -28
  25. package/{dist/cjs → dist-cjs}/commands/ListUsersCommand.js +2 -28
  26. package/{dist/cjs → dist-cjs}/commands/ListWorkflowsCommand.js +2 -27
  27. package/{dist/cjs → dist-cjs}/commands/SendWorkflowStepStateCommand.js +2 -31
  28. package/{dist/cjs → dist-cjs}/commands/StartServerCommand.js +2 -35
  29. package/dist-cjs/commands/StopServerCommand.js +36 -0
  30. package/{dist/cjs → dist-cjs}/commands/TagResourceCommand.js +2 -30
  31. package/dist-cjs/commands/TestIdentityProviderCommand.js +36 -0
  32. package/{dist/cjs → dist-cjs}/commands/UntagResourceCommand.js +2 -30
  33. package/{dist/cjs → dist-cjs}/commands/UpdateAccessCommand.js +2 -28
  34. package/{dist/cjs → dist-cjs}/commands/UpdateServerCommand.js +2 -31
  35. package/{dist/cjs → dist-cjs}/commands/UpdateUserCommand.js +2 -32
  36. package/{dist/cjs → dist-cjs}/endpoints.js +1 -2
  37. package/{dist/cjs → dist-cjs}/index.js +0 -1
  38. package/{dist/cjs → dist-cjs}/models/index.js +0 -1
  39. package/{dist/cjs → dist-cjs}/models/models_0.js +0 -304
  40. package/{dist/cjs → dist-cjs}/pagination/Interfaces.js +0 -1
  41. package/{dist/cjs → dist-cjs}/pagination/ListAccessesPaginator.js +1 -12
  42. package/{dist/cjs → dist-cjs}/pagination/ListExecutionsPaginator.js +1 -12
  43. package/{dist/cjs → dist-cjs}/pagination/ListSecurityPoliciesPaginator.js +1 -12
  44. package/{dist/cjs → dist-cjs}/pagination/ListServersPaginator.js +1 -12
  45. package/{dist/cjs → dist-cjs}/pagination/ListTagsForResourcePaginator.js +1 -12
  46. package/{dist/cjs → dist-cjs}/pagination/ListUsersPaginator.js +1 -12
  47. package/{dist/cjs → dist-cjs}/pagination/ListWorkflowsPaginator.js +1 -12
  48. package/{dist/cjs → dist-cjs}/protocols/Aws_json1_1.js +0 -6
  49. package/{dist/cjs → dist-cjs}/runtimeConfig.browser.js +1 -5
  50. package/{dist/cjs → dist-cjs}/runtimeConfig.js +1 -5
  51. package/{dist/cjs → dist-cjs}/runtimeConfig.native.js +0 -4
  52. package/{dist/cjs → dist-cjs}/runtimeConfig.shared.js +1 -5
  53. package/{dist/es → dist-es}/Transfer.js +1 -2
  54. package/{dist/es → dist-es}/TransferClient.js +1 -2
  55. package/{dist/es → dist-es}/commands/CreateAccessCommand.js +2 -3
  56. package/{dist/es → dist-es}/commands/CreateServerCommand.js +2 -3
  57. package/{dist/es → dist-es}/commands/CreateUserCommand.js +2 -3
  58. package/{dist/es → dist-es}/commands/CreateWorkflowCommand.js +2 -3
  59. package/{dist/es → dist-es}/commands/DeleteAccessCommand.js +2 -3
  60. package/{dist/es → dist-es}/commands/DeleteServerCommand.js +2 -3
  61. package/{dist/es → dist-es}/commands/DeleteSshPublicKeyCommand.js +2 -3
  62. package/{dist/es → dist-es}/commands/DeleteUserCommand.js +2 -3
  63. package/{dist/es → dist-es}/commands/DeleteWorkflowCommand.js +2 -3
  64. package/{dist/es → dist-es}/commands/DescribeAccessCommand.js +2 -3
  65. package/{dist/es → dist-es}/commands/DescribeExecutionCommand.js +2 -3
  66. package/{dist/es → dist-es}/commands/DescribeSecurityPolicyCommand.js +2 -3
  67. package/{dist/es → dist-es}/commands/DescribeServerCommand.js +2 -3
  68. package/{dist/es → dist-es}/commands/DescribeUserCommand.js +2 -3
  69. package/{dist/es → dist-es}/commands/DescribeWorkflowCommand.js +2 -3
  70. package/{dist/es → dist-es}/commands/ImportSshPublicKeyCommand.js +2 -3
  71. package/{dist/es → dist-es}/commands/ListAccessesCommand.js +2 -3
  72. package/{dist/es → dist-es}/commands/ListExecutionsCommand.js +2 -3
  73. package/{dist/es → dist-es}/commands/ListSecurityPoliciesCommand.js +2 -3
  74. package/{dist/es → dist-es}/commands/ListServersCommand.js +2 -3
  75. package/{dist/es → dist-es}/commands/ListTagsForResourceCommand.js +2 -3
  76. package/{dist/es → dist-es}/commands/ListUsersCommand.js +2 -3
  77. package/{dist/es → dist-es}/commands/ListWorkflowsCommand.js +2 -3
  78. package/{dist/es → dist-es}/commands/SendWorkflowStepStateCommand.js +2 -3
  79. package/{dist/es → dist-es}/commands/StartServerCommand.js +2 -3
  80. package/{dist/es → dist-es}/commands/StopServerCommand.js +2 -3
  81. package/{dist/es → dist-es}/commands/TagResourceCommand.js +2 -3
  82. package/{dist/es → dist-es}/commands/TestIdentityProviderCommand.js +2 -3
  83. package/{dist/es → dist-es}/commands/UntagResourceCommand.js +2 -3
  84. package/{dist/es → dist-es}/commands/UpdateAccessCommand.js +2 -3
  85. package/{dist/es → dist-es}/commands/UpdateServerCommand.js +2 -3
  86. package/{dist/es → dist-es}/commands/UpdateUserCommand.js +2 -3
  87. package/{dist/es → dist-es}/endpoints.js +1 -2
  88. package/{dist/types/index.d.ts → dist-es/index.js} +0 -0
  89. package/{dist/types/models/index.d.ts → dist-es/models/index.js} +0 -0
  90. package/{dist/es → dist-es}/models/models_0.js +0 -1
  91. package/dist-es/pagination/Interfaces.js +1 -0
  92. package/{dist/es → dist-es}/pagination/ListAccessesPaginator.js +1 -2
  93. package/{dist/es → dist-es}/pagination/ListExecutionsPaginator.js +1 -2
  94. package/{dist/es → dist-es}/pagination/ListSecurityPoliciesPaginator.js +1 -2
  95. package/{dist/es → dist-es}/pagination/ListServersPaginator.js +1 -2
  96. package/{dist/es → dist-es}/pagination/ListTagsForResourcePaginator.js +1 -2
  97. package/{dist/es → dist-es}/pagination/ListUsersPaginator.js +1 -2
  98. package/{dist/es → dist-es}/pagination/ListWorkflowsPaginator.js +1 -2
  99. package/{dist/es → dist-es}/protocols/Aws_json1_1.js +0 -1
  100. package/{dist/es → dist-es}/runtimeConfig.browser.js +1 -2
  101. package/{dist/es → dist-es}/runtimeConfig.js +1 -2
  102. package/{dist/es → dist-es}/runtimeConfig.native.js +0 -1
  103. package/{dist/es → dist-es}/runtimeConfig.shared.js +1 -2
  104. package/{dist/types → dist-types}/Transfer.d.ts +2 -2
  105. package/{dist/types → dist-types}/TransferClient.d.ts +8 -8
  106. package/{dist/types → dist-types}/commands/CreateAccessCommand.d.ts +3 -3
  107. package/{dist/types → dist-types}/commands/CreateServerCommand.d.ts +3 -3
  108. package/{dist/types → dist-types}/commands/CreateUserCommand.d.ts +3 -3
  109. package/{dist/types → dist-types}/commands/CreateWorkflowCommand.d.ts +3 -3
  110. package/{dist/types → dist-types}/commands/DeleteAccessCommand.d.ts +3 -3
  111. package/{dist/types → dist-types}/commands/DeleteServerCommand.d.ts +3 -3
  112. package/{dist/types → dist-types}/commands/DeleteSshPublicKeyCommand.d.ts +3 -3
  113. package/{dist/types → dist-types}/commands/DeleteUserCommand.d.ts +3 -3
  114. package/{dist/types → dist-types}/commands/DeleteWorkflowCommand.d.ts +3 -3
  115. package/{dist/types → dist-types}/commands/DescribeAccessCommand.d.ts +3 -3
  116. package/{dist/types → dist-types}/commands/DescribeExecutionCommand.d.ts +3 -3
  117. package/{dist/types → dist-types}/commands/DescribeSecurityPolicyCommand.d.ts +3 -3
  118. package/{dist/types → dist-types}/commands/DescribeServerCommand.d.ts +3 -3
  119. package/{dist/types → dist-types}/commands/DescribeUserCommand.d.ts +3 -3
  120. package/{dist/types → dist-types}/commands/DescribeWorkflowCommand.d.ts +3 -3
  121. package/{dist/types → dist-types}/commands/ImportSshPublicKeyCommand.d.ts +3 -3
  122. package/{dist/types → dist-types}/commands/ListAccessesCommand.d.ts +3 -3
  123. package/{dist/types → dist-types}/commands/ListExecutionsCommand.d.ts +3 -3
  124. package/{dist/types → dist-types}/commands/ListSecurityPoliciesCommand.d.ts +3 -3
  125. package/{dist/types → dist-types}/commands/ListServersCommand.d.ts +3 -3
  126. package/{dist/types → dist-types}/commands/ListTagsForResourceCommand.d.ts +3 -3
  127. package/{dist/types → dist-types}/commands/ListUsersCommand.d.ts +3 -3
  128. package/{dist/types → dist-types}/commands/ListWorkflowsCommand.d.ts +3 -3
  129. package/{dist/types → dist-types}/commands/SendWorkflowStepStateCommand.d.ts +3 -3
  130. package/{dist/types → dist-types}/commands/StartServerCommand.d.ts +3 -3
  131. package/{dist/types → dist-types}/commands/StopServerCommand.d.ts +3 -3
  132. package/{dist/types → dist-types}/commands/TagResourceCommand.d.ts +3 -3
  133. package/{dist/types → dist-types}/commands/TestIdentityProviderCommand.d.ts +3 -3
  134. package/{dist/types → dist-types}/commands/UntagResourceCommand.d.ts +3 -3
  135. package/{dist/types → dist-types}/commands/UpdateAccessCommand.d.ts +3 -3
  136. package/{dist/types → dist-types}/commands/UpdateServerCommand.d.ts +3 -3
  137. package/{dist/types → dist-types}/commands/UpdateUserCommand.d.ts +3 -3
  138. package/{dist/types → dist-types}/endpoints.d.ts +0 -0
  139. package/{index.ts → dist-types/index.d.ts} +0 -0
  140. package/{models/index.ts → dist-types/models/index.d.ts} +0 -0
  141. package/{dist/types → dist-types}/models/models_0.d.ts +37 -34
  142. package/{dist/types → dist-types}/pagination/Interfaces.d.ts +1 -1
  143. package/{dist/types → dist-types}/pagination/ListAccessesPaginator.d.ts +1 -1
  144. package/{dist/types → dist-types}/pagination/ListExecutionsPaginator.d.ts +1 -1
  145. package/{dist/types → dist-types}/pagination/ListSecurityPoliciesPaginator.d.ts +1 -1
  146. package/{dist/types → dist-types}/pagination/ListServersPaginator.d.ts +1 -1
  147. package/{dist/types → dist-types}/pagination/ListTagsForResourcePaginator.d.ts +1 -1
  148. package/{dist/types → dist-types}/pagination/ListUsersPaginator.d.ts +1 -1
  149. package/{dist/types → dist-types}/pagination/ListWorkflowsPaginator.d.ts +1 -1
  150. package/{dist/types → dist-types}/protocols/Aws_json1_1.d.ts +2 -2
  151. package/{dist/types → dist-types}/runtimeConfig.browser.d.ts +0 -0
  152. package/{dist/types → dist-types}/runtimeConfig.d.ts +1 -1
  153. package/{dist/types → dist-types}/runtimeConfig.native.d.ts +0 -0
  154. package/{dist/types → dist-types}/runtimeConfig.shared.d.ts +0 -0
  155. package/{dist/types → dist-types}/ts3.4/Transfer.d.ts +35 -241
  156. package/{dist/types → dist-types}/ts3.4/TransferClient.d.ts +32 -105
  157. package/dist-types/ts3.4/commands/CreateAccessCommand.d.ts +17 -0
  158. package/dist-types/ts3.4/commands/CreateServerCommand.d.ts +17 -0
  159. package/dist-types/ts3.4/commands/CreateUserCommand.d.ts +17 -0
  160. package/dist-types/ts3.4/commands/CreateWorkflowCommand.d.ts +17 -0
  161. package/dist-types/ts3.4/commands/DeleteAccessCommand.d.ts +17 -0
  162. package/dist-types/ts3.4/commands/DeleteServerCommand.d.ts +17 -0
  163. package/dist-types/ts3.4/commands/DeleteSshPublicKeyCommand.d.ts +17 -0
  164. package/dist-types/ts3.4/commands/DeleteUserCommand.d.ts +17 -0
  165. package/dist-types/ts3.4/commands/DeleteWorkflowCommand.d.ts +17 -0
  166. package/dist-types/ts3.4/commands/DescribeAccessCommand.d.ts +17 -0
  167. package/dist-types/ts3.4/commands/DescribeExecutionCommand.d.ts +17 -0
  168. package/dist-types/ts3.4/commands/DescribeSecurityPolicyCommand.d.ts +17 -0
  169. package/dist-types/ts3.4/commands/DescribeServerCommand.d.ts +17 -0
  170. package/dist-types/ts3.4/commands/DescribeUserCommand.d.ts +17 -0
  171. package/{dist/types → dist-types}/ts3.4/commands/DescribeWorkflowCommand.d.ts +5 -23
  172. package/dist-types/ts3.4/commands/ImportSshPublicKeyCommand.d.ts +17 -0
  173. package/dist-types/ts3.4/commands/ListAccessesCommand.d.ts +17 -0
  174. package/dist-types/ts3.4/commands/ListExecutionsCommand.d.ts +17 -0
  175. package/dist-types/ts3.4/commands/ListSecurityPoliciesCommand.d.ts +17 -0
  176. package/dist-types/ts3.4/commands/ListServersCommand.d.ts +17 -0
  177. package/dist-types/ts3.4/commands/ListTagsForResourceCommand.d.ts +17 -0
  178. package/dist-types/ts3.4/commands/ListUsersCommand.d.ts +17 -0
  179. package/{dist/types → dist-types}/ts3.4/commands/ListWorkflowsCommand.d.ts +5 -23
  180. package/dist-types/ts3.4/commands/SendWorkflowStepStateCommand.d.ts +17 -0
  181. package/dist-types/ts3.4/commands/StartServerCommand.d.ts +17 -0
  182. package/dist-types/ts3.4/commands/StopServerCommand.d.ts +17 -0
  183. package/dist-types/ts3.4/commands/TagResourceCommand.d.ts +17 -0
  184. package/dist-types/ts3.4/commands/TestIdentityProviderCommand.d.ts +17 -0
  185. package/dist-types/ts3.4/commands/UntagResourceCommand.d.ts +17 -0
  186. package/dist-types/ts3.4/commands/UpdateAccessCommand.d.ts +17 -0
  187. package/dist-types/ts3.4/commands/UpdateServerCommand.d.ts +17 -0
  188. package/dist-types/ts3.4/commands/UpdateUserCommand.d.ts +17 -0
  189. package/{dist/types → dist-types}/ts3.4/endpoints.d.ts +0 -0
  190. package/{dist/types → dist-types}/ts3.4/index.d.ts +0 -0
  191. package/{dist/types → dist-types}/ts3.4/models/index.d.ts +0 -0
  192. package/dist-types/ts3.4/models/models_0.d.ts +1344 -0
  193. package/{dist/types → dist-types}/ts3.4/pagination/Interfaces.d.ts +1 -1
  194. package/{dist/types → dist-types}/ts3.4/pagination/ListAccessesPaginator.d.ts +1 -1
  195. package/{dist/types → dist-types}/ts3.4/pagination/ListExecutionsPaginator.d.ts +1 -1
  196. package/{dist/types → dist-types}/ts3.4/pagination/ListSecurityPoliciesPaginator.d.ts +1 -1
  197. package/{dist/types → dist-types}/ts3.4/pagination/ListServersPaginator.d.ts +1 -1
  198. package/{dist/types → dist-types}/ts3.4/pagination/ListTagsForResourcePaginator.d.ts +1 -1
  199. package/{dist/types → dist-types}/ts3.4/pagination/ListUsersPaginator.d.ts +1 -1
  200. package/{dist/types → dist-types}/ts3.4/pagination/ListWorkflowsPaginator.d.ts +1 -1
  201. package/{dist/types → dist-types}/ts3.4/protocols/Aws_json1_1.d.ts +2 -2
  202. package/{dist/types → dist-types}/ts3.4/runtimeConfig.browser.d.ts +1 -3
  203. package/{dist/types → dist-types}/ts3.4/runtimeConfig.d.ts +2 -4
  204. package/{dist/types → dist-types}/ts3.4/runtimeConfig.native.d.ts +1 -3
  205. package/{dist/types → dist-types}/ts3.4/runtimeConfig.shared.d.ts +1 -3
  206. package/package.json +45 -42
  207. package/Transfer.ts +0 -1227
  208. package/TransferClient.ts +0 -354
  209. package/commands/CreateAccessCommand.ts +0 -99
  210. package/commands/CreateServerCommand.ts +0 -97
  211. package/commands/CreateUserCommand.ts +0 -100
  212. package/commands/CreateWorkflowCommand.ts +0 -97
  213. package/commands/DeleteAccessCommand.ts +0 -95
  214. package/commands/DeleteServerCommand.ts +0 -96
  215. package/commands/DeleteSshPublicKeyCommand.ts +0 -94
  216. package/commands/DeleteUserCommand.ts +0 -100
  217. package/commands/DeleteWorkflowCommand.ts +0 -94
  218. package/commands/DescribeAccessCommand.ts +0 -99
  219. package/commands/DescribeExecutionCommand.ts +0 -94
  220. package/commands/DescribeSecurityPolicyCommand.ts +0 -97
  221. package/commands/DescribeServerCommand.ts +0 -99
  222. package/commands/DescribeUserCommand.ts +0 -98
  223. package/commands/DescribeWorkflowCommand.ts +0 -94
  224. package/commands/ImportSshPublicKeyCommand.ts +0 -99
  225. package/commands/ListAccessesCommand.ts +0 -94
  226. package/commands/ListExecutionsCommand.ts +0 -94
  227. package/commands/ListSecurityPoliciesCommand.ts +0 -95
  228. package/commands/ListServersCommand.ts +0 -95
  229. package/commands/ListTagsForResourceCommand.ts +0 -95
  230. package/commands/ListUsersCommand.ts +0 -92
  231. package/commands/ListWorkflowsCommand.ts +0 -94
  232. package/commands/SendWorkflowStepStateCommand.ts +0 -98
  233. package/commands/StartServerCommand.ts +0 -102
  234. package/commands/StopServerCommand.ts +0 -108
  235. package/commands/TagResourceCommand.ts +0 -97
  236. package/commands/TestIdentityProviderCommand.ts +0 -132
  237. package/commands/UntagResourceCommand.ts +0 -97
  238. package/commands/UpdateAccessCommand.ts +0 -95
  239. package/commands/UpdateServerCommand.ts +0 -98
  240. package/commands/UpdateUserCommand.ts +0 -99
  241. package/dist/cjs/Transfer.js.map +0 -1
  242. package/dist/cjs/TransferClient.js +0 -52
  243. package/dist/cjs/TransferClient.js.map +0 -1
  244. package/dist/cjs/commands/CreateAccessCommand.js.map +0 -1
  245. package/dist/cjs/commands/CreateServerCommand.js.map +0 -1
  246. package/dist/cjs/commands/CreateUserCommand.js.map +0 -1
  247. package/dist/cjs/commands/CreateWorkflowCommand.js.map +0 -1
  248. package/dist/cjs/commands/DeleteAccessCommand.js.map +0 -1
  249. package/dist/cjs/commands/DeleteServerCommand.js.map +0 -1
  250. package/dist/cjs/commands/DeleteSshPublicKeyCommand.js.map +0 -1
  251. package/dist/cjs/commands/DeleteUserCommand.js.map +0 -1
  252. package/dist/cjs/commands/DeleteWorkflowCommand.js.map +0 -1
  253. package/dist/cjs/commands/DescribeAccessCommand.js.map +0 -1
  254. package/dist/cjs/commands/DescribeExecutionCommand.js.map +0 -1
  255. package/dist/cjs/commands/DescribeSecurityPolicyCommand.js.map +0 -1
  256. package/dist/cjs/commands/DescribeServerCommand.js.map +0 -1
  257. package/dist/cjs/commands/DescribeUserCommand.js.map +0 -1
  258. package/dist/cjs/commands/DescribeWorkflowCommand.js.map +0 -1
  259. package/dist/cjs/commands/ImportSshPublicKeyCommand.js.map +0 -1
  260. package/dist/cjs/commands/ListAccessesCommand.js.map +0 -1
  261. package/dist/cjs/commands/ListExecutionsCommand.js.map +0 -1
  262. package/dist/cjs/commands/ListSecurityPoliciesCommand.js.map +0 -1
  263. package/dist/cjs/commands/ListServersCommand.js.map +0 -1
  264. package/dist/cjs/commands/ListTagsForResourceCommand.js.map +0 -1
  265. package/dist/cjs/commands/ListUsersCommand.js.map +0 -1
  266. package/dist/cjs/commands/ListWorkflowsCommand.js.map +0 -1
  267. package/dist/cjs/commands/SendWorkflowStepStateCommand.js.map +0 -1
  268. package/dist/cjs/commands/StartServerCommand.js.map +0 -1
  269. package/dist/cjs/commands/StopServerCommand.js +0 -75
  270. package/dist/cjs/commands/StopServerCommand.js.map +0 -1
  271. package/dist/cjs/commands/TagResourceCommand.js.map +0 -1
  272. package/dist/cjs/commands/TestIdentityProviderCommand.js +0 -99
  273. package/dist/cjs/commands/TestIdentityProviderCommand.js.map +0 -1
  274. package/dist/cjs/commands/UntagResourceCommand.js.map +0 -1
  275. package/dist/cjs/commands/UpdateAccessCommand.js.map +0 -1
  276. package/dist/cjs/commands/UpdateServerCommand.js.map +0 -1
  277. package/dist/cjs/commands/UpdateUserCommand.js.map +0 -1
  278. package/dist/cjs/endpoints.js.map +0 -1
  279. package/dist/cjs/index.js.map +0 -1
  280. package/dist/cjs/models/index.js.map +0 -1
  281. package/dist/cjs/models/models_0.js.map +0 -1
  282. package/dist/cjs/package.json +0 -91
  283. package/dist/cjs/pagination/Interfaces.js.map +0 -1
  284. package/dist/cjs/pagination/ListAccessesPaginator.js.map +0 -1
  285. package/dist/cjs/pagination/ListExecutionsPaginator.js.map +0 -1
  286. package/dist/cjs/pagination/ListSecurityPoliciesPaginator.js.map +0 -1
  287. package/dist/cjs/pagination/ListServersPaginator.js.map +0 -1
  288. package/dist/cjs/pagination/ListTagsForResourcePaginator.js.map +0 -1
  289. package/dist/cjs/pagination/ListUsersPaginator.js.map +0 -1
  290. package/dist/cjs/pagination/ListWorkflowsPaginator.js.map +0 -1
  291. package/dist/cjs/protocols/Aws_json1_1.js.map +0 -1
  292. package/dist/cjs/runtimeConfig.browser.js.map +0 -1
  293. package/dist/cjs/runtimeConfig.js.map +0 -1
  294. package/dist/cjs/runtimeConfig.native.js.map +0 -1
  295. package/dist/cjs/runtimeConfig.shared.js.map +0 -1
  296. package/dist/es/Transfer.js.map +0 -1
  297. package/dist/es/TransferClient.js.map +0 -1
  298. package/dist/es/commands/CreateAccessCommand.js.map +0 -1
  299. package/dist/es/commands/CreateServerCommand.js.map +0 -1
  300. package/dist/es/commands/CreateUserCommand.js.map +0 -1
  301. package/dist/es/commands/CreateWorkflowCommand.js.map +0 -1
  302. package/dist/es/commands/DeleteAccessCommand.js.map +0 -1
  303. package/dist/es/commands/DeleteServerCommand.js.map +0 -1
  304. package/dist/es/commands/DeleteSshPublicKeyCommand.js.map +0 -1
  305. package/dist/es/commands/DeleteUserCommand.js.map +0 -1
  306. package/dist/es/commands/DeleteWorkflowCommand.js.map +0 -1
  307. package/dist/es/commands/DescribeAccessCommand.js.map +0 -1
  308. package/dist/es/commands/DescribeExecutionCommand.js.map +0 -1
  309. package/dist/es/commands/DescribeSecurityPolicyCommand.js.map +0 -1
  310. package/dist/es/commands/DescribeServerCommand.js.map +0 -1
  311. package/dist/es/commands/DescribeUserCommand.js.map +0 -1
  312. package/dist/es/commands/DescribeWorkflowCommand.js.map +0 -1
  313. package/dist/es/commands/ImportSshPublicKeyCommand.js.map +0 -1
  314. package/dist/es/commands/ListAccessesCommand.js.map +0 -1
  315. package/dist/es/commands/ListExecutionsCommand.js.map +0 -1
  316. package/dist/es/commands/ListSecurityPoliciesCommand.js.map +0 -1
  317. package/dist/es/commands/ListServersCommand.js.map +0 -1
  318. package/dist/es/commands/ListTagsForResourceCommand.js.map +0 -1
  319. package/dist/es/commands/ListUsersCommand.js.map +0 -1
  320. package/dist/es/commands/ListWorkflowsCommand.js.map +0 -1
  321. package/dist/es/commands/SendWorkflowStepStateCommand.js.map +0 -1
  322. package/dist/es/commands/StartServerCommand.js.map +0 -1
  323. package/dist/es/commands/StopServerCommand.js.map +0 -1
  324. package/dist/es/commands/TagResourceCommand.js.map +0 -1
  325. package/dist/es/commands/TestIdentityProviderCommand.js.map +0 -1
  326. package/dist/es/commands/UntagResourceCommand.js.map +0 -1
  327. package/dist/es/commands/UpdateAccessCommand.js.map +0 -1
  328. package/dist/es/commands/UpdateServerCommand.js.map +0 -1
  329. package/dist/es/commands/UpdateUserCommand.js.map +0 -1
  330. package/dist/es/endpoints.js.map +0 -1
  331. package/dist/es/index.js +0 -44
  332. package/dist/es/index.js.map +0 -1
  333. package/dist/es/models/index.js +0 -2
  334. package/dist/es/models/index.js.map +0 -1
  335. package/dist/es/models/models_0.js.map +0 -1
  336. package/dist/es/package.json +0 -91
  337. package/dist/es/pagination/Interfaces.js +0 -2
  338. package/dist/es/pagination/Interfaces.js.map +0 -1
  339. package/dist/es/pagination/ListAccessesPaginator.js.map +0 -1
  340. package/dist/es/pagination/ListExecutionsPaginator.js.map +0 -1
  341. package/dist/es/pagination/ListSecurityPoliciesPaginator.js.map +0 -1
  342. package/dist/es/pagination/ListServersPaginator.js.map +0 -1
  343. package/dist/es/pagination/ListTagsForResourcePaginator.js.map +0 -1
  344. package/dist/es/pagination/ListUsersPaginator.js.map +0 -1
  345. package/dist/es/pagination/ListWorkflowsPaginator.js.map +0 -1
  346. package/dist/es/protocols/Aws_json1_1.js.map +0 -1
  347. package/dist/es/runtimeConfig.browser.js.map +0 -1
  348. package/dist/es/runtimeConfig.js.map +0 -1
  349. package/dist/es/runtimeConfig.native.js.map +0 -1
  350. package/dist/es/runtimeConfig.shared.js.map +0 -1
  351. package/dist/types/ts3.4/commands/CreateAccessCommand.d.ts +0 -40
  352. package/dist/types/ts3.4/commands/CreateServerCommand.d.ts +0 -38
  353. package/dist/types/ts3.4/commands/CreateUserCommand.d.ts +0 -41
  354. package/dist/types/ts3.4/commands/CreateWorkflowCommand.d.ts +0 -38
  355. package/dist/types/ts3.4/commands/DeleteAccessCommand.d.ts +0 -36
  356. package/dist/types/ts3.4/commands/DeleteServerCommand.d.ts +0 -37
  357. package/dist/types/ts3.4/commands/DeleteSshPublicKeyCommand.d.ts +0 -35
  358. package/dist/types/ts3.4/commands/DeleteUserCommand.d.ts +0 -41
  359. package/dist/types/ts3.4/commands/DeleteWorkflowCommand.d.ts +0 -35
  360. package/dist/types/ts3.4/commands/DescribeAccessCommand.d.ts +0 -40
  361. package/dist/types/ts3.4/commands/DescribeExecutionCommand.d.ts +0 -35
  362. package/dist/types/ts3.4/commands/DescribeSecurityPolicyCommand.d.ts +0 -38
  363. package/dist/types/ts3.4/commands/DescribeServerCommand.d.ts +0 -40
  364. package/dist/types/ts3.4/commands/DescribeUserCommand.d.ts +0 -39
  365. package/dist/types/ts3.4/commands/ImportSshPublicKeyCommand.d.ts +0 -40
  366. package/dist/types/ts3.4/commands/ListAccessesCommand.d.ts +0 -35
  367. package/dist/types/ts3.4/commands/ListExecutionsCommand.d.ts +0 -35
  368. package/dist/types/ts3.4/commands/ListSecurityPoliciesCommand.d.ts +0 -36
  369. package/dist/types/ts3.4/commands/ListServersCommand.d.ts +0 -36
  370. package/dist/types/ts3.4/commands/ListTagsForResourceCommand.d.ts +0 -36
  371. package/dist/types/ts3.4/commands/ListUsersCommand.d.ts +0 -36
  372. package/dist/types/ts3.4/commands/SendWorkflowStepStateCommand.d.ts +0 -39
  373. package/dist/types/ts3.4/commands/StartServerCommand.d.ts +0 -43
  374. package/dist/types/ts3.4/commands/StopServerCommand.d.ts +0 -49
  375. package/dist/types/ts3.4/commands/TagResourceCommand.d.ts +0 -38
  376. package/dist/types/ts3.4/commands/TestIdentityProviderCommand.d.ts +0 -73
  377. package/dist/types/ts3.4/commands/UntagResourceCommand.d.ts +0 -38
  378. package/dist/types/ts3.4/commands/UpdateAccessCommand.d.ts +0 -36
  379. package/dist/types/ts3.4/commands/UpdateServerCommand.d.ts +0 -39
  380. package/dist/types/ts3.4/commands/UpdateUserCommand.d.ts +0 -40
  381. package/dist/types/ts3.4/models/models_0.d.ts +0 -3311
  382. package/endpoints.ts +0 -91
  383. package/jest.config.js +0 -4
  384. package/models/models_0.ts +0 -3940
  385. package/pagination/Interfaces.ts +0 -7
  386. package/pagination/ListAccessesPaginator.ts +0 -58
  387. package/pagination/ListExecutionsPaginator.ts +0 -58
  388. package/pagination/ListSecurityPoliciesPaginator.ts +0 -58
  389. package/pagination/ListServersPaginator.ts +0 -54
  390. package/pagination/ListTagsForResourcePaginator.ts +0 -58
  391. package/pagination/ListUsersPaginator.ts +0 -54
  392. package/pagination/ListWorkflowsPaginator.ts +0 -58
  393. package/protocols/Aws_json1_1.ts +0 -5078
  394. package/runtimeConfig.browser.ts +0 -40
  395. package/runtimeConfig.native.ts +0 -16
  396. package/runtimeConfig.shared.ts +0 -16
  397. package/runtimeConfig.ts +0 -45
  398. package/tsconfig.es.json +0 -10
  399. package/tsconfig.json +0 -31
  400. package/tsconfig.types.json +0 -8
@@ -1,3940 +0,0 @@
1
- import { SENSITIVE_STRING } from "@aws-sdk/smithy-client";
2
- import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types";
3
-
4
- /**
5
- * <p>You do not have sufficient access to perform this action.</p>
6
- */
7
- export interface AccessDeniedException extends __SmithyException, $MetadataBearer {
8
- name: "AccessDeniedException";
9
- $fault: "client";
10
- Message?: string;
11
- }
12
-
13
- export namespace AccessDeniedException {
14
- /**
15
- * @internal
16
- */
17
- export const filterSensitiveLog = (obj: AccessDeniedException): any => ({
18
- ...obj,
19
- });
20
- }
21
-
22
- /**
23
- * <p>This exception is thrown when the <code>UpdateServer</code> is called for a file transfer
24
- * protocol-enabled server that has VPC as the endpoint type and the server's
25
- * <code>VpcEndpointID</code> is not in the available state.</p>
26
- */
27
- export interface ConflictException extends __SmithyException, $MetadataBearer {
28
- name: "ConflictException";
29
- $fault: "client";
30
- Message: string | undefined;
31
- }
32
-
33
- export namespace ConflictException {
34
- /**
35
- * @internal
36
- */
37
- export const filterSensitiveLog = (obj: ConflictException): any => ({
38
- ...obj,
39
- });
40
- }
41
-
42
- /**
43
- * <p>Specifies the details for the file location for the file being used in the workflow. Only applicable if you are using Amazon EFS for storage.</p>
44
- * <p>
45
- * You need to provide the file system ID and the pathname.
46
- * The pathname can represent either a path or a file.
47
- * This is determined by whether or not you end the path value with the forward slash (/) character.
48
- * If the final character is "/", then your file is copied to the folder, and its name does not change.
49
- * If, rather, the final character is alphanumeric, your uploaded file is renamed to the path value. In this case, if a file with that name already exists, it is overwritten.
50
- * </p>
51
- * <p>For example, if your path is <code>shared-files/bob/</code>, your uploaded files are copied to the <code>shared-files/bob/</code>, folder.
52
- * If your path is <code>shared-files/today</code>, each uploaded file is copied to the <code>shared-files</code> folder and named <code>today</code>:
53
- * each upload overwrites the previous version of the <code>bob</code> file.</p>
54
- */
55
- export interface EfsFileLocation {
56
- /**
57
- * <p>The ID of the file system, assigned by Amazon EFS.</p>
58
- */
59
- FileSystemId?: string;
60
-
61
- /**
62
- * <p>The pathname for the folder being used by a workflow.</p>
63
- */
64
- Path?: string;
65
- }
66
-
67
- export namespace EfsFileLocation {
68
- /**
69
- * @internal
70
- */
71
- export const filterSensitiveLog = (obj: EfsFileLocation): any => ({
72
- ...obj,
73
- });
74
- }
75
-
76
- /**
77
- * <p>Specifies the details for the S3 file being copied.</p>
78
- */
79
- export interface S3InputFileLocation {
80
- /**
81
- * <p>Specifies the S3 bucket that contains the file being copied.</p>
82
- */
83
- Bucket?: string;
84
-
85
- /**
86
- * <p>The name assigned to the file when it was created in S3. You use the object key to retrieve the object.</p>
87
- */
88
- Key?: string;
89
- }
90
-
91
- export namespace S3InputFileLocation {
92
- /**
93
- * @internal
94
- */
95
- export const filterSensitiveLog = (obj: S3InputFileLocation): any => ({
96
- ...obj,
97
- });
98
- }
99
-
100
- /**
101
- * <p>Specifies the location for the file being copied. Only applicable for the Copy type of workflow steps.</p>
102
- */
103
- export interface InputFileLocation {
104
- /**
105
- * <p>Specifies the details for the S3 file being copied.</p>
106
- */
107
- S3FileLocation?: S3InputFileLocation;
108
-
109
- /**
110
- * <p>Specifies the details for the Amazon EFS file being copied.</p>
111
- */
112
- EfsFileLocation?: EfsFileLocation;
113
- }
114
-
115
- export namespace InputFileLocation {
116
- /**
117
- * @internal
118
- */
119
- export const filterSensitiveLog = (obj: InputFileLocation): any => ({
120
- ...obj,
121
- });
122
- }
123
-
124
- export enum OverwriteExisting {
125
- FALSE = "FALSE",
126
- TRUE = "TRUE",
127
- }
128
-
129
- /**
130
- * <p>Each step type has its own <code>StepDetails</code> structure.</p>
131
- */
132
- export interface CopyStepDetails {
133
- /**
134
- * <p>The name of the step, used as an identifier.</p>
135
- */
136
- Name?: string;
137
-
138
- /**
139
- * <p>Specifies the location for the file being copied. Only applicable for the Copy type of workflow steps.</p>
140
- */
141
- DestinationFileLocation?: InputFileLocation;
142
-
143
- /**
144
- * <p>A flag that indicates whether or not to overwrite an existing file of the same name.
145
- * The default is <code>FALSE</code>.</p>
146
- */
147
- OverwriteExisting?: OverwriteExisting | string;
148
- }
149
-
150
- export namespace CopyStepDetails {
151
- /**
152
- * @internal
153
- */
154
- export const filterSensitiveLog = (obj: CopyStepDetails): any => ({
155
- ...obj,
156
- });
157
- }
158
-
159
- /**
160
- * <p>Represents an object that contains entries and targets for
161
- * <code>HomeDirectoryMappings</code>.</p>
162
- * <p>The following is an <code>Entry</code> and <code>Target</code> pair example for <code>chroot</code>.</p>
163
- * <p>
164
- * <code>[ { "Entry:": "/", "Target": "/bucket_name/home/mydirectory" } ]</code>
165
- * </p>
166
- *
167
- * <note>
168
- * <p>If the target of a logical directory entry does not exist in Amazon S3 or EFS, the entry is
169
- * ignored. As a workaround, you can use the Amazon S3 API or EFS API to create 0 byte objects as place
170
- * holders for your directory. If using the CLI, use the <code>s3api</code> or <code>efsapi</code> call instead of
171
- * <code>s3</code> or <code>efs</code> so you can use the put-object operation. For example, you use the
172
- * following: <code>aws s3api put-object --bucket bucketname --key path/to/folder/</code>. Make
173
- * sure that the end of the key name ends in a <code>/</code> for it to be considered a folder.</p>
174
- * </note>
175
- */
176
- export interface HomeDirectoryMapEntry {
177
- /**
178
- * <p>Represents an entry for <code>HomeDirectoryMappings</code>.</p>
179
- */
180
- Entry: string | undefined;
181
-
182
- /**
183
- * <p>Represents the map target that is used in a <code>HomeDirectorymapEntry</code>.</p>
184
- */
185
- Target: string | undefined;
186
- }
187
-
188
- export namespace HomeDirectoryMapEntry {
189
- /**
190
- * @internal
191
- */
192
- export const filterSensitiveLog = (obj: HomeDirectoryMapEntry): any => ({
193
- ...obj,
194
- });
195
- }
196
-
197
- export enum HomeDirectoryType {
198
- LOGICAL = "LOGICAL",
199
- PATH = "PATH",
200
- }
201
-
202
- /**
203
- * <p>The full POSIX identity, including user ID (<code>Uid</code>), group ID
204
- * (<code>Gid</code>), and any secondary groups IDs (<code>SecondaryGids</code>), that controls
205
- * your users' access to your Amazon EFS file systems. The POSIX permissions that are set on
206
- * files and directories in your file system determine the level of access your users get when
207
- * transferring files into and out of your Amazon EFS file systems.</p>
208
- */
209
- export interface PosixProfile {
210
- /**
211
- * <p>The POSIX user ID used for all EFS operations by this user.</p>
212
- */
213
- Uid: number | undefined;
214
-
215
- /**
216
- * <p>The POSIX group ID used for all EFS operations by this user.</p>
217
- */
218
- Gid: number | undefined;
219
-
220
- /**
221
- * <p>The secondary POSIX group IDs used for all EFS operations by this user.</p>
222
- */
223
- SecondaryGids?: number[];
224
- }
225
-
226
- export namespace PosixProfile {
227
- /**
228
- * @internal
229
- */
230
- export const filterSensitiveLog = (obj: PosixProfile): any => ({
231
- ...obj,
232
- });
233
- }
234
-
235
- export interface CreateAccessRequest {
236
- /**
237
- * <p>The landing directory (folder) for a user when they log in to the server using the client.</p>
238
- * <p>A <code>HomeDirectory</code> example is <code>/bucket_name/home/mydirectory</code>.</p>
239
- */
240
- HomeDirectory?: string;
241
-
242
- /**
243
- * <p>The type of landing directory (folder) you want your users' home directory to be when they log into the server.
244
- * If you set it to <code>PATH</code>, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients.
245
- * If you set it <code>LOGICAL</code>, you need to provide mappings in the <code>HomeDirectoryMappings</code> for how you want to make Amazon
246
- * S3 or EFS paths visible to your users.</p>
247
- */
248
- HomeDirectoryType?: HomeDirectoryType | string;
249
-
250
- /**
251
- * <p>Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should
252
- * be visible to your user and how you want to make them visible. You must specify the
253
- * <code>Entry</code> and <code>Target</code> pair, where <code>Entry</code> shows how the path
254
- * is made visible and <code>Target</code> is the actual Amazon S3 or Amazon EFS path. If you
255
- * only specify a target, it is displayed as is. You also must ensure that your Amazon Web Services Identity
256
- * and Access Management (IAM) role provides access to paths in <code>Target</code>. This value
257
- * can only be set when <code>HomeDirectoryType</code> is set to
258
- * <i>LOGICAL</i>.</p>
259
- * <p>The following is an <code>Entry</code> and <code>Target</code> pair example.</p>
260
- * <p>
261
- * <code>[ { "Entry": "your-personal-report.pdf", "Target": "/bucket3/customized-reports/${transfer:UserName}.pdf" } ]</code>
262
- * </p>
263
- * <p>In most cases, you can use this value instead of the session policy to lock down your
264
- * user to the designated home directory ("<code>chroot</code>"). To do this, you can set
265
- * <code>Entry</code> to <code>/</code> and set <code>Target</code> to the
266
- * <code>HomeDirectory</code> parameter value.</p>
267
- * <p>The following is an <code>Entry</code> and <code>Target</code> pair example for <code>chroot</code>.</p>
268
- * <p>
269
- * <code>[ { "Entry:": "/", "Target": "/bucket_name/home/mydirectory" } ]</code>
270
- * </p>
271
- *
272
- * <note>
273
- * <p>If the target of a logical directory entry does not exist in Amazon S3 or EFS, the entry is
274
- * ignored. As a workaround, you can use the Amazon S3 API or EFS API to create 0 byte objects as place
275
- * holders for your directory. If using the CLI, use the <code>s3api</code> or <code>efsapi</code> call instead of
276
- * <code>s3</code> or <code>efs</code> so you can use the put-object operation. For example, you use the
277
- * following: <code>aws s3api put-object --bucket bucketname --key path/to/folder/</code>. Make
278
- * sure that the end of the key name ends in a <code>/</code> for it to be considered a folder.</p>
279
- * </note>
280
- */
281
- HomeDirectoryMappings?: HomeDirectoryMapEntry[];
282
-
283
- /**
284
- * <p>A session policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user
285
- * access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include <code>${Transfer:UserName}</code>,
286
- * <code>${Transfer:HomeDirectory}</code>, and <code>${Transfer:HomeBucket}</code>.</p>
287
- *
288
- * <note>
289
- * <p>This only applies when the domain of <code>ServerId</code> is S3. EFS does not use session policies.</p>
290
- * <p>For session policies, Amazon Web Services Transfer Family stores the policy as a JSON blob, instead
291
- * of the Amazon Resource Name (ARN) of the policy. You save the policy as a JSON blob and pass
292
- * it in the <code>Policy</code> argument.</p>
293
- * <p>For an example of a session policy, see <a href="https://docs.aws.amazon.com/transfer/latest/userguide/session-policy.html">Example
294
- * session policy</a>.</p>
295
- * <p>For more information, see <a href="https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html">AssumeRole</a> in the <i>Amazon Web Services Security Token Service API
296
- * Reference</i>.</p>
297
- * </note>
298
- */
299
- Policy?: string;
300
-
301
- /**
302
- * <p>The full POSIX identity, including user ID (<code>Uid</code>), group ID
303
- * (<code>Gid</code>), and any secondary groups IDs (<code>SecondaryGids</code>), that controls
304
- * your users' access to your Amazon EFS file systems. The POSIX permissions that are set on
305
- * files and directories in your file system determine the level of access your users get when
306
- * transferring files into and out of your Amazon EFS file systems.</p>
307
- */
308
- PosixProfile?: PosixProfile;
309
-
310
- /**
311
- * <p>Specifies the Amazon Resource Name (ARN) of the IAM role that controls your users' access to your Amazon S3 bucket or EFS
312
- * file system. The policies attached to this role determine the level of access that you want to provide your users when transferring
313
- * files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the
314
- * server to access your resources when servicing your users' transfer requests.</p>
315
- */
316
- Role: string | undefined;
317
-
318
- /**
319
- * <p>A system-assigned unique identifier for a server instance. This is the specific server that you added your user to.</p>
320
- */
321
- ServerId: string | undefined;
322
-
323
- /**
324
- * <p>A unique identifier that is required to identify specific groups within your directory.
325
- * The users of the group that you associate have access to your Amazon S3 or Amazon EFS
326
- * resources over the enabled protocols using Amazon Web Services Transfer Family. If you know the group name,
327
- * you can view the SID values by running the following command using Windows PowerShell.</p>
328
- *
329
- * <p>
330
- * <code>Get-ADGroup -Filter {samAccountName -like "<i>YourGroupName</i>*"} -Properties * | Select SamAccountName,ObjectSid</code>
331
- * </p>
332
- *
333
- * <p>In that command, replace <i>YourGroupName</i> with the name of your Active Directory group.</p>
334
- *
335
- * <p>The regex used to validate this parameter is a string of characters consisting of uppercase and lowercase alphanumeric characters with no spaces.
336
- * You can also include underscores or any of the following characters: =,.@:/-</p>
337
- */
338
- ExternalId: string | undefined;
339
- }
340
-
341
- export namespace CreateAccessRequest {
342
- /**
343
- * @internal
344
- */
345
- export const filterSensitiveLog = (obj: CreateAccessRequest): any => ({
346
- ...obj,
347
- });
348
- }
349
-
350
- export interface CreateAccessResponse {
351
- /**
352
- * <p>The ID of the server that the user is attached to.</p>
353
- */
354
- ServerId: string | undefined;
355
-
356
- /**
357
- * <p>The external ID of the group whose users have access to your Amazon S3 or Amazon EFS
358
- * resources over the enabled protocols using Amazon Web Services Transfer Family.</p>
359
- */
360
- ExternalId: string | undefined;
361
- }
362
-
363
- export namespace CreateAccessResponse {
364
- /**
365
- * @internal
366
- */
367
- export const filterSensitiveLog = (obj: CreateAccessResponse): any => ({
368
- ...obj,
369
- });
370
- }
371
-
372
- /**
373
- * <p>This exception is thrown when an error occurs in the Amazon Web ServicesTransfer Family service.</p>
374
- */
375
- export interface InternalServiceError extends __SmithyException, $MetadataBearer {
376
- name: "InternalServiceError";
377
- $fault: "server";
378
- Message: string | undefined;
379
- }
380
-
381
- export namespace InternalServiceError {
382
- /**
383
- * @internal
384
- */
385
- export const filterSensitiveLog = (obj: InternalServiceError): any => ({
386
- ...obj,
387
- });
388
- }
389
-
390
- /**
391
- * <p>This exception is thrown when the client submits a malformed request.</p>
392
- */
393
- export interface InvalidRequestException extends __SmithyException, $MetadataBearer {
394
- name: "InvalidRequestException";
395
- $fault: "client";
396
- Message: string | undefined;
397
- }
398
-
399
- export namespace InvalidRequestException {
400
- /**
401
- * @internal
402
- */
403
- export const filterSensitiveLog = (obj: InvalidRequestException): any => ({
404
- ...obj,
405
- });
406
- }
407
-
408
- /**
409
- * <p>The requested resource does not exist.</p>
410
- */
411
- export interface ResourceExistsException extends __SmithyException, $MetadataBearer {
412
- name: "ResourceExistsException";
413
- $fault: "client";
414
- Message: string | undefined;
415
- Resource: string | undefined;
416
- ResourceType: string | undefined;
417
- }
418
-
419
- export namespace ResourceExistsException {
420
- /**
421
- * @internal
422
- */
423
- export const filterSensitiveLog = (obj: ResourceExistsException): any => ({
424
- ...obj,
425
- });
426
- }
427
-
428
- /**
429
- * <p>This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer Family
430
- * service.</p>
431
- */
432
- export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer {
433
- name: "ResourceNotFoundException";
434
- $fault: "client";
435
- Message: string | undefined;
436
- Resource: string | undefined;
437
- ResourceType: string | undefined;
438
- }
439
-
440
- export namespace ResourceNotFoundException {
441
- /**
442
- * @internal
443
- */
444
- export const filterSensitiveLog = (obj: ResourceNotFoundException): any => ({
445
- ...obj,
446
- });
447
- }
448
-
449
- /**
450
- * <p>The request has failed because the Amazon Web ServicesTransfer Family service is not available.</p>
451
- */
452
- export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer {
453
- name: "ServiceUnavailableException";
454
- $fault: "server";
455
- Message?: string;
456
- }
457
-
458
- export namespace ServiceUnavailableException {
459
- /**
460
- * @internal
461
- */
462
- export const filterSensitiveLog = (obj: ServiceUnavailableException): any => ({
463
- ...obj,
464
- });
465
- }
466
-
467
- export enum Domain {
468
- EFS = "EFS",
469
- S3 = "S3",
470
- }
471
-
472
- /**
473
- * <p>The virtual private cloud (VPC) endpoint settings that are configured for your file
474
- * transfer protocol-enabled server. With a VPC endpoint, you can restrict access to your server
475
- * and resources only within your VPC. To control incoming internet traffic, invoke the
476
- * <code>UpdateServer</code> API and attach an Elastic IP address to your server's
477
- * endpoint.</p>
478
- * <note>
479
- * <p> After May 19, 2021, you won't be able to create a server using
480
- * <code>EndpointType=VPC_ENDPOINT</code> in your Amazon Web Servicesaccount if your account hasn't already
481
- * done so before May 19, 2021. If you have already created servers with
482
- * <code>EndpointType=VPC_ENDPOINT</code> in your Amazon Web Servicesaccount on or before May 19, 2021,
483
- * you will not be affected. After this date, use
484
- * <code>EndpointType</code>=<code>VPC</code>.</p>
485
- *
486
- * <p>For more information, see
487
- * https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.</p>
488
- * </note>
489
- */
490
- export interface EndpointDetails {
491
- /**
492
- * <p>A list of address allocation IDs that are required to attach an Elastic IP address to your
493
- * server's endpoint.</p>
494
- *
495
- * <note>
496
- *
497
- * <p>This property can only be set when <code>EndpointType</code> is set to <code>VPC</code>
498
- * and it is only valid in the <code>UpdateServer</code> API.</p>
499
- * </note>
500
- */
501
- AddressAllocationIds?: string[];
502
-
503
- /**
504
- * <p>A list of subnet IDs that are required to host your server endpoint in your VPC.</p>
505
- *
506
- * <note>
507
- * <p>This property can only be set when <code>EndpointType</code> is set to
508
- * <code>VPC</code>.</p>
509
- * </note>
510
- */
511
- SubnetIds?: string[];
512
-
513
- /**
514
- * <p>The ID of the VPC endpoint.</p>
515
- *
516
- * <note>
517
- * <p>This property can only be set when <code>EndpointType</code> is set to
518
- * <code>VPC_ENDPOINT</code>.</p>
519
- *
520
- * <p>For more information, see
521
- * https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.</p>
522
- * </note>
523
- */
524
- VpcEndpointId?: string;
525
-
526
- /**
527
- * <p>The VPC ID of the VPC in which a server's endpoint will be hosted.</p>
528
- *
529
- * <note>
530
- * <p>This property can only be set when <code>EndpointType</code> is set to
531
- * <code>VPC</code>.</p>
532
- * </note>
533
- */
534
- VpcId?: string;
535
-
536
- /**
537
- * <p>A list of security groups IDs that are available to attach to your server's
538
- * endpoint.</p>
539
- *
540
- * <note>
541
- * <p>This property can only be set when <code>EndpointType</code> is set to
542
- * <code>VPC</code>.</p>
543
- *
544
- * <p>You can edit the <code>SecurityGroupIds</code> property in the <a href="https://docs.aws.amazon.com/transfer/latest/userguide/API_UpdateServer.html">UpdateServer</a> API only if you are changing the <code>EndpointType</code> from
545
- * <code>PUBLIC</code> or <code>VPC_ENDPOINT</code> to <code>VPC</code>. To change security
546
- * groups associated with your server's VPC endpoint after creation, use the Amazon EC2
547
- * <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyVpcEndpoint.html">ModifyVpcEndpoint</a> API.</p>
548
- * </note>
549
- */
550
- SecurityGroupIds?: string[];
551
- }
552
-
553
- export namespace EndpointDetails {
554
- /**
555
- * @internal
556
- */
557
- export const filterSensitiveLog = (obj: EndpointDetails): any => ({
558
- ...obj,
559
- });
560
- }
561
-
562
- export enum EndpointType {
563
- PUBLIC = "PUBLIC",
564
- VPC = "VPC",
565
- VPC_ENDPOINT = "VPC_ENDPOINT",
566
- }
567
-
568
- /**
569
- * <p>Returns information related to the type of user authentication that is in use for a file
570
- * transfer protocol-enabled server's users. A server can have only one method of
571
- * authentication.</p>
572
- */
573
- export interface IdentityProviderDetails {
574
- /**
575
- * <p>Provides the location of the service endpoint used to authenticate users.</p>
576
- */
577
- Url?: string;
578
-
579
- /**
580
- * <p>Provides the type of <code>InvocationRole</code> used to authenticate the user
581
- * account.</p>
582
- */
583
- InvocationRole?: string;
584
-
585
- /**
586
- * <p>The identifier of the Amazon Web ServicesDirectory Service directory that you want to stop sharing.</p>
587
- */
588
- DirectoryId?: string;
589
- }
590
-
591
- export namespace IdentityProviderDetails {
592
- /**
593
- * @internal
594
- */
595
- export const filterSensitiveLog = (obj: IdentityProviderDetails): any => ({
596
- ...obj,
597
- });
598
- }
599
-
600
- export enum IdentityProviderType {
601
- API_GATEWAY = "API_GATEWAY",
602
- AWS_DIRECTORY_SERVICE = "AWS_DIRECTORY_SERVICE",
603
- SERVICE_MANAGED = "SERVICE_MANAGED",
604
- }
605
-
606
- export enum Protocol {
607
- FTP = "FTP",
608
- FTPS = "FTPS",
609
- SFTP = "SFTP",
610
- }
611
-
612
- /**
613
- * <p>Creates a key-value pair for a specific resource. Tags are metadata that you can use to
614
- * search for and group a resource for various purposes. You can apply tags to servers, users,
615
- * and roles. A tag key can take more than one value. For example, to group servers for
616
- * accounting purposes, you might create a tag called <code>Group</code> and assign the values
617
- * <code>Research</code> and <code>Accounting</code> to that group.</p>
618
- */
619
- export interface Tag {
620
- /**
621
- * <p>The name assigned to the tag that you create.</p>
622
- */
623
- Key: string | undefined;
624
-
625
- /**
626
- * <p>Contains one or more values that you assigned to the key name you create.</p>
627
- */
628
- Value: string | undefined;
629
- }
630
-
631
- export namespace Tag {
632
- /**
633
- * @internal
634
- */
635
- export const filterSensitiveLog = (obj: Tag): any => ({
636
- ...obj,
637
- });
638
- }
639
-
640
- /**
641
- * <p>Specifies the workflow ID for the workflow to assign and the execution role used for executing the workflow.</p>
642
- */
643
- export interface WorkflowDetail {
644
- /**
645
- * <p>A unique identifier for the workflow.</p>
646
- */
647
- WorkflowId: string | undefined;
648
-
649
- /**
650
- * <p>Includes the necessary permissions for S3, EFS, and Lambda operations that Transfer can
651
- * assume, so that all workflow steps can operate on the required resources</p>
652
- */
653
- ExecutionRole: string | undefined;
654
- }
655
-
656
- export namespace WorkflowDetail {
657
- /**
658
- * @internal
659
- */
660
- export const filterSensitiveLog = (obj: WorkflowDetail): any => ({
661
- ...obj,
662
- });
663
- }
664
-
665
- /**
666
- * <p>Container for the <code>WorkflowDetail</code> data type.
667
- * It is used by actions that trigger a workflow to begin execution.</p>
668
- */
669
- export interface WorkflowDetails {
670
- /**
671
- * <p>A trigger that starts a workflow: the workflow begins to execute after a file is uploaded.</p>
672
- */
673
- OnUpload: WorkflowDetail[] | undefined;
674
- }
675
-
676
- export namespace WorkflowDetails {
677
- /**
678
- * @internal
679
- */
680
- export const filterSensitiveLog = (obj: WorkflowDetails): any => ({
681
- ...obj,
682
- });
683
- }
684
-
685
- export interface CreateServerRequest {
686
- /**
687
- * <p>The Amazon Resource Name (ARN) of the Amazon Web Services Certificate Manager (ACM) certificate. Required
688
- * when <code>Protocols</code> is set to <code>FTPS</code>.</p>
689
- *
690
- * <p>To request a new public certificate, see <a href="https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-public.html">Request a public certificate</a>
691
- * in the <i> Amazon Web Services Certificate Manager User Guide</i>.</p>
692
- *
693
- * <p>To import an existing certificate into ACM, see <a href="https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html">Importing certificates into ACM</a>
694
- * in the <i> Amazon Web Services Certificate Manager User Guide</i>.</p>
695
- *
696
- * <p>To request a private certificate to use FTPS through private IP addresses, see <a href="https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-private.html">Request a
697
- * private certificate</a> in the <i> Amazon Web Services Certificate Manager User
698
- * Guide</i>.</p>
699
- *
700
- * <p>Certificates with the following cryptographic algorithms and key sizes are
701
- * supported:</p>
702
- *
703
- * <ul>
704
- * <li>
705
- * <p>2048-bit RSA (RSA_2048)</p>
706
- * </li>
707
- * <li>
708
- * <p>4096-bit RSA (RSA_4096)</p>
709
- * </li>
710
- * <li>
711
- * <p>Elliptic Prime Curve 256 bit (EC_prime256v1)</p>
712
- * </li>
713
- * <li>
714
- * <p>Elliptic Prime Curve 384 bit (EC_secp384r1)</p>
715
- * </li>
716
- * <li>
717
- * <p>Elliptic Prime Curve 521 bit (EC_secp521r1)</p>
718
- * </li>
719
- * </ul>
720
- *
721
- * <note>
722
- * <p>The certificate must be a valid SSL/TLS X.509 version 3 certificate with FQDN or IP
723
- * address specified and information about the issuer.</p>
724
- * </note>
725
- */
726
- Certificate?: string;
727
-
728
- /**
729
- * <p>The domain of the storage system that is used for file transfers. There are two domains
730
- * available: Amazon Simple Storage Service (Amazon S3) and Amazon Elastic File System (Amazon EFS). The
731
- * default value is S3.</p>
732
- *
733
- * <note>
734
- * <p>After the server is created, the domain cannot be changed.</p>
735
- * </note>
736
- */
737
- Domain?: Domain | string;
738
-
739
- /**
740
- * <p>The virtual private cloud (VPC) endpoint settings that are configured for your server.
741
- * When you host your endpoint within your VPC, you can make it accessible only to resources
742
- * within your VPC, or you can attach Elastic IP addresses and make it accessible to clients over
743
- * the internet. Your VPC's default security groups are automatically assigned to your
744
- * endpoint.</p>
745
- */
746
- EndpointDetails?: EndpointDetails;
747
-
748
- /**
749
- * <p>The type of endpoint that you want your server to use. You can choose to make your server's endpoint publicly accessible (PUBLIC)
750
- * or host it inside your VPC. With an endpoint that is hosted in a VPC, you can restrict access to your server and
751
- * resources only within your VPC or choose to make it internet facing by attaching Elastic IP addresses directly to it.</p>
752
- * <note>
753
- * <p> After May 19, 2021, you won't be able to create a server using
754
- * <code>EndpointType=VPC_ENDPOINT</code> in your Amazon Web Services account if your account hasn't already
755
- * done so before May 19, 2021. If you have already created servers with
756
- * <code>EndpointType=VPC_ENDPOINT</code> in your Amazon Web Services account on or before May 19, 2021,
757
- * you will not be affected. After this date, use
758
- * <code>EndpointType</code>=<code>VPC</code>.</p>
759
- *
760
- * <p>For more information, see
761
- * https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.</p>
762
- * <p>It is recommended that you use <code>VPC</code> as the <code>EndpointType</code>. With
763
- * this endpoint type, you have the option to directly associate up to three Elastic IPv4
764
- * addresses (BYO IP included) with your server's endpoint and use VPC security groups to
765
- * restrict traffic by the client's public IP address. This is not possible with
766
- * <code>EndpointType</code> set to <code>VPC_ENDPOINT</code>.</p>
767
- * </note>
768
- */
769
- EndpointType?: EndpointType | string;
770
-
771
- /**
772
- * <p>The RSA private key as generated by the <code>ssh-keygen -N "" -m PEM -f
773
- * my-new-server-key</code> command.</p>
774
- *
775
- * <important>
776
- * <p>If you aren't planning to migrate existing users from an existing SFTP-enabled
777
- * server to a new server, don't update the host key. Accidentally changing a
778
- * server's host key can be disruptive.</p>
779
- * </important>
780
- *
781
- *
782
- *
783
- * <p>For more information, see <a href="https://docs.aws.amazon.com/transfer/latest/userguide/edit-server-config.html#configuring-servers-change-host-key">Change the host key for your SFTP-enabled server</a> in the <i>Amazon Web Services Transfer
784
- * Family User Guide</i>.</p>
785
- */
786
- HostKey?: string;
787
-
788
- /**
789
- * <p>Required when <code>IdentityProviderType</code> is set to
790
- * <code>AWS_DIRECTORY_SERVICE</code> or <code>API_GATEWAY</code>. Accepts an array containing
791
- * all of the information required to use a directory in <code>AWS_DIRECTORY_SERVICE</code> or
792
- * invoke a customer-supplied authentication API, including the API Gateway URL. Not required
793
- * when <code>IdentityProviderType</code> is set to <code>SERVICE_MANAGED</code>.</p>
794
- */
795
- IdentityProviderDetails?: IdentityProviderDetails;
796
-
797
- /**
798
- * <p>Specifies the mode of authentication for a server. The default value is
799
- * <code>SERVICE_MANAGED</code>, which allows you to store and access user credentials within
800
- * the Amazon Web Services Transfer Family service.</p>
801
- * <p>Use <code>AWS_DIRECTORY_SERVICE</code> to provide access to
802
- * Active Directory groups in Amazon Web Services Managed Active Directory or Microsoft Active Directory in your
803
- * on-premises environment or in Amazon Web Services using AD Connectors. This option also requires you to
804
- * provide a Directory ID using the <code>IdentityProviderDetails</code> parameter.</p>
805
- * <p>Use the <code>API_GATEWAY</code> value to integrate with an identity provider of your choosing. The
806
- * <code>API_GATEWAY</code> setting requires you to provide an API Gateway endpoint URL to call
807
- * for authentication using the <code>IdentityProviderDetails</code> parameter.</p>
808
- */
809
- IdentityProviderType?: IdentityProviderType | string;
810
-
811
- /**
812
- * <p>Specifies the Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) role that allows a server to turn
813
- * on Amazon CloudWatch logging for Amazon S3 or Amazon EFS events. When set, user activity can be viewed in
814
- * your CloudWatch logs.</p>
815
- */
816
- LoggingRole?: string;
817
-
818
- /**
819
- * <p>Specifies the file transfer protocol or protocols over which your file transfer protocol
820
- * client can connect to your server's endpoint. The available protocols are:</p>
821
- *
822
- * <ul>
823
- * <li>
824
- * <p>
825
- * <code>SFTP</code> (Secure Shell (SSH) File Transfer Protocol): File transfer over
826
- * SSH</p>
827
- * </li>
828
- * <li>
829
- * <p>
830
- * <code>FTPS</code> (File Transfer Protocol Secure): File transfer with TLS
831
- * encryption</p>
832
- * </li>
833
- * <li>
834
- * <p>
835
- * <code>FTP</code> (File Transfer Protocol): Unencrypted file transfer</p>
836
- * </li>
837
- * </ul>
838
- *
839
- * <note>
840
- * <p>If you select <code>FTPS</code>, you must choose a certificate stored in Amazon Web Services Certificate
841
- * Manager (ACM) which is used to identify your server when clients connect to it over
842
- * FTPS.</p>
843
- *
844
- * <p>If <code>Protocol</code> includes either <code>FTP</code> or <code>FTPS</code>, then the
845
- * <code>EndpointType</code> must be <code>VPC</code> and the
846
- * <code>IdentityProviderType</code> must be <code>AWS_DIRECTORY_SERVICE</code> or <code>API_GATEWAY</code>.</p>
847
- *
848
- * <p>If <code>Protocol</code> includes <code>FTP</code>, then
849
- * <code>AddressAllocationIds</code> cannot be associated.</p>
850
- *
851
- * <p>If <code>Protocol</code> is set only to <code>SFTP</code>, the <code>EndpointType</code>
852
- * can be set to <code>PUBLIC</code> and the <code>IdentityProviderType</code> can be set to
853
- * <code>SERVICE_MANAGED</code>.</p>
854
- * </note>
855
- */
856
- Protocols?: (Protocol | string)[];
857
-
858
- /**
859
- * <p>Specifies the name of the security policy that is attached to the server.</p>
860
- */
861
- SecurityPolicyName?: string;
862
-
863
- /**
864
- * <p>Key-value pairs that can be used to group and search for servers.</p>
865
- */
866
- Tags?: Tag[];
867
-
868
- /**
869
- * <p>Specifies the workflow ID for the workflow to assign and the execution role used for executing the workflow.</p>
870
- */
871
- WorkflowDetails?: WorkflowDetails;
872
- }
873
-
874
- export namespace CreateServerRequest {
875
- /**
876
- * @internal
877
- */
878
- export const filterSensitiveLog = (obj: CreateServerRequest): any => ({
879
- ...obj,
880
- ...(obj.HostKey && { HostKey: SENSITIVE_STRING }),
881
- });
882
- }
883
-
884
- export interface CreateServerResponse {
885
- /**
886
- * <p>The service-assigned ID of the server that is created.</p>
887
- */
888
- ServerId: string | undefined;
889
- }
890
-
891
- export namespace CreateServerResponse {
892
- /**
893
- * @internal
894
- */
895
- export const filterSensitiveLog = (obj: CreateServerResponse): any => ({
896
- ...obj,
897
- });
898
- }
899
-
900
- /**
901
- * <p>The request was denied due to request throttling.</p>
902
- *
903
- * <p> HTTP Status Code: 400</p>
904
- */
905
- export interface ThrottlingException extends __SmithyException, $MetadataBearer {
906
- name: "ThrottlingException";
907
- $fault: "client";
908
- RetryAfterSeconds?: string;
909
- }
910
-
911
- export namespace ThrottlingException {
912
- /**
913
- * @internal
914
- */
915
- export const filterSensitiveLog = (obj: ThrottlingException): any => ({
916
- ...obj,
917
- });
918
- }
919
-
920
- export interface CreateUserRequest {
921
- /**
922
- * <p>The landing directory (folder) for a user when they log in to the server using the client.</p>
923
- * <p>A <code>HomeDirectory</code> example is <code>/bucket_name/home/mydirectory</code>.</p>
924
- */
925
- HomeDirectory?: string;
926
-
927
- /**
928
- * <p>The type of landing directory (folder) you want your users' home directory to be when they log into the server.
929
- * If you set it to <code>PATH</code>, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients.
930
- * If you set it <code>LOGICAL</code>, you need to provide mappings in the <code>HomeDirectoryMappings</code> for how you want to make Amazon
931
- * S3 or EFS paths visible to your users.</p>
932
- */
933
- HomeDirectoryType?: HomeDirectoryType | string;
934
-
935
- /**
936
- * <p>Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should
937
- * be visible to your user and how you want to make them visible. You must specify the
938
- * <code>Entry</code> and <code>Target</code> pair, where <code>Entry</code> shows how the path
939
- * is made visible and <code>Target</code> is the actual Amazon S3 or Amazon EFS path. If you
940
- * only specify a target, it is displayed as is. You also must ensure that your Amazon Web Services Identity
941
- * and Access Management (IAM) role provides access to paths in <code>Target</code>. This value
942
- * can only be set when <code>HomeDirectoryType</code> is set to
943
- * <i>LOGICAL</i>.</p>
944
- *
945
- * <p>The following is an <code>Entry</code> and <code>Target</code> pair example.</p>
946
- *
947
- * <p>
948
- * <code>[ { "Entry": "your-personal-report.pdf", "Target":
949
- * "/bucket3/customized-reports/${transfer:UserName}.pdf" } ]</code>
950
- * </p>
951
- *
952
- * <p>In most cases, you can use this value instead of the session policy to lock your user
953
- * down to the designated home directory ("<code>chroot</code>"). To do this, you can set
954
- * <code>Entry</code> to <code>/</code> and set <code>Target</code> to the HomeDirectory
955
- * parameter value.</p>
956
- * <p>The following is an <code>Entry</code> and <code>Target</code> pair example for <code>chroot</code>.</p>
957
- * <p>
958
- * <code>[ { "Entry:": "/", "Target": "/bucket_name/home/mydirectory" } ]</code>
959
- * </p>
960
- *
961
- * <note>
962
- * <p>If the target of a logical directory entry does not exist in Amazon S3 or EFS, the entry is
963
- * ignored. As a workaround, you can use the Amazon S3 API or EFS API to create 0 byte objects as place
964
- * holders for your directory. If using the CLI, use the <code>s3api</code> or <code>efsapi</code> call instead of
965
- * <code>s3</code> or <code>efs</code> so you can use the put-object operation. For example, you use the
966
- * following: <code>aws s3api put-object --bucket bucketname --key path/to/folder/</code>. Make
967
- * sure that the end of the key name ends in a <code>/</code> for it to be considered a folder.</p>
968
- * </note>
969
- */
970
- HomeDirectoryMappings?: HomeDirectoryMapEntry[];
971
-
972
- /**
973
- * <p>A session policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user
974
- * access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include <code>${Transfer:UserName}</code>,
975
- * <code>${Transfer:HomeDirectory}</code>, and <code>${Transfer:HomeBucket}</code>.</p>
976
- *
977
- * <note>
978
- * <p>This only applies when the domain of <code>ServerId</code> is S3. EFS does not use session policies.</p>
979
- * <p>For session policies, Amazon Web Services Transfer Family stores the policy as a JSON blob, instead
980
- * of the Amazon Resource Name (ARN) of the policy. You save the policy as a JSON blob and pass
981
- * it in the <code>Policy</code> argument.</p>
982
- *
983
- *
984
- *
985
- * <p>For an example of a session policy, see <a href="https://docs.aws.amazon.com/transfer/latest/userguide/session-policy.html">Example session
986
- * policy</a>.</p>
987
- *
988
- *
989
- *
990
- * <p>For more information, see <a href="https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html">AssumeRole</a> in the <i>Amazon Web Services
991
- * Security Token Service API Reference</i>.</p>
992
- * </note>
993
- */
994
- Policy?: string;
995
-
996
- /**
997
- * <p>Specifies the full POSIX identity, including user ID (<code>Uid</code>), group ID
998
- * (<code>Gid</code>), and any secondary groups IDs (<code>SecondaryGids</code>), that controls
999
- * your users' access to your Amazon EFS file systems. The POSIX permissions that are set on
1000
- * files and directories in Amazon EFS determine the level of access your users get when
1001
- * transferring files into and out of your Amazon EFS file systems.</p>
1002
- */
1003
- PosixProfile?: PosixProfile;
1004
-
1005
- /**
1006
- * <p>Specifies the Amazon Resource Name (ARN) of the IAM role that controls your users' access to your Amazon S3 bucket or EFS
1007
- * file system. The policies attached to this role determine the level of access that you want to provide your users when transferring
1008
- * files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the
1009
- * server to access your resources when servicing your users' transfer requests.</p>
1010
- */
1011
- Role: string | undefined;
1012
-
1013
- /**
1014
- * <p>A system-assigned unique identifier for a server instance. This is the specific server
1015
- * that you added your user to.</p>
1016
- */
1017
- ServerId: string | undefined;
1018
-
1019
- /**
1020
- * <p>The public portion of the Secure Shell (SSH) key used to authenticate the user to the
1021
- * server.</p>
1022
- */
1023
- SshPublicKeyBody?: string;
1024
-
1025
- /**
1026
- * <p>Key-value pairs that can be used to group and search for users. Tags are metadata attached
1027
- * to users for any purpose.</p>
1028
- */
1029
- Tags?: Tag[];
1030
-
1031
- /**
1032
- * <p>A unique string that identifies a user and is associated with a <code>ServerId</code>. This user name must be a minimum of 3 and a maximum of 100 characters
1033
- * long. The following are valid characters: a-z, A-Z, 0-9, underscore '_', hyphen
1034
- * '-', period '.', and at sign '@'. The user name can't start
1035
- * with a hyphen, period, or at sign.</p>
1036
- */
1037
- UserName: string | undefined;
1038
- }
1039
-
1040
- export namespace CreateUserRequest {
1041
- /**
1042
- * @internal
1043
- */
1044
- export const filterSensitiveLog = (obj: CreateUserRequest): any => ({
1045
- ...obj,
1046
- });
1047
- }
1048
-
1049
- export interface CreateUserResponse {
1050
- /**
1051
- * <p>The ID of the server that the user is attached to.</p>
1052
- */
1053
- ServerId: string | undefined;
1054
-
1055
- /**
1056
- * <p>A unique string that identifies a user account associated with a server.</p>
1057
- */
1058
- UserName: string | undefined;
1059
- }
1060
-
1061
- export namespace CreateUserResponse {
1062
- /**
1063
- * @internal
1064
- */
1065
- export const filterSensitiveLog = (obj: CreateUserResponse): any => ({
1066
- ...obj,
1067
- });
1068
- }
1069
-
1070
- /**
1071
- * <p>Each step type has its own <code>StepDetails</code> structure.</p>
1072
- */
1073
- export interface CustomStepDetails {
1074
- /**
1075
- * <p>The name of the step, used as an identifier.</p>
1076
- */
1077
- Name?: string;
1078
-
1079
- /**
1080
- * <p>The ARN for the lambda function that is being called.</p>
1081
- */
1082
- Target?: string;
1083
-
1084
- /**
1085
- * <p>Timeout, in seconds, for the step.</p>
1086
- */
1087
- TimeoutSeconds?: number;
1088
- }
1089
-
1090
- export namespace CustomStepDetails {
1091
- /**
1092
- * @internal
1093
- */
1094
- export const filterSensitiveLog = (obj: CustomStepDetails): any => ({
1095
- ...obj,
1096
- });
1097
- }
1098
-
1099
- /**
1100
- * <p>The name of the step, used to identify the step that is being deleted.</p>
1101
- */
1102
- export interface DeleteStepDetails {
1103
- /**
1104
- * <p>The name of the step, used as an identifier.</p>
1105
- */
1106
- Name?: string;
1107
- }
1108
-
1109
- export namespace DeleteStepDetails {
1110
- /**
1111
- * @internal
1112
- */
1113
- export const filterSensitiveLog = (obj: DeleteStepDetails): any => ({
1114
- ...obj,
1115
- });
1116
- }
1117
-
1118
- /**
1119
- * <p>Specifies the key-value pair that are assigned to a file during the execution of a Tagging step.</p>
1120
- */
1121
- export interface S3Tag {
1122
- /**
1123
- * <p>The name assigned to the tag that you create.</p>
1124
- */
1125
- Key: string | undefined;
1126
-
1127
- /**
1128
- * <p>The value that corresponds to the key.</p>
1129
- */
1130
- Value: string | undefined;
1131
- }
1132
-
1133
- export namespace S3Tag {
1134
- /**
1135
- * @internal
1136
- */
1137
- export const filterSensitiveLog = (obj: S3Tag): any => ({
1138
- ...obj,
1139
- });
1140
- }
1141
-
1142
- /**
1143
- * <p>Each step type has its own <code>StepDetails</code> structure.</p>
1144
- * <p>The key/value pairs used to tag a file during the execution of a workflow step.</p>
1145
- */
1146
- export interface TagStepDetails {
1147
- /**
1148
- * <p>The name of the step, used as an identifier.</p>
1149
- */
1150
- Name?: string;
1151
-
1152
- /**
1153
- * <p>Array that contains from 1 to 10 key/value pairs.</p>
1154
- */
1155
- Tags?: S3Tag[];
1156
- }
1157
-
1158
- export namespace TagStepDetails {
1159
- /**
1160
- * @internal
1161
- */
1162
- export const filterSensitiveLog = (obj: TagStepDetails): any => ({
1163
- ...obj,
1164
- });
1165
- }
1166
-
1167
- export enum WorkflowStepType {
1168
- COPY = "COPY",
1169
- CUSTOM = "CUSTOM",
1170
- DELETE = "DELETE",
1171
- TAG = "TAG",
1172
- }
1173
-
1174
- /**
1175
- * <p>The basic building block of a workflow.</p>
1176
- */
1177
- export interface WorkflowStep {
1178
- /**
1179
- * <p>
1180
- * Currently, the following step types are supported.
1181
- * </p>
1182
- * <ul>
1183
- * <li>
1184
- * <p>
1185
- * <i>Copy</i>: copy the file to another location</p>
1186
- * </li>
1187
- * <li>
1188
- * <p>
1189
- * <i>Custom</i>: custom step with a lambda target</p>
1190
- * </li>
1191
- * <li>
1192
- * <p>
1193
- * <i>Delete</i>: delete the file</p>
1194
- * </li>
1195
- * <li>
1196
- * <p>
1197
- * <i>Tag</i>: add a tag to the file</p>
1198
- * </li>
1199
- * </ul>
1200
- */
1201
- Type?: WorkflowStepType | string;
1202
-
1203
- /**
1204
- * <p>Details for a step that performs a file copy.</p>
1205
- * <p>
1206
- * Consists of the following values:
1207
- * </p>
1208
- * <ul>
1209
- * <li>
1210
- * <p>A description</p>
1211
- * </li>
1212
- * <li>
1213
- * <p>An S3 or EFS location for the destination of the file copy.</p>
1214
- * </li>
1215
- * <li>
1216
- * <p>A flag that indicates whether or not to overwrite an existing file of the same name.
1217
- * The default is <code>FALSE</code>.</p>
1218
- * </li>
1219
- * </ul>
1220
- */
1221
- CopyStepDetails?: CopyStepDetails;
1222
-
1223
- /**
1224
- * <p>Details for a step that invokes a lambda function.</p>
1225
- * <p>
1226
- * Consists of the lambda function name, target, and timeout (in seconds).
1227
- * </p>
1228
- */
1229
- CustomStepDetails?: CustomStepDetails;
1230
-
1231
- /**
1232
- * <p>You need to specify the name of the file to be deleted.</p>
1233
- */
1234
- DeleteStepDetails?: DeleteStepDetails;
1235
-
1236
- /**
1237
- * <p>Details for a step that creates one or more tags.</p>
1238
- * <p>You specify one or more tags: each tag contains a key/value pair.</p>
1239
- */
1240
- TagStepDetails?: TagStepDetails;
1241
- }
1242
-
1243
- export namespace WorkflowStep {
1244
- /**
1245
- * @internal
1246
- */
1247
- export const filterSensitiveLog = (obj: WorkflowStep): any => ({
1248
- ...obj,
1249
- });
1250
- }
1251
-
1252
- export interface CreateWorkflowRequest {
1253
- /**
1254
- * <p>A textual description for the workflow.</p>
1255
- */
1256
- Description?: string;
1257
-
1258
- /**
1259
- * <p>Specifies the details for the steps that are in the specified workflow.</p>
1260
- * <p>
1261
- * The <code>TYPE</code> specifies which of the following actions is being taken for this step.
1262
- * </p>
1263
- * <ul>
1264
- * <li>
1265
- * <p>
1266
- * <i>Copy</i>: copy the file to another location</p>
1267
- * </li>
1268
- * <li>
1269
- * <p>
1270
- * <i>Custom</i>: custom step with a lambda target</p>
1271
- * </li>
1272
- * <li>
1273
- * <p>
1274
- * <i>Delete</i>: delete the file</p>
1275
- * </li>
1276
- * <li>
1277
- * <p>
1278
- * <i>Tag</i>: add a tag to the file</p>
1279
- * </li>
1280
- * </ul>
1281
- * <p>
1282
- * For file location, you specify either the S3 bucket and key, or the EFS filesystem ID and path.
1283
- * </p>
1284
- */
1285
- Steps: WorkflowStep[] | undefined;
1286
-
1287
- /**
1288
- * <p>Specifies the steps (actions) to take if any errors are encountered during execution of the workflow.</p>
1289
- */
1290
- OnExceptionSteps?: WorkflowStep[];
1291
-
1292
- /**
1293
- * <p>Key-value pairs that can be used to group and search for workflows. Tags are metadata attached
1294
- * to workflows for any purpose.</p>
1295
- */
1296
- Tags?: Tag[];
1297
- }
1298
-
1299
- export namespace CreateWorkflowRequest {
1300
- /**
1301
- * @internal
1302
- */
1303
- export const filterSensitiveLog = (obj: CreateWorkflowRequest): any => ({
1304
- ...obj,
1305
- });
1306
- }
1307
-
1308
- export interface CreateWorkflowResponse {
1309
- /**
1310
- * <p>A unique identifier for the workflow.</p>
1311
- */
1312
- WorkflowId: string | undefined;
1313
- }
1314
-
1315
- export namespace CreateWorkflowResponse {
1316
- /**
1317
- * @internal
1318
- */
1319
- export const filterSensitiveLog = (obj: CreateWorkflowResponse): any => ({
1320
- ...obj,
1321
- });
1322
- }
1323
-
1324
- export enum CustomStepStatus {
1325
- FAILURE = "FAILURE",
1326
- SUCCESS = "SUCCESS",
1327
- }
1328
-
1329
- export interface DeleteAccessRequest {
1330
- /**
1331
- * <p>A system-assigned unique identifier for a server that has this user assigned.</p>
1332
- */
1333
- ServerId: string | undefined;
1334
-
1335
- /**
1336
- * <p>A unique identifier that is required to identify specific groups within your directory.
1337
- * The users of the group that you associate have access to your Amazon S3 or Amazon EFS
1338
- * resources over the enabled protocols using Amazon Web Services Transfer Family. If you know the group name,
1339
- * you can view the SID values by running the following command using Windows PowerShell.</p>
1340
- *
1341
- * <p>
1342
- * <code>Get-ADGroup -Filter {samAccountName -like "<i>YourGroupName</i>*"} -Properties * | Select SamAccountName,ObjectSid</code>
1343
- * </p>
1344
- *
1345
- * <p>In that command, replace <i>YourGroupName</i> with the name of your Active Directory group.</p>
1346
- *
1347
- * <p>The regex used to validate this parameter is a string of characters consisting of uppercase and lowercase alphanumeric characters with no spaces.
1348
- * You can also include underscores or any of the following characters: =,.@:/-</p>
1349
- */
1350
- ExternalId: string | undefined;
1351
- }
1352
-
1353
- export namespace DeleteAccessRequest {
1354
- /**
1355
- * @internal
1356
- */
1357
- export const filterSensitiveLog = (obj: DeleteAccessRequest): any => ({
1358
- ...obj,
1359
- });
1360
- }
1361
-
1362
- export interface DeleteServerRequest {
1363
- /**
1364
- * <p>A unique system-assigned identifier for a server instance.</p>
1365
- */
1366
- ServerId: string | undefined;
1367
- }
1368
-
1369
- export namespace DeleteServerRequest {
1370
- /**
1371
- * @internal
1372
- */
1373
- export const filterSensitiveLog = (obj: DeleteServerRequest): any => ({
1374
- ...obj,
1375
- });
1376
- }
1377
-
1378
- export interface DeleteSshPublicKeyRequest {
1379
- /**
1380
- * <p>A system-assigned unique identifier for a file transfer protocol-enabled server instance
1381
- * that has the user assigned to it.</p>
1382
- */
1383
- ServerId: string | undefined;
1384
-
1385
- /**
1386
- * <p>A unique identifier used to reference your user's specific SSH key.</p>
1387
- */
1388
- SshPublicKeyId: string | undefined;
1389
-
1390
- /**
1391
- * <p>A unique string that identifies a user whose public key is being deleted.</p>
1392
- */
1393
- UserName: string | undefined;
1394
- }
1395
-
1396
- export namespace DeleteSshPublicKeyRequest {
1397
- /**
1398
- * @internal
1399
- */
1400
- export const filterSensitiveLog = (obj: DeleteSshPublicKeyRequest): any => ({
1401
- ...obj,
1402
- });
1403
- }
1404
-
1405
- export interface DeleteUserRequest {
1406
- /**
1407
- * <p>A system-assigned unique identifier for a server instance that has the user assigned to
1408
- * it.</p>
1409
- */
1410
- ServerId: string | undefined;
1411
-
1412
- /**
1413
- * <p>A unique string that identifies a user that is being deleted from a server.</p>
1414
- */
1415
- UserName: string | undefined;
1416
- }
1417
-
1418
- export namespace DeleteUserRequest {
1419
- /**
1420
- * @internal
1421
- */
1422
- export const filterSensitiveLog = (obj: DeleteUserRequest): any => ({
1423
- ...obj,
1424
- });
1425
- }
1426
-
1427
- export interface DeleteWorkflowRequest {
1428
- /**
1429
- * <p>A unique identifier for the workflow.</p>
1430
- */
1431
- WorkflowId: string | undefined;
1432
- }
1433
-
1434
- export namespace DeleteWorkflowRequest {
1435
- /**
1436
- * @internal
1437
- */
1438
- export const filterSensitiveLog = (obj: DeleteWorkflowRequest): any => ({
1439
- ...obj,
1440
- });
1441
- }
1442
-
1443
- export interface DescribeAccessRequest {
1444
- /**
1445
- * <p>A system-assigned unique identifier for a server that has this access assigned.</p>
1446
- */
1447
- ServerId: string | undefined;
1448
-
1449
- /**
1450
- * <p>A unique identifier that is required to identify specific groups within your directory.
1451
- * The users of the group that you associate have access to your Amazon S3 or Amazon EFS
1452
- * resources over the enabled protocols using Amazon Web Services Transfer Family. If you know the group name,
1453
- * you can view the SID values by running the following command using Windows PowerShell.</p>
1454
- *
1455
- * <p>
1456
- * <code>Get-ADGroup -Filter {samAccountName -like "<i>YourGroupName</i>*"} -Properties * | Select SamAccountName,ObjectSid</code>
1457
- * </p>
1458
- *
1459
- * <p>In that command, replace <i>YourGroupName</i> with the name of your Active Directory group.</p>
1460
- *
1461
- * <p>The regex used to validate this parameter is a string of characters consisting of uppercase and lowercase alphanumeric characters with no spaces.
1462
- * You can also include underscores or any of the following characters: =,.@:/-</p>
1463
- */
1464
- ExternalId: string | undefined;
1465
- }
1466
-
1467
- export namespace DescribeAccessRequest {
1468
- /**
1469
- * @internal
1470
- */
1471
- export const filterSensitiveLog = (obj: DescribeAccessRequest): any => ({
1472
- ...obj,
1473
- });
1474
- }
1475
-
1476
- /**
1477
- * <p>Describes the properties of the access that was specified.</p>
1478
- */
1479
- export interface DescribedAccess {
1480
- /**
1481
- * <p>The landing directory (folder) for a user when they log in to the server using the client.</p>
1482
- * <p>A <code>HomeDirectory</code> example is <code>/bucket_name/home/mydirectory</code>.</p>
1483
- */
1484
- HomeDirectory?: string;
1485
-
1486
- /**
1487
- * <p>Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should
1488
- * be visible to your user and how you want to make them visible. You must specify the
1489
- * <code>Entry</code> and <code>Target</code> pair, where <code>Entry</code> shows how the path
1490
- * is made visible and <code>Target</code> is the actual Amazon S3 or Amazon EFS path. If you
1491
- * only specify a target, it is displayed as is. You also must ensure that your Amazon Web Services Identity
1492
- * and Access Management (IAM) role provides access to paths in <code>Target</code>. This value
1493
- * can only be set when <code>HomeDirectoryType</code> is set to
1494
- * <i>LOGICAL</i>.</p>
1495
- *
1496
- * <p>In most cases, you can use this value instead of the session policy to lock down the
1497
- * associated access to the designated home directory ("<code>chroot</code>"). To do this, you
1498
- * can set <code>Entry</code> to '/' and set <code>Target</code> to the
1499
- * <code>HomeDirectory</code> parameter value.</p>
1500
- */
1501
- HomeDirectoryMappings?: HomeDirectoryMapEntry[];
1502
-
1503
- /**
1504
- * <p>The type of landing directory (folder) you want your users' home directory to be when they log into the server.
1505
- * If you set it to <code>PATH</code>, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients.
1506
- * If you set it <code>LOGICAL</code>, you need to provide mappings in the <code>HomeDirectoryMappings</code> for how you want to make Amazon
1507
- * S3 or EFS paths visible to your users.</p>
1508
- */
1509
- HomeDirectoryType?: HomeDirectoryType | string;
1510
-
1511
- /**
1512
- * <p>A session policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user
1513
- * access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include <code>${Transfer:UserName}</code>,
1514
- * <code>${Transfer:HomeDirectory}</code>, and <code>${Transfer:HomeBucket}</code>.</p>
1515
- */
1516
- Policy?: string;
1517
-
1518
- /**
1519
- * <p>The full POSIX identity, including user ID (<code>Uid</code>), group ID
1520
- * (<code>Gid</code>), and any secondary groups IDs (<code>SecondaryGids</code>), that controls
1521
- * your users' access to your Amazon EFS file systems. The POSIX permissions that are set on
1522
- * files and directories in your file system determine the level of access your users get when
1523
- * transferring files into and out of your Amazon EFS file systems.</p>
1524
- */
1525
- PosixProfile?: PosixProfile;
1526
-
1527
- /**
1528
- * <p>Specifies the Amazon Resource Name (ARN) of the IAM role that controls your users' access to your Amazon S3 bucket or EFS
1529
- * file system. The policies attached to this role determine the level of access that you want to provide your users when transferring
1530
- * files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the
1531
- * server to access your resources when servicing your users' transfer requests.</p>
1532
- */
1533
- Role?: string;
1534
-
1535
- /**
1536
- * <p>A unique identifier that is required to identify specific groups within your directory.
1537
- * The users of the group that you associate have access to your Amazon S3 or Amazon EFS
1538
- * resources over the enabled protocols using Amazon Web Services Transfer Family. If you know the group name,
1539
- * you can view the SID values by running the following command using Windows PowerShell.</p>
1540
- *
1541
- * <p>
1542
- * <code>Get-ADGroup -Filter {samAccountName -like "<i>YourGroupName</i>*"} -Properties * | Select SamAccountName,ObjectSid</code>
1543
- * </p>
1544
- *
1545
- * <p>In that command, replace <i>YourGroupName</i> with the name of your Active Directory group.</p>
1546
- *
1547
- * <p>The regex used to validate this parameter is a string of characters consisting of uppercase and lowercase alphanumeric characters with no spaces.
1548
- * You can also include underscores or any of the following characters: =,.@:/-</p>
1549
- */
1550
- ExternalId?: string;
1551
- }
1552
-
1553
- export namespace DescribedAccess {
1554
- /**
1555
- * @internal
1556
- */
1557
- export const filterSensitiveLog = (obj: DescribedAccess): any => ({
1558
- ...obj,
1559
- });
1560
- }
1561
-
1562
- export interface DescribeAccessResponse {
1563
- /**
1564
- * <p>A system-assigned unique identifier for a server that has this access assigned.</p>
1565
- */
1566
- ServerId: string | undefined;
1567
-
1568
- /**
1569
- * <p>The external ID of the server that the access is attached to.</p>
1570
- */
1571
- Access: DescribedAccess | undefined;
1572
- }
1573
-
1574
- export namespace DescribeAccessResponse {
1575
- /**
1576
- * @internal
1577
- */
1578
- export const filterSensitiveLog = (obj: DescribeAccessResponse): any => ({
1579
- ...obj,
1580
- });
1581
- }
1582
-
1583
- /**
1584
- * <p>Specifies the details for the file location for the file being used in the workflow. Only applicable if you are using S3 storage.</p>
1585
- * <p>
1586
- * You need to provide the bucket and key.
1587
- * The key can represent either a path or a file.
1588
- * This is determined by whether or not you end the key value with the forward slash (/) character.
1589
- * If the final character is "/", then your file is copied to the folder, and its name does not change.
1590
- * If, rather, the final character is alphanumeric, your uploaded file is renamed to the path value. In this case, if a file with that name already exists, it is overwritten.
1591
- * </p>
1592
- * <p>For example, if your path is <code>shared-files/bob/</code>, your uploaded files are copied to the <code>shared-files/bob/</code>, folder.
1593
- * If your path is <code>shared-files/today</code>, each uploaded file is copied to the <code>shared-files</code> folder and named <code>today</code>:
1594
- * each upload overwrites the previous version of the <i>bob</i> file.</p>
1595
- */
1596
- export interface S3FileLocation {
1597
- /**
1598
- * <p>Specifies the S3 bucket that contains the file being used.</p>
1599
- */
1600
- Bucket?: string;
1601
-
1602
- /**
1603
- * <p>The name assigned to the file when it was created in S3. You use the object key to retrieve the object.</p>
1604
- */
1605
- Key?: string;
1606
-
1607
- /**
1608
- * <p>Specifies the file version.</p>
1609
- */
1610
- VersionId?: string;
1611
-
1612
- /**
1613
- * <p>The entity tag is a hash of the object. The ETag reflects changes only to the contents of an object, not its metadata.</p>
1614
- */
1615
- Etag?: string;
1616
- }
1617
-
1618
- export namespace S3FileLocation {
1619
- /**
1620
- * @internal
1621
- */
1622
- export const filterSensitiveLog = (obj: S3FileLocation): any => ({
1623
- ...obj,
1624
- });
1625
- }
1626
-
1627
- /**
1628
- * <p>Specifies the Amazon S3 or EFS file details to be used in the step.</p>
1629
- */
1630
- export interface FileLocation {
1631
- /**
1632
- * <p>Specifies the S3 details for the file being used, such as bucket, Etag, and so forth.</p>
1633
- */
1634
- S3FileLocation?: S3FileLocation;
1635
-
1636
- /**
1637
- * <p>Specifies the Amazon EFS ID and the path for the file being used.</p>
1638
- */
1639
- EfsFileLocation?: EfsFileLocation;
1640
- }
1641
-
1642
- export namespace FileLocation {
1643
- /**
1644
- * @internal
1645
- */
1646
- export const filterSensitiveLog = (obj: FileLocation): any => ({
1647
- ...obj,
1648
- });
1649
- }
1650
-
1651
- /**
1652
- * <p>Consists of the logging role and the log group name.</p>
1653
- */
1654
- export interface LoggingConfiguration {
1655
- /**
1656
- * <p>Specifies the Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) role that allows a server to turn
1657
- * on Amazon CloudWatch logging for Amazon S3 or Amazon EFS events. When set, user activity can be viewed in
1658
- * your CloudWatch logs.</p>
1659
- */
1660
- LoggingRole?: string;
1661
-
1662
- /**
1663
- * <p>The name of the CloudWatch logging group for the Amazon Web Services Transfer server to which this workflow belongs.</p>
1664
- */
1665
- LogGroupName?: string;
1666
- }
1667
-
1668
- export namespace LoggingConfiguration {
1669
- /**
1670
- * @internal
1671
- */
1672
- export const filterSensitiveLog = (obj: LoggingConfiguration): any => ({
1673
- ...obj,
1674
- });
1675
- }
1676
-
1677
- export enum ExecutionErrorType {
1678
- PERMISSION_DENIED = "PERMISSION_DENIED",
1679
- }
1680
-
1681
- /**
1682
- * <p>Specifies the error message and type, for an error that occurs during the execution of the workflow.</p>
1683
- */
1684
- export interface ExecutionError {
1685
- /**
1686
- * <p>Specifies the error type: currently, the only valid value is <code>PERMISSION_DENIED</code>, which occurs
1687
- * if your policy does not contain the correct permissions to complete one or more of the steps in the workflow.</p>
1688
- */
1689
- Type: ExecutionErrorType | string | undefined;
1690
-
1691
- /**
1692
- * <p>Specifies the descriptive message that corresponds to the <code>ErrorType</code>.</p>
1693
- */
1694
- Message: string | undefined;
1695
- }
1696
-
1697
- export namespace ExecutionError {
1698
- /**
1699
- * @internal
1700
- */
1701
- export const filterSensitiveLog = (obj: ExecutionError): any => ({
1702
- ...obj,
1703
- });
1704
- }
1705
-
1706
- /**
1707
- * <p>Specifies the following details for the step: error (if any), outputs (if any), and the step type.</p>
1708
- */
1709
- export interface ExecutionStepResult {
1710
- /**
1711
- * <p>One of the available step types.</p>
1712
- * <ul>
1713
- * <li>
1714
- * <p>
1715
- * <i>Copy</i>: copy the file to another location</p>
1716
- * </li>
1717
- * <li>
1718
- * <p>
1719
- * <i>Custom</i>: custom step with a lambda target</p>
1720
- * </li>
1721
- * <li>
1722
- * <p>
1723
- * <i>Delete</i>: delete the file</p>
1724
- * </li>
1725
- * <li>
1726
- * <p>
1727
- * <i>Tag</i>: add a tag to the file</p>
1728
- * </li>
1729
- * </ul>
1730
- */
1731
- StepType?: WorkflowStepType | string;
1732
-
1733
- /**
1734
- * <p>The values for the key/value pair applied as a tag to the file. Only applicable if the step type is <code>TAG</code>.</p>
1735
- */
1736
- Outputs?: string;
1737
-
1738
- /**
1739
- * <p>Specifies the details for an error, if it occurred during execution of the specified workfow step.</p>
1740
- */
1741
- Error?: ExecutionError;
1742
- }
1743
-
1744
- export namespace ExecutionStepResult {
1745
- /**
1746
- * @internal
1747
- */
1748
- export const filterSensitiveLog = (obj: ExecutionStepResult): any => ({
1749
- ...obj,
1750
- });
1751
- }
1752
-
1753
- /**
1754
- * <p>Specifies the steps in the workflow, as well as the steps to execute in case of any errors during workflow execution.</p>
1755
- */
1756
- export interface ExecutionResults {
1757
- /**
1758
- * <p>Specifies the details for the steps that are in the specified workflow.</p>
1759
- */
1760
- Steps?: ExecutionStepResult[];
1761
-
1762
- /**
1763
- * <p>Specifies the steps (actions) to take if any errors are encountered during execution of the workflow.</p>
1764
- */
1765
- OnExceptionSteps?: ExecutionStepResult[];
1766
- }
1767
-
1768
- export namespace ExecutionResults {
1769
- /**
1770
- * @internal
1771
- */
1772
- export const filterSensitiveLog = (obj: ExecutionResults): any => ({
1773
- ...obj,
1774
- });
1775
- }
1776
-
1777
- /**
1778
- * <p>Specifies the user name, server ID, and session ID for a workflow.</p>
1779
- */
1780
- export interface UserDetails {
1781
- /**
1782
- * <p>A unique string that identifies a user account associated with a server.</p>
1783
- */
1784
- UserName: string | undefined;
1785
-
1786
- /**
1787
- * <p>The system-assigned unique identifier for a Transfer server instance. </p>
1788
- */
1789
- ServerId: string | undefined;
1790
-
1791
- /**
1792
- * <p>The system-assigned unique identifier for a session that corresponds to the workflow.</p>
1793
- */
1794
- SessionId?: string;
1795
- }
1796
-
1797
- export namespace UserDetails {
1798
- /**
1799
- * @internal
1800
- */
1801
- export const filterSensitiveLog = (obj: UserDetails): any => ({
1802
- ...obj,
1803
- });
1804
- }
1805
-
1806
- /**
1807
- * <p>A container object for the session details associated with a workflow.</p>
1808
- */
1809
- export interface ServiceMetadata {
1810
- /**
1811
- * <p>The Server ID (<code>ServerId</code>), Session ID (<code>SessionId</code>) and user (<code>UserName</code>) make up the <code>UserDetails</code>.</p>
1812
- */
1813
- UserDetails: UserDetails | undefined;
1814
- }
1815
-
1816
- export namespace ServiceMetadata {
1817
- /**
1818
- * @internal
1819
- */
1820
- export const filterSensitiveLog = (obj: ServiceMetadata): any => ({
1821
- ...obj,
1822
- });
1823
- }
1824
-
1825
- export enum ExecutionStatus {
1826
- COMPLETED = "COMPLETED",
1827
- EXCEPTION = "EXCEPTION",
1828
- HANDLING_EXCEPTION = "HANDLING_EXCEPTION",
1829
- IN_PROGRESS = "IN_PROGRESS",
1830
- }
1831
-
1832
- /**
1833
- * <p>The details for an execution object.</p>
1834
- */
1835
- export interface DescribedExecution {
1836
- /**
1837
- * <p>A unique identifier for the execution of a workflow.</p>
1838
- */
1839
- ExecutionId?: string;
1840
-
1841
- /**
1842
- * <p>A structure that describes the Amazon S3 or EFS file location.
1843
- * This is the file location when the execution begins: if the file is being copied,
1844
- * this is the initial (as opposed to destination) file location.</p>
1845
- */
1846
- InitialFileLocation?: FileLocation;
1847
-
1848
- /**
1849
- * <p>A container object for the session details associated with a workflow.</p>
1850
- */
1851
- ServiceMetadata?: ServiceMetadata;
1852
-
1853
- /**
1854
- * <p>The IAM role associated with the execution.</p>
1855
- */
1856
- ExecutionRole?: string;
1857
-
1858
- /**
1859
- * <p>The IAM logging role associated with the execution.</p>
1860
- */
1861
- LoggingConfiguration?: LoggingConfiguration;
1862
-
1863
- /**
1864
- * <p>The full POSIX identity, including user ID (<code>Uid</code>), group ID
1865
- * (<code>Gid</code>), and any secondary groups IDs (<code>SecondaryGids</code>), that controls
1866
- * your users' access to your Amazon EFS file systems. The POSIX permissions that are set on
1867
- * files and directories in your file system determine the level of access your users get when
1868
- * transferring files into and out of your Amazon EFS file systems.</p>
1869
- */
1870
- PosixProfile?: PosixProfile;
1871
-
1872
- /**
1873
- * <p>The status is one of the execution. Can be in progress, completed, exception encountered, or handling the exception.
1874
- * </p>
1875
- */
1876
- Status?: ExecutionStatus | string;
1877
-
1878
- /**
1879
- * <p>A structure that describes the execution results. This includes a list of the steps along with the details of each step,
1880
- * error type and message (if any), and the <code>OnExceptionSteps</code> structure.</p>
1881
- */
1882
- Results?: ExecutionResults;
1883
- }
1884
-
1885
- export namespace DescribedExecution {
1886
- /**
1887
- * @internal
1888
- */
1889
- export const filterSensitiveLog = (obj: DescribedExecution): any => ({
1890
- ...obj,
1891
- });
1892
- }
1893
-
1894
- /**
1895
- * <p>Describes the properties of a security policy that was specified. For more information
1896
- * about security policies, see <a href="https://docs.aws.amazon.com/transfer/latest/userguide/security-policies.html">Working with security
1897
- * policies</a>.</p>
1898
- */
1899
- export interface DescribedSecurityPolicy {
1900
- /**
1901
- * <p>Specifies whether this policy enables Federal Information Processing Standards
1902
- * (FIPS).</p>
1903
- */
1904
- Fips?: boolean;
1905
-
1906
- /**
1907
- * <p>Specifies the name of the security policy that is attached to the server.</p>
1908
- */
1909
- SecurityPolicyName: string | undefined;
1910
-
1911
- /**
1912
- * <p>Specifies the enabled Secure Shell (SSH) cipher encryption algorithms in the security
1913
- * policy that is attached to the server.</p>
1914
- */
1915
- SshCiphers?: string[];
1916
-
1917
- /**
1918
- * <p>Specifies the enabled SSH key exchange (KEX) encryption algorithms in the security policy
1919
- * that is attached to the server.</p>
1920
- */
1921
- SshKexs?: string[];
1922
-
1923
- /**
1924
- * <p>Specifies the enabled SSH message authentication code (MAC) encryption algorithms in the
1925
- * security policy that is attached to the server.</p>
1926
- */
1927
- SshMacs?: string[];
1928
-
1929
- /**
1930
- * <p>Specifies the enabled Transport Layer Security (TLS) cipher encryption algorithms in the
1931
- * security policy that is attached to the server.</p>
1932
- */
1933
- TlsCiphers?: string[];
1934
- }
1935
-
1936
- export namespace DescribedSecurityPolicy {
1937
- /**
1938
- * @internal
1939
- */
1940
- export const filterSensitiveLog = (obj: DescribedSecurityPolicy): any => ({
1941
- ...obj,
1942
- });
1943
- }
1944
-
1945
- /**
1946
- * <p>
1947
- * The protocol settings that are configured for your server.
1948
- * </p>
1949
- * <note>
1950
- * <p>
1951
- * This type is only valid in the <code>UpdateServer</code> API.
1952
- * </p>
1953
- * </note>
1954
- */
1955
- export interface ProtocolDetails {
1956
- /**
1957
- * <p>
1958
- * Indicates passive mode, for FTP and FTPS protocols.
1959
- * Enter a single dotted-quad IPv4 address, such as the external IP address of a firewall, router, or load balancer.
1960
- * For example:
1961
- * </p>
1962
- * <p>
1963
- * <code>
1964
- * aws transfer update-server --protocol-details PassiveIp=<i>0.0.0.0</i>
1965
- * </code>
1966
- * </p>
1967
- * <p>Replace <code>
1968
- * <i>0.0.0.0</i>
1969
- * </code> in the example above with the actual IP address you want to use.</p>
1970
- * <note>
1971
- * <p>
1972
- * If you change the <code>PassiveIp</code> value, you must stop and then restart your Transfer server for the change to take effect. For details on using Passive IP (PASV) in a NAT environment, see <a href="http://aws.amazon.com/blogs/storage/configuring-your-ftps-server-behind-a-firewall-or-nat-with-aws-transfer-family/">Configuring your FTPS server behind a firewall or NAT with Amazon Web Services Transfer Family</a>.
1973
- * </p>
1974
- * </note>
1975
- */
1976
- PassiveIp?: string;
1977
- }
1978
-
1979
- export namespace ProtocolDetails {
1980
- /**
1981
- * @internal
1982
- */
1983
- export const filterSensitiveLog = (obj: ProtocolDetails): any => ({
1984
- ...obj,
1985
- });
1986
- }
1987
-
1988
- export enum State {
1989
- OFFLINE = "OFFLINE",
1990
- ONLINE = "ONLINE",
1991
- STARTING = "STARTING",
1992
- START_FAILED = "START_FAILED",
1993
- STOPPING = "STOPPING",
1994
- STOP_FAILED = "STOP_FAILED",
1995
- }
1996
-
1997
- /**
1998
- * <p>Describes the properties of a file transfer protocol-enabled server that was
1999
- * specified.</p>
2000
- */
2001
- export interface DescribedServer {
2002
- /**
2003
- * <p>Specifies the unique Amazon Resource Name (ARN) of the server.</p>
2004
- */
2005
- Arn: string | undefined;
2006
-
2007
- /**
2008
- * <p>Specifies the ARN of the Amazon Web ServicesCertificate Manager (ACM) certificate. Required when
2009
- * <code>Protocols</code> is set to <code>FTPS</code>.</p>
2010
- */
2011
- Certificate?: string;
2012
-
2013
- /**
2014
- * <p>
2015
- * The protocol settings that are configured for your server.
2016
- * </p>
2017
- * <p>
2018
- * Use the <code>PassiveIp</code> parameter to indicate passive mode.
2019
- * Enter a single dotted-quad IPv4 address, such as the external IP address of a firewall, router, or load balancer.
2020
- * </p>
2021
- */
2022
- ProtocolDetails?: ProtocolDetails;
2023
-
2024
- /**
2025
- * <p>Specifies the domain of the storage system that is used for file transfers.</p>
2026
- */
2027
- Domain?: Domain | string;
2028
-
2029
- /**
2030
- * <p>The virtual private cloud (VPC) endpoint settings that are configured for your server.
2031
- * When you host your endpoint within your VPC, you can make it accessible only to resources
2032
- * within your VPC, or you can attach Elastic IP addresses and make it accessible to clients over
2033
- * the internet. Your VPC's default security groups are automatically assigned to your
2034
- * endpoint.</p>
2035
- */
2036
- EndpointDetails?: EndpointDetails;
2037
-
2038
- /**
2039
- * <p>Defines the type of endpoint that your server is connected to. If your server is connected
2040
- * to a VPC endpoint, your server isn't accessible over the public internet.</p>
2041
- */
2042
- EndpointType?: EndpointType | string;
2043
-
2044
- /**
2045
- * <p>Specifies the Base64-encoded SHA256 fingerprint of the server's host key. This value
2046
- * is equivalent to the output of the <code>ssh-keygen -l -f my-new-server-key</code>
2047
- * command.</p>
2048
- */
2049
- HostKeyFingerprint?: string;
2050
-
2051
- /**
2052
- * <p>Specifies information to call a customer-supplied authentication API. This field is not
2053
- * populated when the <code>IdentityProviderType</code> of a server is
2054
- * <code>AWS_DIRECTORY_SERVICE</code> or <code>SERVICE_MANAGED</code>.</p>
2055
- */
2056
- IdentityProviderDetails?: IdentityProviderDetails;
2057
-
2058
- /**
2059
- * <p>Specifies the mode of authentication for a server. The default value is
2060
- * <code>SERVICE_MANAGED</code>, which allows you to store and access user credentials within
2061
- * the Amazon Web Services Transfer Family service.</p>
2062
- * <p>Use <code>AWS_DIRECTORY_SERVICE</code> to provide access to
2063
- * Active Directory groups in Amazon Web Services Managed Active Directory or Microsoft Active Directory in your
2064
- * on-premises environment or in Amazon Web Services using AD Connectors. This option also requires you to
2065
- * provide a Directory ID using the <code>IdentityProviderDetails</code> parameter.</p>
2066
- * <p>Use the <code>API_GATEWAY</code> value to integrate with an identity provider of your choosing. The
2067
- * <code>API_GATEWAY</code> setting requires you to provide an API Gateway endpoint URL to call
2068
- * for authentication using the <code>IdentityProviderDetails</code> parameter.</p>
2069
- */
2070
- IdentityProviderType?: IdentityProviderType | string;
2071
-
2072
- /**
2073
- * <p>Specifies the Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) role that allows a server to turn
2074
- * on Amazon CloudWatch logging for Amazon S3 or Amazon EFS events. When set, user activity can be viewed in
2075
- * your CloudWatch logs.</p>
2076
- */
2077
- LoggingRole?: string;
2078
-
2079
- /**
2080
- * <p>Specifies the file transfer protocol or protocols over which your file transfer protocol
2081
- * client can connect to your server's endpoint. The available protocols are:</p>
2082
- *
2083
- * <ul>
2084
- * <li>
2085
- * <p>
2086
- * <code>SFTP</code> (Secure Shell (SSH) File Transfer Protocol): File transfer over
2087
- * SSH</p>
2088
- * </li>
2089
- * <li>
2090
- * <p>
2091
- * <code>FTPS</code> (File Transfer Protocol Secure): File transfer with TLS
2092
- * encryption</p>
2093
- * </li>
2094
- * <li>
2095
- * <p>
2096
- * <code>FTP</code> (File Transfer Protocol): Unencrypted file transfer</p>
2097
- * </li>
2098
- * </ul>
2099
- */
2100
- Protocols?: (Protocol | string)[];
2101
-
2102
- /**
2103
- * <p>Specifies the name of the security policy that is attached to the server.</p>
2104
- */
2105
- SecurityPolicyName?: string;
2106
-
2107
- /**
2108
- * <p>Specifies the unique system-assigned identifier for a server that you instantiate.</p>
2109
- */
2110
- ServerId?: string;
2111
-
2112
- /**
2113
- * <p>Specifies the condition of a server for the server that was described. A value of
2114
- * <code>ONLINE</code> indicates that the server can accept jobs and transfer files. A
2115
- * <code>State</code> value of <code>OFFLINE</code> means that the server cannot perform file
2116
- * transfer operations.</p>
2117
- *
2118
- * <p>The states of <code>STARTING</code> and <code>STOPPING</code> indicate that the server is
2119
- * in an intermediate state, either not fully able to respond, or not fully offline. The values
2120
- * of <code>START_FAILED</code> or <code>STOP_FAILED</code> can indicate an error
2121
- * condition.</p>
2122
- */
2123
- State?: State | string;
2124
-
2125
- /**
2126
- * <p>Specifies the key-value pairs that you can use to search for and group servers that were
2127
- * assigned to the server that was described.</p>
2128
- */
2129
- Tags?: Tag[];
2130
-
2131
- /**
2132
- * <p>Specifies the number of users that are assigned to a server you specified with the
2133
- * <code>ServerId</code>.</p>
2134
- */
2135
- UserCount?: number;
2136
-
2137
- /**
2138
- * <p>Specifies the workflow ID for the workflow to assign and the execution role used for executing the workflow.</p>
2139
- */
2140
- WorkflowDetails?: WorkflowDetails;
2141
- }
2142
-
2143
- export namespace DescribedServer {
2144
- /**
2145
- * @internal
2146
- */
2147
- export const filterSensitiveLog = (obj: DescribedServer): any => ({
2148
- ...obj,
2149
- });
2150
- }
2151
-
2152
- /**
2153
- * <p>Provides information about the public Secure Shell (SSH) key that is associated with a
2154
- * user account for the specific file transfer protocol-enabled server (as identified by
2155
- * <code>ServerId</code>). The information returned includes the date the key was imported, the
2156
- * public key contents, and the public key ID. A user can store more than one SSH public key
2157
- * associated with their user name on a specific server.</p>
2158
- */
2159
- export interface SshPublicKey {
2160
- /**
2161
- * <p>Specifies the date that the public key was added to the user account.</p>
2162
- */
2163
- DateImported: Date | undefined;
2164
-
2165
- /**
2166
- * <p>Specifies the content of the SSH public key as specified by the
2167
- * <code>PublicKeyId</code>.</p>
2168
- */
2169
- SshPublicKeyBody: string | undefined;
2170
-
2171
- /**
2172
- * <p>Specifies the <code>SshPublicKeyId</code> parameter contains the identifier of the public
2173
- * key.</p>
2174
- */
2175
- SshPublicKeyId: string | undefined;
2176
- }
2177
-
2178
- export namespace SshPublicKey {
2179
- /**
2180
- * @internal
2181
- */
2182
- export const filterSensitiveLog = (obj: SshPublicKey): any => ({
2183
- ...obj,
2184
- });
2185
- }
2186
-
2187
- /**
2188
- * <p>Describes the properties of a user that was specified.</p>
2189
- */
2190
- export interface DescribedUser {
2191
- /**
2192
- * <p>Specifies the unique Amazon Resource Name (ARN) for the user that was requested to be
2193
- * described.</p>
2194
- */
2195
- Arn: string | undefined;
2196
-
2197
- /**
2198
- * <p>The landing directory (folder) for a user when they log in to the server using the client.</p>
2199
- * <p>A <code>HomeDirectory</code> example is <code>/bucket_name/home/mydirectory</code>.</p>
2200
- */
2201
- HomeDirectory?: string;
2202
-
2203
- /**
2204
- * <p>Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should
2205
- * be visible to your user and how you want to make them visible. You must specify the
2206
- * <code>Entry</code> and <code>Target</code> pair, where <code>Entry</code> shows how the path
2207
- * is made visible and <code>Target</code> is the actual Amazon S3 or Amazon EFS path. If you
2208
- * only specify a target, it is displayed as is. You also must ensure that your Amazon Web Services Identity
2209
- * and Access Management (IAM) role provides access to paths in <code>Target</code>. This value
2210
- * can only be set when <code>HomeDirectoryType</code> is set to
2211
- * <i>LOGICAL</i>.</p>
2212
- *
2213
- * <p>In most cases, you can use this value instead of the session policy to lock your user
2214
- * down to the designated home directory ("<code>chroot</code>"). To do this, you can set
2215
- * <code>Entry</code> to '/' and set <code>Target</code> to the HomeDirectory
2216
- * parameter value.</p>
2217
- */
2218
- HomeDirectoryMappings?: HomeDirectoryMapEntry[];
2219
-
2220
- /**
2221
- * <p>The type of landing directory (folder) you want your users' home directory to be when they log into the server.
2222
- * If you set it to <code>PATH</code>, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients.
2223
- * If you set it <code>LOGICAL</code>, you need to provide mappings in the <code>HomeDirectoryMappings</code> for how you want to make Amazon
2224
- * S3 or EFS paths visible to your users.</p>
2225
- */
2226
- HomeDirectoryType?: HomeDirectoryType | string;
2227
-
2228
- /**
2229
- * <p>A session policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user
2230
- * access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include <code>${Transfer:UserName}</code>,
2231
- * <code>${Transfer:HomeDirectory}</code>, and <code>${Transfer:HomeBucket}</code>.</p>
2232
- */
2233
- Policy?: string;
2234
-
2235
- /**
2236
- * <p>Specifies the full POSIX identity, including user ID (<code>Uid</code>), group ID
2237
- * (<code>Gid</code>), and any secondary groups IDs (<code>SecondaryGids</code>), that controls
2238
- * your users' access to your Amazon Elastic File System (Amazon EFS) file systems. The POSIX
2239
- * permissions that are set on files and directories in your file system determine the level of
2240
- * access your users get when transferring files into and out of your Amazon EFS file
2241
- * systems.</p>
2242
- */
2243
- PosixProfile?: PosixProfile;
2244
-
2245
- /**
2246
- * <p>Specifies the Amazon Resource Name (ARN) of the IAM role that controls your users' access to your Amazon S3 bucket or EFS
2247
- * file system. The policies attached to this role determine the level of access that you want to provide your users when transferring
2248
- * files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the
2249
- * server to access your resources when servicing your users' transfer requests.</p>
2250
- */
2251
- Role?: string;
2252
-
2253
- /**
2254
- * <p>Specifies the public key portion of the Secure Shell (SSH) keys stored for the described
2255
- * user.</p>
2256
- */
2257
- SshPublicKeys?: SshPublicKey[];
2258
-
2259
- /**
2260
- * <p>Specifies the key-value pairs for the user requested. Tag can be used to search for and
2261
- * group users for a variety of purposes.</p>
2262
- */
2263
- Tags?: Tag[];
2264
-
2265
- /**
2266
- * <p>Specifies the name of the user that was requested to be described. User names are used for
2267
- * authentication purposes. This is the string that will be used by your user when they log in to
2268
- * your server.</p>
2269
- */
2270
- UserName?: string;
2271
- }
2272
-
2273
- export namespace DescribedUser {
2274
- /**
2275
- * @internal
2276
- */
2277
- export const filterSensitiveLog = (obj: DescribedUser): any => ({
2278
- ...obj,
2279
- });
2280
- }
2281
-
2282
- /**
2283
- * <p>Describes the properties of the specified workflow</p>
2284
- */
2285
- export interface DescribedWorkflow {
2286
- /**
2287
- * <p>Specifies the unique Amazon Resource Name (ARN) for the workflow.</p>
2288
- */
2289
- Arn: string | undefined;
2290
-
2291
- /**
2292
- * <p>Specifies the text description for the workflow.</p>
2293
- */
2294
- Description?: string;
2295
-
2296
- /**
2297
- * <p>Specifies the details for the steps that are in the specified workflow.</p>
2298
- */
2299
- Steps?: WorkflowStep[];
2300
-
2301
- /**
2302
- * <p>Specifies the steps (actions) to take if any errors are encountered during execution of the workflow.</p>
2303
- */
2304
- OnExceptionSteps?: WorkflowStep[];
2305
-
2306
- /**
2307
- * <p>A unique identifier for the workflow.</p>
2308
- */
2309
- WorkflowId?: string;
2310
-
2311
- /**
2312
- * <p>Key-value pairs that can be used to group and search for workflows. Tags are metadata attached to workflows for any purpose.</p>
2313
- */
2314
- Tags?: Tag[];
2315
- }
2316
-
2317
- export namespace DescribedWorkflow {
2318
- /**
2319
- * @internal
2320
- */
2321
- export const filterSensitiveLog = (obj: DescribedWorkflow): any => ({
2322
- ...obj,
2323
- });
2324
- }
2325
-
2326
- export interface DescribeExecutionRequest {
2327
- /**
2328
- * <p>A unique identifier for the execution of a workflow.</p>
2329
- */
2330
- ExecutionId: string | undefined;
2331
-
2332
- /**
2333
- * <p>A unique identifier for the workflow.</p>
2334
- */
2335
- WorkflowId: string | undefined;
2336
- }
2337
-
2338
- export namespace DescribeExecutionRequest {
2339
- /**
2340
- * @internal
2341
- */
2342
- export const filterSensitiveLog = (obj: DescribeExecutionRequest): any => ({
2343
- ...obj,
2344
- });
2345
- }
2346
-
2347
- export interface DescribeExecutionResponse {
2348
- /**
2349
- * <p>A unique identifier for the workflow.</p>
2350
- */
2351
- WorkflowId: string | undefined;
2352
-
2353
- /**
2354
- * <p>The structure that contains the details of the workflow' execution.</p>
2355
- */
2356
- Execution: DescribedExecution | undefined;
2357
- }
2358
-
2359
- export namespace DescribeExecutionResponse {
2360
- /**
2361
- * @internal
2362
- */
2363
- export const filterSensitiveLog = (obj: DescribeExecutionResponse): any => ({
2364
- ...obj,
2365
- });
2366
- }
2367
-
2368
- export interface DescribeSecurityPolicyRequest {
2369
- /**
2370
- * <p>Specifies the name of the security policy that is attached to the server.</p>
2371
- */
2372
- SecurityPolicyName: string | undefined;
2373
- }
2374
-
2375
- export namespace DescribeSecurityPolicyRequest {
2376
- /**
2377
- * @internal
2378
- */
2379
- export const filterSensitiveLog = (obj: DescribeSecurityPolicyRequest): any => ({
2380
- ...obj,
2381
- });
2382
- }
2383
-
2384
- export interface DescribeSecurityPolicyResponse {
2385
- /**
2386
- * <p>An array containing the properties of the security policy.</p>
2387
- */
2388
- SecurityPolicy: DescribedSecurityPolicy | undefined;
2389
- }
2390
-
2391
- export namespace DescribeSecurityPolicyResponse {
2392
- /**
2393
- * @internal
2394
- */
2395
- export const filterSensitiveLog = (obj: DescribeSecurityPolicyResponse): any => ({
2396
- ...obj,
2397
- });
2398
- }
2399
-
2400
- export interface DescribeServerRequest {
2401
- /**
2402
- * <p>A system-assigned unique identifier for a server.</p>
2403
- */
2404
- ServerId: string | undefined;
2405
- }
2406
-
2407
- export namespace DescribeServerRequest {
2408
- /**
2409
- * @internal
2410
- */
2411
- export const filterSensitiveLog = (obj: DescribeServerRequest): any => ({
2412
- ...obj,
2413
- });
2414
- }
2415
-
2416
- export interface DescribeServerResponse {
2417
- /**
2418
- * <p>An array containing the properties of a server with the <code>ServerID</code> you
2419
- * specified.</p>
2420
- */
2421
- Server: DescribedServer | undefined;
2422
- }
2423
-
2424
- export namespace DescribeServerResponse {
2425
- /**
2426
- * @internal
2427
- */
2428
- export const filterSensitiveLog = (obj: DescribeServerResponse): any => ({
2429
- ...obj,
2430
- });
2431
- }
2432
-
2433
- export interface DescribeUserRequest {
2434
- /**
2435
- * <p>A system-assigned unique identifier for a server that has this user assigned.</p>
2436
- */
2437
- ServerId: string | undefined;
2438
-
2439
- /**
2440
- * <p>The name of the user assigned to one or more servers. User names are part of the sign-in
2441
- * credentials to use the Amazon Web Services Transfer Family service and perform file transfer tasks.</p>
2442
- */
2443
- UserName: string | undefined;
2444
- }
2445
-
2446
- export namespace DescribeUserRequest {
2447
- /**
2448
- * @internal
2449
- */
2450
- export const filterSensitiveLog = (obj: DescribeUserRequest): any => ({
2451
- ...obj,
2452
- });
2453
- }
2454
-
2455
- export interface DescribeUserResponse {
2456
- /**
2457
- * <p>A system-assigned unique identifier for a server that has this user assigned.</p>
2458
- */
2459
- ServerId: string | undefined;
2460
-
2461
- /**
2462
- * <p>An array containing the properties of the user account for the <code>ServerID</code> value
2463
- * that you specified.</p>
2464
- */
2465
- User: DescribedUser | undefined;
2466
- }
2467
-
2468
- export namespace DescribeUserResponse {
2469
- /**
2470
- * @internal
2471
- */
2472
- export const filterSensitiveLog = (obj: DescribeUserResponse): any => ({
2473
- ...obj,
2474
- });
2475
- }
2476
-
2477
- export interface DescribeWorkflowRequest {
2478
- /**
2479
- * <p>A unique identifier for the workflow.</p>
2480
- */
2481
- WorkflowId: string | undefined;
2482
- }
2483
-
2484
- export namespace DescribeWorkflowRequest {
2485
- /**
2486
- * @internal
2487
- */
2488
- export const filterSensitiveLog = (obj: DescribeWorkflowRequest): any => ({
2489
- ...obj,
2490
- });
2491
- }
2492
-
2493
- export interface DescribeWorkflowResponse {
2494
- /**
2495
- * <p>The structure that contains the details of the workflow.</p>
2496
- */
2497
- Workflow: DescribedWorkflow | undefined;
2498
- }
2499
-
2500
- export namespace DescribeWorkflowResponse {
2501
- /**
2502
- * @internal
2503
- */
2504
- export const filterSensitiveLog = (obj: DescribeWorkflowResponse): any => ({
2505
- ...obj,
2506
- });
2507
- }
2508
-
2509
- export interface ImportSshPublicKeyRequest {
2510
- /**
2511
- * <p>A system-assigned unique identifier for a server.</p>
2512
- */
2513
- ServerId: string | undefined;
2514
-
2515
- /**
2516
- * <p>The public key portion of an SSH key pair.</p>
2517
- */
2518
- SshPublicKeyBody: string | undefined;
2519
-
2520
- /**
2521
- * <p>The name of the user account that is assigned to one or more servers.</p>
2522
- */
2523
- UserName: string | undefined;
2524
- }
2525
-
2526
- export namespace ImportSshPublicKeyRequest {
2527
- /**
2528
- * @internal
2529
- */
2530
- export const filterSensitiveLog = (obj: ImportSshPublicKeyRequest): any => ({
2531
- ...obj,
2532
- });
2533
- }
2534
-
2535
- /**
2536
- * <p>Identifies the user, the server they belong to, and the identifier of the SSH public key
2537
- * associated with that user. A user can have more than one key on each server that they are
2538
- * associated with.</p>
2539
- */
2540
- export interface ImportSshPublicKeyResponse {
2541
- /**
2542
- * <p>A system-assigned unique identifier for a server.</p>
2543
- */
2544
- ServerId: string | undefined;
2545
-
2546
- /**
2547
- * <p>The name given to a public key by the system that was imported.</p>
2548
- */
2549
- SshPublicKeyId: string | undefined;
2550
-
2551
- /**
2552
- * <p>A user name assigned to the <code>ServerID</code> value that you specified.</p>
2553
- */
2554
- UserName: string | undefined;
2555
- }
2556
-
2557
- export namespace ImportSshPublicKeyResponse {
2558
- /**
2559
- * @internal
2560
- */
2561
- export const filterSensitiveLog = (obj: ImportSshPublicKeyResponse): any => ({
2562
- ...obj,
2563
- });
2564
- }
2565
-
2566
- /**
2567
- * <p>The <code>NextToken</code> parameter that was passed is invalid.</p>
2568
- */
2569
- export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer {
2570
- name: "InvalidNextTokenException";
2571
- $fault: "client";
2572
- Message: string | undefined;
2573
- }
2574
-
2575
- export namespace InvalidNextTokenException {
2576
- /**
2577
- * @internal
2578
- */
2579
- export const filterSensitiveLog = (obj: InvalidNextTokenException): any => ({
2580
- ...obj,
2581
- });
2582
- }
2583
-
2584
- export interface ListAccessesRequest {
2585
- /**
2586
- * <p>Specifies the maximum number of access SIDs to return.</p>
2587
- */
2588
- MaxResults?: number;
2589
-
2590
- /**
2591
- * <p>When you can get additional results from the <code>ListAccesses</code> call, a
2592
- * <code>NextToken</code> parameter is returned in the output. You can then pass in a
2593
- * subsequent command to the <code>NextToken</code> parameter to continue listing additional
2594
- * accesses.</p>
2595
- */
2596
- NextToken?: string;
2597
-
2598
- /**
2599
- * <p>A system-assigned unique identifier for a server that has users assigned to it.</p>
2600
- */
2601
- ServerId: string | undefined;
2602
- }
2603
-
2604
- export namespace ListAccessesRequest {
2605
- /**
2606
- * @internal
2607
- */
2608
- export const filterSensitiveLog = (obj: ListAccessesRequest): any => ({
2609
- ...obj,
2610
- });
2611
- }
2612
-
2613
- /**
2614
- * <p>Lists the properties for one or more specified associated accesses.</p>
2615
- */
2616
- export interface ListedAccess {
2617
- /**
2618
- * <p>The landing directory (folder) for a user when they log in to the server using the client.</p>
2619
- * <p>A <code>HomeDirectory</code> example is <code>/bucket_name/home/mydirectory</code>.</p>
2620
- */
2621
- HomeDirectory?: string;
2622
-
2623
- /**
2624
- * <p>The type of landing directory (folder) you want your users' home directory to be when they log into the server.
2625
- * If you set it to <code>PATH</code>, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients.
2626
- * If you set it <code>LOGICAL</code>, you need to provide mappings in the <code>HomeDirectoryMappings</code> for how you want to make Amazon
2627
- * S3 or EFS paths visible to your users.</p>
2628
- */
2629
- HomeDirectoryType?: HomeDirectoryType | string;
2630
-
2631
- /**
2632
- * <p>Specifies the Amazon Resource Name (ARN) of the IAM role that controls your users' access to your Amazon S3 bucket or EFS
2633
- * file system. The policies attached to this role determine the level of access that you want to provide your users when transferring
2634
- * files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the
2635
- * server to access your resources when servicing your users' transfer requests.</p>
2636
- */
2637
- Role?: string;
2638
-
2639
- /**
2640
- * <p>A unique identifier that is required to identify specific groups within your directory.
2641
- * The users of the group that you associate have access to your Amazon S3 or Amazon EFS
2642
- * resources over the enabled protocols using Amazon Web Services Transfer Family. If you know the group name,
2643
- * you can view the SID values by running the following command using Windows PowerShell.</p>
2644
- *
2645
- * <p>
2646
- * <code>Get-ADGroup -Filter {samAccountName -like "<i>YourGroupName</i>*"} -Properties * | Select SamAccountName,ObjectSid</code>
2647
- * </p>
2648
- *
2649
- * <p>In that command, replace <i>YourGroupName</i> with the name of your Active Directory group.</p>
2650
- *
2651
- * <p>The regex used to validate this parameter is a string of characters consisting of uppercase and lowercase alphanumeric characters with no spaces.
2652
- * You can also include underscores or any of the following characters: =,.@:/-</p>
2653
- */
2654
- ExternalId?: string;
2655
- }
2656
-
2657
- export namespace ListedAccess {
2658
- /**
2659
- * @internal
2660
- */
2661
- export const filterSensitiveLog = (obj: ListedAccess): any => ({
2662
- ...obj,
2663
- });
2664
- }
2665
-
2666
- export interface ListAccessesResponse {
2667
- /**
2668
- * <p>When you can get additional results from the <code>ListAccesses</code> call, a
2669
- * <code>NextToken</code> parameter is returned in the output. You can then pass in a
2670
- * subsequent command to the <code>NextToken</code> parameter to continue listing additional
2671
- * accesses.</p>
2672
- */
2673
- NextToken?: string;
2674
-
2675
- /**
2676
- * <p>A system-assigned unique identifier for a server that has users assigned to it.</p>
2677
- */
2678
- ServerId: string | undefined;
2679
-
2680
- /**
2681
- * <p>Returns the accesses and their properties for the <code>ServerId</code> value that you
2682
- * specify.</p>
2683
- */
2684
- Accesses: ListedAccess[] | undefined;
2685
- }
2686
-
2687
- export namespace ListAccessesResponse {
2688
- /**
2689
- * @internal
2690
- */
2691
- export const filterSensitiveLog = (obj: ListAccessesResponse): any => ({
2692
- ...obj,
2693
- });
2694
- }
2695
-
2696
- /**
2697
- * <p>Returns properties of the execution that is specified.</p>
2698
- */
2699
- export interface ListedExecution {
2700
- /**
2701
- * <p>A unique identifier for the execution of a workflow.</p>
2702
- */
2703
- ExecutionId?: string;
2704
-
2705
- /**
2706
- * <p>A structure that describes the Amazon S3 or EFS file location.
2707
- * This is the file location when the execution begins: if the file is being copied,
2708
- * this is the initial (as opposed to destination) file location.</p>
2709
- */
2710
- InitialFileLocation?: FileLocation;
2711
-
2712
- /**
2713
- * <p>A container object for the session details associated with a workflow.</p>
2714
- */
2715
- ServiceMetadata?: ServiceMetadata;
2716
-
2717
- /**
2718
- * <p>The status is one of the execution. Can be in progress, completed, exception encountered, or handling the exception.</p>
2719
- */
2720
- Status?: ExecutionStatus | string;
2721
- }
2722
-
2723
- export namespace ListedExecution {
2724
- /**
2725
- * @internal
2726
- */
2727
- export const filterSensitiveLog = (obj: ListedExecution): any => ({
2728
- ...obj,
2729
- });
2730
- }
2731
-
2732
- /**
2733
- * <p>Returns properties of a file transfer protocol-enabled server that was specified.</p>
2734
- */
2735
- export interface ListedServer {
2736
- /**
2737
- * <p>Specifies the unique Amazon Resource Name (ARN) for a server to be listed.</p>
2738
- */
2739
- Arn: string | undefined;
2740
-
2741
- /**
2742
- * <p>Specifies the domain of the storage system that is used for file transfers.</p>
2743
- */
2744
- Domain?: Domain | string;
2745
-
2746
- /**
2747
- * <p>Specifies the mode of authentication for a server. The default value is
2748
- * <code>SERVICE_MANAGED</code>, which allows you to store and access user credentials within
2749
- * the Amazon Web Services Transfer Family service.</p>
2750
- * <p>Use <code>AWS_DIRECTORY_SERVICE</code> to provide access to
2751
- * Active Directory groups in Amazon Web Services Managed Active Directory or Microsoft Active Directory in your
2752
- * on-premises environment or in Amazon Web Services using AD Connectors. This option also requires you to
2753
- * provide a Directory ID using the <code>IdentityProviderDetails</code> parameter.</p>
2754
- * <p>Use the <code>API_GATEWAY</code> value to integrate with an identity provider of your choosing. The
2755
- * <code>API_GATEWAY</code> setting requires you to provide an API Gateway endpoint URL to call
2756
- * for authentication using the <code>IdentityProviderDetails</code> parameter.</p>
2757
- */
2758
- IdentityProviderType?: IdentityProviderType | string;
2759
-
2760
- /**
2761
- * <p>Specifies the type of VPC endpoint that your server is connected to. If your server is
2762
- * connected to a VPC endpoint, your server isn't accessible over the public internet.</p>
2763
- */
2764
- EndpointType?: EndpointType | string;
2765
-
2766
- /**
2767
- * <p>Specifies the Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) role that allows a server to turn
2768
- * on Amazon CloudWatch logging for Amazon S3 or Amazon EFS events. When set, user activity can be viewed in
2769
- * your CloudWatch logs.</p>
2770
- */
2771
- LoggingRole?: string;
2772
-
2773
- /**
2774
- * <p>Specifies the unique system assigned identifier for the servers that were listed.</p>
2775
- */
2776
- ServerId?: string;
2777
-
2778
- /**
2779
- * <p>Specifies the condition of a server for the server that was described. A value of
2780
- * <code>ONLINE</code> indicates that the server can accept jobs and transfer files. A
2781
- * <code>State</code> value of <code>OFFLINE</code> means that the server cannot perform file
2782
- * transfer operations.</p>
2783
- *
2784
- * <p>The states of <code>STARTING</code> and <code>STOPPING</code> indicate that the server is
2785
- * in an intermediate state, either not fully able to respond, or not fully offline. The values
2786
- * of <code>START_FAILED</code> or <code>STOP_FAILED</code> can indicate an error
2787
- * condition.</p>
2788
- */
2789
- State?: State | string;
2790
-
2791
- /**
2792
- * <p>Specifies the number of users that are assigned to a server you specified with the
2793
- * <code>ServerId</code>.</p>
2794
- */
2795
- UserCount?: number;
2796
- }
2797
-
2798
- export namespace ListedServer {
2799
- /**
2800
- * @internal
2801
- */
2802
- export const filterSensitiveLog = (obj: ListedServer): any => ({
2803
- ...obj,
2804
- });
2805
- }
2806
-
2807
- /**
2808
- * <p>Returns properties of the user that you specify.</p>
2809
- */
2810
- export interface ListedUser {
2811
- /**
2812
- * <p>Provides the unique Amazon Resource Name (ARN) for the user that you want to learn
2813
- * about.</p>
2814
- */
2815
- Arn: string | undefined;
2816
-
2817
- /**
2818
- * <p>The landing directory (folder) for a user when they log in to the server using the client.</p>
2819
- * <p>A <code>HomeDirectory</code> example is <code>/bucket_name/home/mydirectory</code>.</p>
2820
- */
2821
- HomeDirectory?: string;
2822
-
2823
- /**
2824
- * <p>The type of landing directory (folder) you want your users' home directory to be when they log into the server.
2825
- * If you set it to <code>PATH</code>, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients.
2826
- * If you set it <code>LOGICAL</code>, you need to provide mappings in the <code>HomeDirectoryMappings</code> for how you want to make Amazon
2827
- * S3 or EFS paths visible to your users.</p>
2828
- */
2829
- HomeDirectoryType?: HomeDirectoryType | string;
2830
-
2831
- /**
2832
- * <p>Specifies the Amazon Resource Name (ARN) of the IAM role that controls your users' access to your Amazon S3 bucket or EFS
2833
- * file system. The policies attached to this role determine the level of access that you want to provide your users when transferring
2834
- * files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the
2835
- * server to access your resources when servicing your users' transfer requests.</p>
2836
- * <note>
2837
- *
2838
- * <p>The IAM role that controls your users' access to your Amazon S3 bucket for servers with <code>Domain=S3</code>, or your EFS file system for servers with <code>Domain=EFS</code>.
2839
- * </p>
2840
- * <p>The policies attached to this role determine the level of access you want to provide your users when
2841
- * transferring files into and out of your S3 buckets or EFS file systems.</p>
2842
- *
2843
- * </note>
2844
- */
2845
- Role?: string;
2846
-
2847
- /**
2848
- * <p>Specifies the number of SSH public keys stored for the user you specified.</p>
2849
- */
2850
- SshPublicKeyCount?: number;
2851
-
2852
- /**
2853
- * <p>Specifies the name of the user whose ARN was specified. User names are used for
2854
- * authentication purposes.</p>
2855
- */
2856
- UserName?: string;
2857
- }
2858
-
2859
- export namespace ListedUser {
2860
- /**
2861
- * @internal
2862
- */
2863
- export const filterSensitiveLog = (obj: ListedUser): any => ({
2864
- ...obj,
2865
- });
2866
- }
2867
-
2868
- /**
2869
- * <p>Contains the ID, text description, and Amazon Resource Name (ARN) for the workflow.</p>
2870
- */
2871
- export interface ListedWorkflow {
2872
- /**
2873
- * <p>A unique identifier for the workflow.</p>
2874
- */
2875
- WorkflowId?: string;
2876
-
2877
- /**
2878
- * <p>Specifies the text description for the workflow.</p>
2879
- */
2880
- Description?: string;
2881
-
2882
- /**
2883
- * <p>Specifies the unique Amazon Resource Name (ARN) for the workflow.</p>
2884
- */
2885
- Arn?: string;
2886
- }
2887
-
2888
- export namespace ListedWorkflow {
2889
- /**
2890
- * @internal
2891
- */
2892
- export const filterSensitiveLog = (obj: ListedWorkflow): any => ({
2893
- ...obj,
2894
- });
2895
- }
2896
-
2897
- export interface ListExecutionsRequest {
2898
- /**
2899
- * <p>Specifies the aximum number of executions to return.</p>
2900
- */
2901
- MaxResults?: number;
2902
-
2903
- /**
2904
- * <p>
2905
- * <code>ListExecutions</code> returns the <code>NextToken</code> parameter in the output.
2906
- * You can then pass the <code>NextToken</code> parameter in a subsequent command to
2907
- * continue listing additional executions.</p>
2908
- * <p>
2909
- * This is useful for pagination, for instance.
2910
- * If you have 100 executions for a workflow, you might only want to list first 10. If so, callthe API by specifing the <code>max-results</code>:
2911
- * </p>
2912
- * <p>
2913
- * <code>aws transfer list-executions --max-results 10</code>
2914
- * </p>
2915
- * <p>
2916
- * This returns details for the first 10 executions, as well as the pointer (<code>NextToken</code>) to the eleventh execution.
2917
- * You can now call the API again, suppling the <code>NextToken</code> value you received:
2918
- * </p>
2919
- * <p>
2920
- * <code>aws transfer list-executions --max-results 10 --next-token $somePointerReturnedFromPreviousListResult</code>
2921
- * </p>
2922
- * <p>
2923
- * This call returns the next 10 executions, the 11th through the 20th. You can then repeat the call until the details
2924
- * for all 100 executions have been returned.
2925
- * </p>
2926
- */
2927
- NextToken?: string;
2928
-
2929
- /**
2930
- * <p>A unique identifier for the workflow.</p>
2931
- */
2932
- WorkflowId: string | undefined;
2933
- }
2934
-
2935
- export namespace ListExecutionsRequest {
2936
- /**
2937
- * @internal
2938
- */
2939
- export const filterSensitiveLog = (obj: ListExecutionsRequest): any => ({
2940
- ...obj,
2941
- });
2942
- }
2943
-
2944
- export interface ListExecutionsResponse {
2945
- /**
2946
- * <p>
2947
- * <code>ListExecutions</code> returns the <code>NextToken</code> parameter in the output.
2948
- * You can then pass the <code>NextToken</code> parameter in a subsequent command to
2949
- * continue listing additional executions.</p>
2950
- */
2951
- NextToken?: string;
2952
-
2953
- /**
2954
- * <p>A unique identifier for the workflow.</p>
2955
- */
2956
- WorkflowId: string | undefined;
2957
-
2958
- /**
2959
- * <p>Returns the details for each execution.</p>
2960
- * <ul>
2961
- * <li>
2962
- * <p>
2963
- * <b>NextToken</b>: returned from a call to several APIs,
2964
- * you can use pass it to a subsequent command to continue listing additional executions.</p>
2965
- * </li>
2966
- * <li>
2967
- * <p>
2968
- * <b>StartTime</b>: timestamp indicating when the execution began.</p>
2969
- * </li>
2970
- * <li>
2971
- * <p>
2972
- * <b>Executions</b>: details of the execution, including the execution ID, initial file location,
2973
- * and Service metadata.</p>
2974
- * </li>
2975
- * <li>
2976
- * <p>
2977
- * <b>Status</b>: one of the following values:
2978
- * <code>IN_PROGRESS</code>, <code>COMPLETED</code>, <code>EXCEPTION</code>, <code>HANDLING_EXEPTION</code>.
2979
- * </p>
2980
- * </li>
2981
- * </ul>
2982
- */
2983
- Executions: ListedExecution[] | undefined;
2984
- }
2985
-
2986
- export namespace ListExecutionsResponse {
2987
- /**
2988
- * @internal
2989
- */
2990
- export const filterSensitiveLog = (obj: ListExecutionsResponse): any => ({
2991
- ...obj,
2992
- });
2993
- }
2994
-
2995
- export interface ListSecurityPoliciesRequest {
2996
- /**
2997
- * <p>Specifies the number of security policies to return as a response to the
2998
- * <code>ListSecurityPolicies</code> query.</p>
2999
- */
3000
- MaxResults?: number;
3001
-
3002
- /**
3003
- * <p>When additional results are obtained from the <code>ListSecurityPolicies</code> command, a
3004
- * <code>NextToken</code> parameter is returned in the output. You can then pass the
3005
- * <code>NextToken</code> parameter in a subsequent command to continue listing additional
3006
- * security policies.</p>
3007
- */
3008
- NextToken?: string;
3009
- }
3010
-
3011
- export namespace ListSecurityPoliciesRequest {
3012
- /**
3013
- * @internal
3014
- */
3015
- export const filterSensitiveLog = (obj: ListSecurityPoliciesRequest): any => ({
3016
- ...obj,
3017
- });
3018
- }
3019
-
3020
- export interface ListSecurityPoliciesResponse {
3021
- /**
3022
- * <p>When you can get additional results from the <code>ListSecurityPolicies</code> operation,
3023
- * a <code>NextToken</code> parameter is returned in the output. In a following command, you can
3024
- * pass in the <code>NextToken</code> parameter to continue listing security policies.</p>
3025
- */
3026
- NextToken?: string;
3027
-
3028
- /**
3029
- * <p>An array of security policies that were listed.</p>
3030
- */
3031
- SecurityPolicyNames: string[] | undefined;
3032
- }
3033
-
3034
- export namespace ListSecurityPoliciesResponse {
3035
- /**
3036
- * @internal
3037
- */
3038
- export const filterSensitiveLog = (obj: ListSecurityPoliciesResponse): any => ({
3039
- ...obj,
3040
- });
3041
- }
3042
-
3043
- export interface ListServersRequest {
3044
- /**
3045
- * <p>Specifies the number of servers to return as a response to the <code>ListServers</code>
3046
- * query.</p>
3047
- */
3048
- MaxResults?: number;
3049
-
3050
- /**
3051
- * <p>When additional results are obtained from the <code>ListServers</code> command, a
3052
- * <code>NextToken</code> parameter is returned in the output. You can then pass the
3053
- * <code>NextToken</code> parameter in a subsequent command to continue listing additional
3054
- * servers.</p>
3055
- */
3056
- NextToken?: string;
3057
- }
3058
-
3059
- export namespace ListServersRequest {
3060
- /**
3061
- * @internal
3062
- */
3063
- export const filterSensitiveLog = (obj: ListServersRequest): any => ({
3064
- ...obj,
3065
- });
3066
- }
3067
-
3068
- export interface ListServersResponse {
3069
- /**
3070
- * <p>When you can get additional results from the <code>ListServers</code> operation, a
3071
- * <code>NextToken</code> parameter is returned in the output. In a following command, you can
3072
- * pass in the <code>NextToken</code> parameter to continue listing additional servers.</p>
3073
- */
3074
- NextToken?: string;
3075
-
3076
- /**
3077
- * <p>An array of servers that were listed.</p>
3078
- */
3079
- Servers: ListedServer[] | undefined;
3080
- }
3081
-
3082
- export namespace ListServersResponse {
3083
- /**
3084
- * @internal
3085
- */
3086
- export const filterSensitiveLog = (obj: ListServersResponse): any => ({
3087
- ...obj,
3088
- });
3089
- }
3090
-
3091
- export interface ListTagsForResourceRequest {
3092
- /**
3093
- * <p>Requests the tags associated with a particular Amazon Resource Name (ARN). An ARN is an
3094
- * identifier for a specific Amazon Web Services resource, such as a server, user, or role.</p>
3095
- */
3096
- Arn: string | undefined;
3097
-
3098
- /**
3099
- * <p>Specifies the number of tags to return as a response to the
3100
- * <code>ListTagsForResource</code> request.</p>
3101
- */
3102
- MaxResults?: number;
3103
-
3104
- /**
3105
- * <p>When you request additional results from the <code>ListTagsForResource</code> operation, a
3106
- * <code>NextToken</code> parameter is returned in the input. You can then pass in a subsequent
3107
- * command to the <code>NextToken</code> parameter to continue listing additional tags.</p>
3108
- */
3109
- NextToken?: string;
3110
- }
3111
-
3112
- export namespace ListTagsForResourceRequest {
3113
- /**
3114
- * @internal
3115
- */
3116
- export const filterSensitiveLog = (obj: ListTagsForResourceRequest): any => ({
3117
- ...obj,
3118
- });
3119
- }
3120
-
3121
- export interface ListTagsForResourceResponse {
3122
- /**
3123
- * <p>The ARN you specified to list the tags of.</p>
3124
- */
3125
- Arn?: string;
3126
-
3127
- /**
3128
- * <p>When you can get additional results from the <code>ListTagsForResource</code> call, a
3129
- * <code>NextToken</code> parameter is returned in the output. You can then pass in a
3130
- * subsequent command to the <code>NextToken</code> parameter to continue listing additional
3131
- * tags.</p>
3132
- */
3133
- NextToken?: string;
3134
-
3135
- /**
3136
- * <p>Key-value pairs that are assigned to a resource, usually for the purpose of grouping and
3137
- * searching for items. Tags are metadata that you define.</p>
3138
- */
3139
- Tags?: Tag[];
3140
- }
3141
-
3142
- export namespace ListTagsForResourceResponse {
3143
- /**
3144
- * @internal
3145
- */
3146
- export const filterSensitiveLog = (obj: ListTagsForResourceResponse): any => ({
3147
- ...obj,
3148
- });
3149
- }
3150
-
3151
- export interface ListUsersRequest {
3152
- /**
3153
- * <p>Specifies the number of users to return as a response to the <code>ListUsers</code>
3154
- * request.</p>
3155
- */
3156
- MaxResults?: number;
3157
-
3158
- /**
3159
- * <p>When you can get additional results from the <code>ListUsers</code> call, a
3160
- * <code>NextToken</code> parameter is returned in the output. You can then pass in a
3161
- * subsequent command to the <code>NextToken</code> parameter to continue listing additional
3162
- * users.</p>
3163
- */
3164
- NextToken?: string;
3165
-
3166
- /**
3167
- * <p>A system-assigned unique identifier for a server that has users assigned to it.</p>
3168
- */
3169
- ServerId: string | undefined;
3170
- }
3171
-
3172
- export namespace ListUsersRequest {
3173
- /**
3174
- * @internal
3175
- */
3176
- export const filterSensitiveLog = (obj: ListUsersRequest): any => ({
3177
- ...obj,
3178
- });
3179
- }
3180
-
3181
- export interface ListUsersResponse {
3182
- /**
3183
- * <p>When you can get additional results from the <code>ListUsers</code> call, a
3184
- * <code>NextToken</code> parameter is returned in the output. You can then pass in a
3185
- * subsequent command to the <code>NextToken</code> parameter to continue listing additional
3186
- * users.</p>
3187
- */
3188
- NextToken?: string;
3189
-
3190
- /**
3191
- * <p>A system-assigned unique identifier for a server that the users are assigned to.</p>
3192
- */
3193
- ServerId: string | undefined;
3194
-
3195
- /**
3196
- * <p>Returns the user accounts and their properties for the <code>ServerId</code> value that
3197
- * you specify.</p>
3198
- */
3199
- Users: ListedUser[] | undefined;
3200
- }
3201
-
3202
- export namespace ListUsersResponse {
3203
- /**
3204
- * @internal
3205
- */
3206
- export const filterSensitiveLog = (obj: ListUsersResponse): any => ({
3207
- ...obj,
3208
- });
3209
- }
3210
-
3211
- export interface ListWorkflowsRequest {
3212
- /**
3213
- * <p>Specifies the maximum number of workflows to return.</p>
3214
- */
3215
- MaxResults?: number;
3216
-
3217
- /**
3218
- * <p>
3219
- * <code>ListWorkflows</code> returns the <code>NextToken</code> parameter in the output.
3220
- * You can then pass the <code>NextToken</code> parameter in a subsequent command to
3221
- * continue listing additional workflows.</p>
3222
- */
3223
- NextToken?: string;
3224
- }
3225
-
3226
- export namespace ListWorkflowsRequest {
3227
- /**
3228
- * @internal
3229
- */
3230
- export const filterSensitiveLog = (obj: ListWorkflowsRequest): any => ({
3231
- ...obj,
3232
- });
3233
- }
3234
-
3235
- export interface ListWorkflowsResponse {
3236
- /**
3237
- * <p>
3238
- * <code>ListWorkflows</code> returns the <code>NextToken</code> parameter in the output.
3239
- * You can then pass the <code>NextToken</code> parameter in a subsequent command to
3240
- * continue listing additional workflows.</p>
3241
- */
3242
- NextToken?: string;
3243
-
3244
- /**
3245
- * <p>Returns the <code>Arn</code>, <code>WorkflowId</code>, and <code>Description</code> for each workflow.</p>
3246
- */
3247
- Workflows: ListedWorkflow[] | undefined;
3248
- }
3249
-
3250
- export namespace ListWorkflowsResponse {
3251
- /**
3252
- * @internal
3253
- */
3254
- export const filterSensitiveLog = (obj: ListWorkflowsResponse): any => ({
3255
- ...obj,
3256
- });
3257
- }
3258
-
3259
- export interface SendWorkflowStepStateRequest {
3260
- /**
3261
- * <p>A unique identifier for the workflow.</p>
3262
- */
3263
- WorkflowId: string | undefined;
3264
-
3265
- /**
3266
- * <p>A unique identifier for the execution of a workflow.</p>
3267
- */
3268
- ExecutionId: string | undefined;
3269
-
3270
- /**
3271
- * <p>Used to distinguish between multiple callbacks for multiple Lambda steps within the same execution.</p>
3272
- */
3273
- Token: string | undefined;
3274
-
3275
- /**
3276
- * <p>Indicates whether the specified step succeeded or failed.</p>
3277
- */
3278
- Status: CustomStepStatus | string | undefined;
3279
- }
3280
-
3281
- export namespace SendWorkflowStepStateRequest {
3282
- /**
3283
- * @internal
3284
- */
3285
- export const filterSensitiveLog = (obj: SendWorkflowStepStateRequest): any => ({
3286
- ...obj,
3287
- });
3288
- }
3289
-
3290
- export interface SendWorkflowStepStateResponse {}
3291
-
3292
- export namespace SendWorkflowStepStateResponse {
3293
- /**
3294
- * @internal
3295
- */
3296
- export const filterSensitiveLog = (obj: SendWorkflowStepStateResponse): any => ({
3297
- ...obj,
3298
- });
3299
- }
3300
-
3301
- export interface StartServerRequest {
3302
- /**
3303
- * <p>A system-assigned unique identifier for a server that you start.</p>
3304
- */
3305
- ServerId: string | undefined;
3306
- }
3307
-
3308
- export namespace StartServerRequest {
3309
- /**
3310
- * @internal
3311
- */
3312
- export const filterSensitiveLog = (obj: StartServerRequest): any => ({
3313
- ...obj,
3314
- });
3315
- }
3316
-
3317
- export interface StopServerRequest {
3318
- /**
3319
- * <p>A system-assigned unique identifier for a server that you stopped.</p>
3320
- */
3321
- ServerId: string | undefined;
3322
- }
3323
-
3324
- export namespace StopServerRequest {
3325
- /**
3326
- * @internal
3327
- */
3328
- export const filterSensitiveLog = (obj: StopServerRequest): any => ({
3329
- ...obj,
3330
- });
3331
- }
3332
-
3333
- export interface TagResourceRequest {
3334
- /**
3335
- * <p>An Amazon Resource Name (ARN) for a specific Amazon Web Services resource, such as a server, user, or
3336
- * role.</p>
3337
- */
3338
- Arn: string | undefined;
3339
-
3340
- /**
3341
- * <p>Key-value pairs assigned to ARNs that you can use to group and search for resources by
3342
- * type. You can attach this metadata to user accounts for any purpose.</p>
3343
- */
3344
- Tags: Tag[] | undefined;
3345
- }
3346
-
3347
- export namespace TagResourceRequest {
3348
- /**
3349
- * @internal
3350
- */
3351
- export const filterSensitiveLog = (obj: TagResourceRequest): any => ({
3352
- ...obj,
3353
- });
3354
- }
3355
-
3356
- export interface TestIdentityProviderRequest {
3357
- /**
3358
- * <p>A system-assigned identifier for a specific server. That server's user authentication
3359
- * method is tested with a user name and password.</p>
3360
- */
3361
- ServerId: string | undefined;
3362
-
3363
- /**
3364
- * <p>The type of file transfer protocol to be tested.</p>
3365
- *
3366
- * <p>The available protocols are:</p>
3367
- *
3368
- * <ul>
3369
- * <li>
3370
- * <p>Secure Shell (SSH) File Transfer Protocol (SFTP)</p>
3371
- * </li>
3372
- * <li>
3373
- * <p>File Transfer Protocol Secure (FTPS)</p>
3374
- * </li>
3375
- * <li>
3376
- * <p>File Transfer Protocol (FTP)</p>
3377
- * </li>
3378
- * </ul>
3379
- */
3380
- ServerProtocol?: Protocol | string;
3381
-
3382
- /**
3383
- * <p>The source IP address of the user account to be tested.</p>
3384
- */
3385
- SourceIp?: string;
3386
-
3387
- /**
3388
- * <p>The name of the user account to be tested.</p>
3389
- */
3390
- UserName: string | undefined;
3391
-
3392
- /**
3393
- * <p>The password of the user account to be tested.</p>
3394
- */
3395
- UserPassword?: string;
3396
- }
3397
-
3398
- export namespace TestIdentityProviderRequest {
3399
- /**
3400
- * @internal
3401
- */
3402
- export const filterSensitiveLog = (obj: TestIdentityProviderRequest): any => ({
3403
- ...obj,
3404
- ...(obj.UserPassword && { UserPassword: SENSITIVE_STRING }),
3405
- });
3406
- }
3407
-
3408
- export interface TestIdentityProviderResponse {
3409
- /**
3410
- * <p>The response that is returned from your API Gateway.</p>
3411
- */
3412
- Response?: string;
3413
-
3414
- /**
3415
- * <p>The HTTP status code that is the response from your API Gateway.</p>
3416
- */
3417
- StatusCode: number | undefined;
3418
-
3419
- /**
3420
- * <p>A message that indicates whether the test was successful or not.</p>
3421
- */
3422
- Message?: string;
3423
-
3424
- /**
3425
- * <p>The endpoint of the service used to authenticate a user.</p>
3426
- */
3427
- Url: string | undefined;
3428
- }
3429
-
3430
- export namespace TestIdentityProviderResponse {
3431
- /**
3432
- * @internal
3433
- */
3434
- export const filterSensitiveLog = (obj: TestIdentityProviderResponse): any => ({
3435
- ...obj,
3436
- });
3437
- }
3438
-
3439
- export interface UntagResourceRequest {
3440
- /**
3441
- * <p>The value of the resource that will have the tag removed. An Amazon Resource Name (ARN) is
3442
- * an identifier for a specific Amazon Web Services resource, such as a server, user, or role.</p>
3443
- */
3444
- Arn: string | undefined;
3445
-
3446
- /**
3447
- * <p>TagKeys are key-value pairs assigned to ARNs that can be used to group and search for
3448
- * resources by type. This metadata can be attached to resources for any purpose.</p>
3449
- */
3450
- TagKeys: string[] | undefined;
3451
- }
3452
-
3453
- export namespace UntagResourceRequest {
3454
- /**
3455
- * @internal
3456
- */
3457
- export const filterSensitiveLog = (obj: UntagResourceRequest): any => ({
3458
- ...obj,
3459
- });
3460
- }
3461
-
3462
- export interface UpdateAccessRequest {
3463
- /**
3464
- * <p>The landing directory (folder) for a user when they log in to the server using the client.</p>
3465
- * <p>A <code>HomeDirectory</code> example is <code>/bucket_name/home/mydirectory</code>.</p>
3466
- */
3467
- HomeDirectory?: string;
3468
-
3469
- /**
3470
- * <p>The type of landing directory (folder) you want your users' home directory to be when they log into the server.
3471
- * If you set it to <code>PATH</code>, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients.
3472
- * If you set it <code>LOGICAL</code>, you need to provide mappings in the <code>HomeDirectoryMappings</code> for how you want to make Amazon
3473
- * S3 or EFS paths visible to your users.</p>
3474
- */
3475
- HomeDirectoryType?: HomeDirectoryType | string;
3476
-
3477
- /**
3478
- * <p>Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should
3479
- * be visible to your user and how you want to make them visible. You must specify the
3480
- * <code>Entry</code> and <code>Target</code> pair, where <code>Entry</code> shows how the path
3481
- * is made visible and <code>Target</code> is the actual Amazon S3 or Amazon EFS path. If you
3482
- * only specify a target, it is displayed as is. You also must ensure that your Amazon Web Services Identity
3483
- * and Access Management (IAM) role provides access to paths in <code>Target</code>. This value
3484
- * can only be set when <code>HomeDirectoryType</code> is set to
3485
- * <i>LOGICAL</i>.</p>
3486
- * <p>The following is an <code>Entry</code> and <code>Target</code> pair example.</p>
3487
- * <p>
3488
- * <code>[ { "Entry": "your-personal-report.pdf", "Target": "/bucket3/customized-reports/${transfer:UserName}.pdf" } ]</code>
3489
- * </p>
3490
- * <p>In most cases, you can use this value instead of the session policy to lock down your
3491
- * user to the designated home directory ("<code>chroot</code>"). To do this, you can set
3492
- * <code>Entry</code> to <code>/</code> and set <code>Target</code> to the
3493
- * <code>HomeDirectory</code> parameter value.</p>
3494
- * <p>The following is an <code>Entry</code> and <code>Target</code> pair example for <code>chroot</code>.</p>
3495
- * <p>
3496
- * <code>[ { "Entry:": "/", "Target": "/bucket_name/home/mydirectory" } ]</code>
3497
- * </p>
3498
- *
3499
- * <note>
3500
- * <p>If the target of a logical directory entry does not exist in Amazon S3 or EFS, the entry is
3501
- * ignored. As a workaround, you can use the Amazon S3 API or EFS API to create 0 byte objects as place
3502
- * holders for your directory. If using the CLI, use the <code>s3api</code> or <code>efsapi</code> call instead of
3503
- * <code>s3</code> or <code>efs</code> so you can use the put-object operation. For example, you use the
3504
- * following: <code>aws s3api put-object --bucket bucketname --key path/to/folder/</code>. Make
3505
- * sure that the end of the key name ends in a <code>/</code> for it to be considered a folder.</p>
3506
- * </note>
3507
- */
3508
- HomeDirectoryMappings?: HomeDirectoryMapEntry[];
3509
-
3510
- /**
3511
- * <p>A session policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user
3512
- * access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include <code>${Transfer:UserName}</code>,
3513
- * <code>${Transfer:HomeDirectory}</code>, and <code>${Transfer:HomeBucket}</code>.</p>
3514
- *
3515
- *
3516
- * <note>
3517
- * <p>This only applies when the domain of <code>ServerId</code> is S3. EFS does not use session policies.</p>
3518
- * <p>For session policies, Amazon Web Services Transfer Family stores the policy as a JSON blob, instead
3519
- * of the Amazon Resource Name (ARN) of the policy. You save the policy as a JSON blob and pass
3520
- * it in the <code>Policy</code> argument.</p>
3521
- * <p>For an example of a session policy, see <a href="https://docs.aws.amazon.com/transfer/latest/userguide/session-policy.html">Example
3522
- * session policy</a>.</p>
3523
- * <p>For more information, see <a href="https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html">AssumeRole</a> in the <i>Amazon Web ServicesSecurity Token Service API
3524
- * Reference</i>.</p>
3525
- * </note>
3526
- */
3527
- Policy?: string;
3528
-
3529
- /**
3530
- * <p>The full POSIX identity, including user ID (<code>Uid</code>), group ID
3531
- * (<code>Gid</code>), and any secondary groups IDs (<code>SecondaryGids</code>), that controls
3532
- * your users' access to your Amazon EFS file systems. The POSIX permissions that are set on
3533
- * files and directories in your file system determine the level of access your users get when
3534
- * transferring files into and out of your Amazon EFS file systems.</p>
3535
- */
3536
- PosixProfile?: PosixProfile;
3537
-
3538
- /**
3539
- * <p>Specifies the Amazon Resource Name (ARN) of the IAM role that controls your users' access to your Amazon S3 bucket or EFS
3540
- * file system. The policies attached to this role determine the level of access that you want to provide your users when transferring
3541
- * files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the
3542
- * server to access your resources when servicing your users' transfer requests.</p>
3543
- */
3544
- Role?: string;
3545
-
3546
- /**
3547
- * <p>A system-assigned unique identifier for a server instance. This is the specific server that you added your user to.</p>
3548
- */
3549
- ServerId: string | undefined;
3550
-
3551
- /**
3552
- * <p>A unique identifier that is required to identify specific groups within your directory.
3553
- * The users of the group that you associate have access to your Amazon S3 or Amazon EFS
3554
- * resources over the enabled protocols using Amazon Web Services Transfer Family. If you know the group name,
3555
- * you can view the SID values by running the following command using Windows PowerShell.</p>
3556
- *
3557
- * <p>
3558
- * <code>Get-ADGroup -Filter {samAccountName -like "<i>YourGroupName</i>*"} -Properties * | Select SamAccountName,ObjectSid</code>
3559
- * </p>
3560
- *
3561
- * <p>In that command, replace <i>YourGroupName</i> with the name of your Active Directory group.</p>
3562
- *
3563
- * <p>The regex used to validate this parameter is a string of characters consisting of uppercase and lowercase alphanumeric characters with no spaces.
3564
- * You can also include underscores or any of the following characters: =,.@:/-</p>
3565
- */
3566
- ExternalId: string | undefined;
3567
- }
3568
-
3569
- export namespace UpdateAccessRequest {
3570
- /**
3571
- * @internal
3572
- */
3573
- export const filterSensitiveLog = (obj: UpdateAccessRequest): any => ({
3574
- ...obj,
3575
- });
3576
- }
3577
-
3578
- export interface UpdateAccessResponse {
3579
- /**
3580
- * <p>The ID of the server that the user is attached to.</p>
3581
- */
3582
- ServerId: string | undefined;
3583
-
3584
- /**
3585
- * <p>The external ID of the group whose users have access to your Amazon S3 or Amazon EFS
3586
- * resources over the enabled protocols using Amazon Web ServicesTransfer Family.</p>
3587
- */
3588
- ExternalId: string | undefined;
3589
- }
3590
-
3591
- export namespace UpdateAccessResponse {
3592
- /**
3593
- * @internal
3594
- */
3595
- export const filterSensitiveLog = (obj: UpdateAccessResponse): any => ({
3596
- ...obj,
3597
- });
3598
- }
3599
-
3600
- export interface UpdateServerRequest {
3601
- /**
3602
- * <p>The Amazon Resource Name (ARN) of the Amazon Web ServicesCertificate Manager (ACM) certificate. Required
3603
- * when <code>Protocols</code> is set to <code>FTPS</code>.</p>
3604
- *
3605
- * <p>To request a new public certificate, see <a href="https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-public.html">Request a public certificate</a>
3606
- * in the <i> Amazon Web ServicesCertificate Manager User Guide</i>.</p>
3607
- *
3608
- * <p>To import an existing certificate into ACM, see <a href="https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html">Importing certificates into ACM</a>
3609
- * in the <i> Amazon Web ServicesCertificate Manager User Guide</i>.</p>
3610
- *
3611
- * <p>To request a private certificate to use FTPS through private IP addresses, see <a href="https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-private.html">Request a
3612
- * private certificate</a> in the <i> Amazon Web ServicesCertificate Manager User
3613
- * Guide</i>.</p>
3614
- *
3615
- * <p>Certificates with the following cryptographic algorithms and key sizes are
3616
- * supported:</p>
3617
- *
3618
- * <ul>
3619
- * <li>
3620
- * <p>2048-bit RSA (RSA_2048)</p>
3621
- * </li>
3622
- * <li>
3623
- * <p>4096-bit RSA (RSA_4096)</p>
3624
- * </li>
3625
- * <li>
3626
- * <p>Elliptic Prime Curve 256 bit (EC_prime256v1)</p>
3627
- * </li>
3628
- * <li>
3629
- * <p>Elliptic Prime Curve 384 bit (EC_secp384r1)</p>
3630
- * </li>
3631
- * <li>
3632
- * <p>Elliptic Prime Curve 521 bit (EC_secp521r1)</p>
3633
- * </li>
3634
- * </ul>
3635
- *
3636
- * <note>
3637
- * <p>The certificate must be a valid SSL/TLS X.509 version 3 certificate with FQDN or IP
3638
- * address specified and information about the issuer.</p>
3639
- * </note>
3640
- */
3641
- Certificate?: string;
3642
-
3643
- /**
3644
- * <p>
3645
- * The protocol settings that are configured for your server.
3646
- * </p>
3647
- * <p>
3648
- * Use the <code>PassiveIp</code> parameter to indicate passive mode (for FTP and FTPS protocols).
3649
- * Enter a single dotted-quad IPv4 address, such as the external IP address of a firewall, router, or load balancer.
3650
- * </p>
3651
- */
3652
- ProtocolDetails?: ProtocolDetails;
3653
-
3654
- /**
3655
- * <p>The virtual private cloud (VPC) endpoint settings that are configured for your server.
3656
- * When you host your endpoint within your VPC, you can make it accessible only to resources
3657
- * within your VPC, or you can attach Elastic IP addresses and make it accessible to clients over
3658
- * the internet. Your VPC's default security groups are automatically assigned to your
3659
- * endpoint.</p>
3660
- */
3661
- EndpointDetails?: EndpointDetails;
3662
-
3663
- /**
3664
- * <p>The type of endpoint that you want your server to use. You can choose to make your server's endpoint publicly accessible (PUBLIC)
3665
- * or host it inside your VPC. With an endpoint that is hosted in a VPC, you can restrict access to your server and
3666
- * resources only within your VPC or choose to make it internet facing by attaching Elastic IP addresses directly to it.</p>
3667
- * <note>
3668
- * <p> After May 19, 2021, you won't be able to create a server using
3669
- * <code>EndpointType=VPC_ENDPOINT</code> in your Amazon Web Servicesaccount if your account hasn't already
3670
- * done so before May 19, 2021. If you have already created servers with
3671
- * <code>EndpointType=VPC_ENDPOINT</code> in your Amazon Web Servicesaccount on or before May 19, 2021,
3672
- * you will not be affected. After this date, use
3673
- * <code>EndpointType</code>=<code>VPC</code>.</p>
3674
- *
3675
- * <p>For more information, see
3676
- * https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.</p>
3677
- * <p>It is recommended that you use <code>VPC</code> as the <code>EndpointType</code>. With
3678
- * this endpoint type, you have the option to directly associate up to three Elastic IPv4
3679
- * addresses (BYO IP included) with your server's endpoint and use VPC security groups to
3680
- * restrict traffic by the client's public IP address. This is not possible with
3681
- * <code>EndpointType</code> set to <code>VPC_ENDPOINT</code>.</p>
3682
- * </note>
3683
- */
3684
- EndpointType?: EndpointType | string;
3685
-
3686
- /**
3687
- * <p>The RSA private key as generated by <code>ssh-keygen -N "" -m PEM -f
3688
- * my-new-server-key</code>.</p>
3689
- *
3690
- * <important>
3691
- * <p>If you aren't planning to migrate existing users from an existing server to a new
3692
- * server, don't update the host key. Accidentally changing a server's host key can
3693
- * be disruptive.</p>
3694
- * </important>
3695
- *
3696
- *
3697
- *
3698
- * <p>For more information, see <a href="https://docs.aws.amazon.com/transfer/latest/userguide/edit-server-config.html#configuring-servers-change-host-key">Change the host key for your SFTP-enabled server</a> in the <i>Amazon Web ServicesTransfer
3699
- * Family User Guide</i>.</p>
3700
- */
3701
- HostKey?: string;
3702
-
3703
- /**
3704
- * <p>An array containing all of the information required to call a customer's
3705
- * authentication API method.</p>
3706
- */
3707
- IdentityProviderDetails?: IdentityProviderDetails;
3708
-
3709
- /**
3710
- * <p>Specifies the Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) role that allows a server to turn
3711
- * on Amazon CloudWatch logging for Amazon S3 or Amazon EFS events. When set, user activity can be viewed in
3712
- * your CloudWatch logs.</p>
3713
- */
3714
- LoggingRole?: string;
3715
-
3716
- /**
3717
- * <p>Specifies the file transfer protocol or protocols over which your file transfer protocol
3718
- * client can connect to your server's endpoint. The available protocols are:</p>
3719
- *
3720
- * <ul>
3721
- * <li>
3722
- * <p>Secure Shell (SSH) File Transfer Protocol (SFTP): File transfer over SSH</p>
3723
- * </li>
3724
- * <li>
3725
- * <p>File Transfer Protocol Secure (FTPS): File transfer with TLS encryption</p>
3726
- * </li>
3727
- * <li>
3728
- * <p>File Transfer Protocol (FTP): Unencrypted file transfer</p>
3729
- * </li>
3730
- * </ul>
3731
- *
3732
- * <note>
3733
- * <p>If you select <code>FTPS</code>, you must choose a certificate stored in Amazon Web ServicesCertificate
3734
- * Manager (ACM) which will be used to identify your server when clients connect to it over
3735
- * FTPS.</p>
3736
- *
3737
- *
3738
- * <p>If <code>Protocol</code> includes either <code>FTP</code> or <code>FTPS</code>, then the
3739
- * <code>EndpointType</code> must be <code>VPC</code> and the
3740
- * <code>IdentityProviderType</code> must be <code>AWS_DIRECTORY_SERVICE</code> or <code>API_GATEWAY</code>.</p>
3741
- *
3742
- * <p>If <code>Protocol</code> includes <code>FTP</code>, then
3743
- * <code>AddressAllocationIds</code> cannot be associated.</p>
3744
- *
3745
- * <p>If <code>Protocol</code> is set only to <code>SFTP</code>, the <code>EndpointType</code>
3746
- * can be set to <code>PUBLIC</code> and the <code>IdentityProviderType</code> can be set to
3747
- * <code>SERVICE_MANAGED</code>.</p>
3748
- * </note>
3749
- */
3750
- Protocols?: (Protocol | string)[];
3751
-
3752
- /**
3753
- * <p>Specifies the name of the security policy that is attached to the server.</p>
3754
- */
3755
- SecurityPolicyName?: string;
3756
-
3757
- /**
3758
- * <p>A system-assigned unique identifier for a server instance that the user account is
3759
- * assigned to.</p>
3760
- */
3761
- ServerId: string | undefined;
3762
-
3763
- /**
3764
- * <p>Specifies the workflow ID for the workflow to assign and the execution role used for executing the workflow.</p>
3765
- */
3766
- WorkflowDetails?: WorkflowDetails;
3767
- }
3768
-
3769
- export namespace UpdateServerRequest {
3770
- /**
3771
- * @internal
3772
- */
3773
- export const filterSensitiveLog = (obj: UpdateServerRequest): any => ({
3774
- ...obj,
3775
- ...(obj.HostKey && { HostKey: SENSITIVE_STRING }),
3776
- });
3777
- }
3778
-
3779
- export interface UpdateServerResponse {
3780
- /**
3781
- * <p>A system-assigned unique identifier for a server that the user account is assigned
3782
- * to.</p>
3783
- */
3784
- ServerId: string | undefined;
3785
- }
3786
-
3787
- export namespace UpdateServerResponse {
3788
- /**
3789
- * @internal
3790
- */
3791
- export const filterSensitiveLog = (obj: UpdateServerResponse): any => ({
3792
- ...obj,
3793
- });
3794
- }
3795
-
3796
- export interface UpdateUserRequest {
3797
- /**
3798
- * <p>The landing directory (folder) for a user when they log in to the server using the client.</p>
3799
- * <p>A <code>HomeDirectory</code> example is <code>/bucket_name/home/mydirectory</code>.</p>
3800
- */
3801
- HomeDirectory?: string;
3802
-
3803
- /**
3804
- * <p>The type of landing directory (folder) you want your users' home directory to be when they log into the server.
3805
- * If you set it to <code>PATH</code>, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients.
3806
- * If you set it <code>LOGICAL</code>, you need to provide mappings in the <code>HomeDirectoryMappings</code> for how you want to make Amazon
3807
- * S3 or EFS paths visible to your users.</p>
3808
- */
3809
- HomeDirectoryType?: HomeDirectoryType | string;
3810
-
3811
- /**
3812
- * <p>Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should
3813
- * be visible to your user and how you want to make them visible. You must specify the
3814
- * <code>Entry</code> and <code>Target</code> pair, where <code>Entry</code> shows how the path
3815
- * is made visible and <code>Target</code> is the actual Amazon S3 or Amazon EFS path. If you
3816
- * only specify a target, it is displayed as is. You also must ensure that your Amazon Web Services Identity
3817
- * and Access Management (IAM) role provides access to paths in <code>Target</code>. This value
3818
- * can only be set when <code>HomeDirectoryType</code> is set to
3819
- * <i>LOGICAL</i>.</p>
3820
- *
3821
- * <p>The following is an <code>Entry</code> and <code>Target</code> pair example.</p>
3822
- * <p>
3823
- * <code>[ { "Entry": "your-personal-report.pdf", "Target":
3824
- * "/bucket3/customized-reports/${transfer:UserName}.pdf" } ]</code>
3825
- * </p>
3826
- *
3827
- * <p>In most cases, you can use this value instead of the session policy to lock down your
3828
- * user to the designated home directory ("<code>chroot</code>"). To do this, you can set
3829
- * <code>Entry</code> to '/' and set <code>Target</code> to the HomeDirectory
3830
- * parameter value.</p>
3831
- *
3832
- * <p>The following is an <code>Entry</code> and <code>Target</code> pair example for <code>chroot</code>.</p>
3833
- * <p>
3834
- * <code>[ { "Entry:": "/", "Target": "/bucket_name/home/mydirectory" } ]</code>
3835
- * </p>
3836
- *
3837
- * <note>
3838
- * <p>If the target of a logical directory entry does not exist in Amazon S3 or EFS, the entry is
3839
- * ignored. As a workaround, you can use the Amazon S3 API or EFS API to create 0 byte objects as place
3840
- * holders for your directory. If using the CLI, use the <code>s3api</code> or <code>efsapi</code> call instead of
3841
- * <code>s3</code> or <code>efs</code> so you can use the put-object operation. For example, you use the
3842
- * following: <code>aws s3api put-object --bucket bucketname --key path/to/folder/</code>. Make
3843
- * sure that the end of the key name ends in a <code>/</code> for it to be considered a folder.</p>
3844
- * </note>
3845
- */
3846
- HomeDirectoryMappings?: HomeDirectoryMapEntry[];
3847
-
3848
- /**
3849
- * <p>A session policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user
3850
- * access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include <code>${Transfer:UserName}</code>,
3851
- * <code>${Transfer:HomeDirectory}</code>, and <code>${Transfer:HomeBucket}</code>.</p>
3852
- *
3853
- * <note>
3854
- * <p>This only applies when the domain of <code>ServerId</code> is S3. EFS does not use session policies.</p>
3855
- * <p>For session policies, Amazon Web Services Transfer Family stores the policy as a JSON blob, instead
3856
- * of the Amazon Resource Name (ARN) of the policy. You save the policy as a JSON blob and pass
3857
- * it in the <code>Policy</code> argument.</p>
3858
- *
3859
- *
3860
- *
3861
- * <p>For an example of a session policy, see <a href="https://docs.aws.amazon.com/transfer/latest/userguide/session-policy">Creating a session
3862
- * policy</a>.</p>
3863
- *
3864
- *
3865
- *
3866
- * <p>For more information, see <a href="https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html">AssumeRole</a> in the <i>Amazon Web Services
3867
- * Security Token Service API Reference</i>.</p>
3868
- * </note>
3869
- */
3870
- Policy?: string;
3871
-
3872
- /**
3873
- * <p>Specifies the full POSIX identity, including user ID (<code>Uid</code>), group ID
3874
- * (<code>Gid</code>), and any secondary groups IDs (<code>SecondaryGids</code>), that controls
3875
- * your users' access to your Amazon Elastic File Systems (Amazon EFS). The POSIX permissions
3876
- * that are set on files and directories in your file system determines the level of access your
3877
- * users get when transferring files into and out of your Amazon EFS file systems.</p>
3878
- */
3879
- PosixProfile?: PosixProfile;
3880
-
3881
- /**
3882
- * <p>Specifies the Amazon Resource Name (ARN) of the IAM role that controls your users' access to your Amazon S3 bucket or EFS
3883
- * file system. The policies attached to this role determine the level of access that you want to provide your users when transferring
3884
- * files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the
3885
- * server to access your resources when servicing your users' transfer requests.</p>
3886
- */
3887
- Role?: string;
3888
-
3889
- /**
3890
- * <p>A system-assigned unique identifier for a server instance that the user account is
3891
- * assigned to.</p>
3892
- */
3893
- ServerId: string | undefined;
3894
-
3895
- /**
3896
- * <p>A unique string that identifies a user and is associated with a server as specified by the
3897
- * <code>ServerId</code>. This user name must be a minimum of 3 and a maximum of 100 characters
3898
- * long. The following are valid characters: a-z, A-Z, 0-9, underscore '_', hyphen
3899
- * '-', period '.', and at sign '@'. The user name can't start
3900
- * with a hyphen, period, or at sign.</p>
3901
- */
3902
- UserName: string | undefined;
3903
- }
3904
-
3905
- export namespace UpdateUserRequest {
3906
- /**
3907
- * @internal
3908
- */
3909
- export const filterSensitiveLog = (obj: UpdateUserRequest): any => ({
3910
- ...obj,
3911
- });
3912
- }
3913
-
3914
- /**
3915
- * <p>
3916
- * <code>UpdateUserResponse</code> returns the user name and identifier for the request to
3917
- * update a user's properties.</p>
3918
- */
3919
- export interface UpdateUserResponse {
3920
- /**
3921
- * <p>A system-assigned unique identifier for a server instance that the user account is
3922
- * assigned to.</p>
3923
- */
3924
- ServerId: string | undefined;
3925
-
3926
- /**
3927
- * <p>The unique identifier for a user that is assigned to a server instance that was specified
3928
- * in the request.</p>
3929
- */
3930
- UserName: string | undefined;
3931
- }
3932
-
3933
- export namespace UpdateUserResponse {
3934
- /**
3935
- * @internal
3936
- */
3937
- export const filterSensitiveLog = (obj: UpdateUserResponse): any => ({
3938
- ...obj,
3939
- });
3940
- }