aws-sdk-transfer 1.38.0 → 1.42.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +20 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-transfer/client.rb +589 -90
- data/lib/aws-sdk-transfer/client_api.rb +347 -0
- data/lib/aws-sdk-transfer/types.rb +1348 -108
- data/lib/aws-sdk-transfer.rb +1 -1
- metadata +4 -4
@@ -23,7 +23,7 @@ module Aws::Transfer
|
|
23
23
|
include Aws::Structure
|
24
24
|
end
|
25
25
|
|
26
|
-
# This exception is thrown when the `
|
26
|
+
# This exception is thrown when the `UpdateServer` is called for a file
|
27
27
|
# transfer protocol-enabled server that has VPC as the endpoint type and
|
28
28
|
# the server's `VpcEndpointID` is not in the available state.
|
29
29
|
#
|
@@ -38,6 +38,50 @@ module Aws::Transfer
|
|
38
38
|
include Aws::Structure
|
39
39
|
end
|
40
40
|
|
41
|
+
# Each step type has its own `StepDetails` structure.
|
42
|
+
#
|
43
|
+
# @note When making an API call, you may pass CopyStepDetails
|
44
|
+
# data as a hash:
|
45
|
+
#
|
46
|
+
# {
|
47
|
+
# name: "WorkflowStepName",
|
48
|
+
# destination_file_location: {
|
49
|
+
# s3_file_location: {
|
50
|
+
# bucket: "S3Bucket",
|
51
|
+
# key: "S3Key",
|
52
|
+
# },
|
53
|
+
# efs_file_location: {
|
54
|
+
# file_system_id: "EfsFileSystemId",
|
55
|
+
# path: "EfsPath",
|
56
|
+
# },
|
57
|
+
# },
|
58
|
+
# overwrite_existing: "TRUE", # accepts TRUE, FALSE
|
59
|
+
# }
|
60
|
+
#
|
61
|
+
# @!attribute [rw] name
|
62
|
+
# The name of the step, used as an identifier.
|
63
|
+
# @return [String]
|
64
|
+
#
|
65
|
+
# @!attribute [rw] destination_file_location
|
66
|
+
# Specifies the location for the file being copied. Only applicable
|
67
|
+
# for the Copy type of workflow steps.
|
68
|
+
# @return [Types::InputFileLocation]
|
69
|
+
#
|
70
|
+
# @!attribute [rw] overwrite_existing
|
71
|
+
# A flag that indicates whether or not to overwrite an existing file
|
72
|
+
# of the same name. The default is `FALSE`.
|
73
|
+
# @return [String]
|
74
|
+
#
|
75
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CopyStepDetails AWS API Documentation
|
76
|
+
#
|
77
|
+
class CopyStepDetails < Struct.new(
|
78
|
+
:name,
|
79
|
+
:destination_file_location,
|
80
|
+
:overwrite_existing)
|
81
|
+
SENSITIVE = []
|
82
|
+
include Aws::Structure
|
83
|
+
end
|
84
|
+
|
41
85
|
# @note When making an API call, you may pass CreateAccessRequest
|
42
86
|
# data as a hash:
|
43
87
|
#
|
@@ -73,7 +117,7 @@ module Aws::Transfer
|
|
73
117
|
# directory to be when they log into the server. If you set it to
|
74
118
|
# `PATH`, the user will see the absolute Amazon S3 bucket or EFS paths
|
75
119
|
# as is in their file transfer protocol clients. If you set it
|
76
|
-
# `LOGICAL`, you
|
120
|
+
# `LOGICAL`, you need to provide mappings in the
|
77
121
|
# `HomeDirectoryMappings` for how you want to make Amazon S3 or EFS
|
78
122
|
# paths visible to your users.
|
79
123
|
# @return [String]
|
@@ -91,11 +135,11 @@ module Aws::Transfer
|
|
91
135
|
#
|
92
136
|
# The following is an `Entry` and `Target` pair example.
|
93
137
|
#
|
94
|
-
# `[ \{ "Entry": "
|
95
|
-
# "/
|
138
|
+
# `[ \{ "Entry": "/directory1", "Target":
|
139
|
+
# "/bucket_name/home/mydirectory" \} ]`
|
96
140
|
#
|
97
|
-
# In most cases, you can use this value instead of the
|
98
|
-
#
|
141
|
+
# In most cases, you can use this value instead of the session policy
|
142
|
+
# to lock down your user to the designated home directory
|
99
143
|
# ("`chroot`"). To do this, you can set `Entry` to `/` and set
|
100
144
|
# `Target` to the `HomeDirectory` parameter value.
|
101
145
|
#
|
@@ -116,22 +160,21 @@ module Aws::Transfer
|
|
116
160
|
# @return [Array<Types::HomeDirectoryMapEntry>]
|
117
161
|
#
|
118
162
|
# @!attribute [rw] policy
|
119
|
-
# A
|
120
|
-
#
|
163
|
+
# A session policy for your user so that you can use the same IAM role
|
164
|
+
# across multiple users. This policy scopes down user access to
|
121
165
|
# portions of their Amazon S3 bucket. Variables that you can use
|
122
166
|
# inside this policy include `$\{Transfer:UserName\}`,
|
123
167
|
# `$\{Transfer:HomeDirectory\}`, and `$\{Transfer:HomeBucket\}`.
|
124
168
|
#
|
125
|
-
# <note markdown="1"> This only applies when domain of `ServerId` is S3.
|
126
|
-
#
|
169
|
+
# <note markdown="1"> This only applies when the domain of `ServerId` is S3. EFS does not
|
170
|
+
# use session policies.
|
127
171
|
#
|
128
|
-
# For
|
129
|
-
#
|
130
|
-
#
|
172
|
+
# For session policies, Amazon Web Services Transfer Family stores the
|
173
|
+
# policy as a JSON blob, instead of the Amazon Resource Name (ARN) of
|
174
|
+
# the policy. You save the policy as a JSON blob and pass it in the
|
131
175
|
# `Policy` argument.
|
132
176
|
#
|
133
|
-
# For an example of a
|
134
|
-
# policy][1].
|
177
|
+
# For an example of a session policy, see [Example session policy][1].
|
135
178
|
#
|
136
179
|
# For more information, see [AssumeRole][2] in the *Amazon Web
|
137
180
|
# Services Security Token Service API Reference*.
|
@@ -140,7 +183,7 @@ module Aws::Transfer
|
|
140
183
|
#
|
141
184
|
#
|
142
185
|
#
|
143
|
-
# [1]: https://docs.aws.amazon.com/transfer/latest/userguide/
|
186
|
+
# [1]: https://docs.aws.amazon.com/transfer/latest/userguide/session-policy.html
|
144
187
|
# [2]: https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html
|
145
188
|
# @return [String]
|
146
189
|
#
|
@@ -253,6 +296,14 @@ module Aws::Transfer
|
|
253
296
|
# value: "TagValue", # required
|
254
297
|
# },
|
255
298
|
# ],
|
299
|
+
# workflow_details: {
|
300
|
+
# on_upload: [ # required
|
301
|
+
# {
|
302
|
+
# workflow_id: "WorkflowId", # required
|
303
|
+
# execution_role: "Role", # required
|
304
|
+
# },
|
305
|
+
# ],
|
306
|
+
# },
|
256
307
|
# }
|
257
308
|
#
|
258
309
|
# @!attribute [rw] certificate
|
@@ -436,6 +487,11 @@ module Aws::Transfer
|
|
436
487
|
# Key-value pairs that can be used to group and search for servers.
|
437
488
|
# @return [Array<Types::Tag>]
|
438
489
|
#
|
490
|
+
# @!attribute [rw] workflow_details
|
491
|
+
# Specifies the workflow ID for the workflow to assign and the
|
492
|
+
# execution role used for executing the workflow.
|
493
|
+
# @return [Types::WorkflowDetails]
|
494
|
+
#
|
439
495
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateServerRequest AWS API Documentation
|
440
496
|
#
|
441
497
|
class CreateServerRequest < Struct.new(
|
@@ -449,7 +505,8 @@ module Aws::Transfer
|
|
449
505
|
:logging_role,
|
450
506
|
:protocols,
|
451
507
|
:security_policy_name,
|
452
|
-
:tags
|
508
|
+
:tags,
|
509
|
+
:workflow_details)
|
453
510
|
SENSITIVE = [:host_key]
|
454
511
|
include Aws::Structure
|
455
512
|
end
|
@@ -508,7 +565,7 @@ module Aws::Transfer
|
|
508
565
|
# directory to be when they log into the server. If you set it to
|
509
566
|
# `PATH`, the user will see the absolute Amazon S3 bucket or EFS paths
|
510
567
|
# as is in their file transfer protocol clients. If you set it
|
511
|
-
# `LOGICAL`, you
|
568
|
+
# `LOGICAL`, you need to provide mappings in the
|
512
569
|
# `HomeDirectoryMappings` for how you want to make Amazon S3 or EFS
|
513
570
|
# paths visible to your users.
|
514
571
|
# @return [String]
|
@@ -526,11 +583,11 @@ module Aws::Transfer
|
|
526
583
|
#
|
527
584
|
# The following is an `Entry` and `Target` pair example.
|
528
585
|
#
|
529
|
-
# `[ \{ "Entry": "
|
530
|
-
# "/
|
586
|
+
# `[ \{ "Entry": "/directory1", "Target":
|
587
|
+
# "/bucket_name/home/mydirectory" \} ]`
|
531
588
|
#
|
532
|
-
# In most cases, you can use this value instead of the
|
533
|
-
#
|
589
|
+
# In most cases, you can use this value instead of the session policy
|
590
|
+
# to lock your user down to the designated home directory
|
534
591
|
# ("`chroot`"). To do this, you can set `Entry` to `/` and set
|
535
592
|
# `Target` to the HomeDirectory parameter value.
|
536
593
|
#
|
@@ -551,22 +608,21 @@ module Aws::Transfer
|
|
551
608
|
# @return [Array<Types::HomeDirectoryMapEntry>]
|
552
609
|
#
|
553
610
|
# @!attribute [rw] policy
|
554
|
-
# A
|
555
|
-
#
|
611
|
+
# A session policy for your user so that you can use the same IAM role
|
612
|
+
# across multiple users. This policy scopes down user access to
|
556
613
|
# portions of their Amazon S3 bucket. Variables that you can use
|
557
614
|
# inside this policy include `$\{Transfer:UserName\}`,
|
558
615
|
# `$\{Transfer:HomeDirectory\}`, and `$\{Transfer:HomeBucket\}`.
|
559
616
|
#
|
560
|
-
# <note markdown="1"> This only applies when domain of ServerId is S3. EFS does not
|
561
|
-
#
|
617
|
+
# <note markdown="1"> This only applies when the domain of `ServerId` is S3. EFS does not
|
618
|
+
# use session policies.
|
562
619
|
#
|
563
|
-
# For
|
564
|
-
#
|
565
|
-
#
|
620
|
+
# For session policies, Amazon Web Services Transfer Family stores the
|
621
|
+
# policy as a JSON blob, instead of the Amazon Resource Name (ARN) of
|
622
|
+
# the policy. You save the policy as a JSON blob and pass it in the
|
566
623
|
# `Policy` argument.
|
567
624
|
#
|
568
|
-
# For an example of a
|
569
|
-
# policy][1].
|
625
|
+
# For an example of a session policy, see [Example session policy][1].
|
570
626
|
#
|
571
627
|
# For more information, see [AssumeRole][2] in the *Amazon Web
|
572
628
|
# Services Security Token Service API Reference*.
|
@@ -575,7 +631,7 @@ module Aws::Transfer
|
|
575
631
|
#
|
576
632
|
#
|
577
633
|
#
|
578
|
-
# [1]: https://docs.aws.amazon.com/transfer/latest/userguide/
|
634
|
+
# [1]: https://docs.aws.amazon.com/transfer/latest/userguide/session-policy.html
|
579
635
|
# [2]: https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html
|
580
636
|
# @return [String]
|
581
637
|
#
|
@@ -615,12 +671,11 @@ module Aws::Transfer
|
|
615
671
|
# @return [Array<Types::Tag>]
|
616
672
|
#
|
617
673
|
# @!attribute [rw] user_name
|
618
|
-
# A unique string that identifies a user and is associated with a
|
619
|
-
#
|
620
|
-
#
|
621
|
-
#
|
622
|
-
# '
|
623
|
-
# period, or at sign.
|
674
|
+
# A unique string that identifies a user and is associated with a
|
675
|
+
# `ServerId`. This user name must be a minimum of 3 and a maximum of
|
676
|
+
# 100 characters long. The following are valid characters: a-z, A-Z,
|
677
|
+
# 0-9, underscore '\_', hyphen '-', period '.', and at sign
|
678
|
+
# '@'. The user name can't start with a hyphen, period, or at sign.
|
624
679
|
# @return [String]
|
625
680
|
#
|
626
681
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateUserRequest AWS API Documentation
|
@@ -658,6 +713,191 @@ module Aws::Transfer
|
|
658
713
|
include Aws::Structure
|
659
714
|
end
|
660
715
|
|
716
|
+
# @note When making an API call, you may pass CreateWorkflowRequest
|
717
|
+
# data as a hash:
|
718
|
+
#
|
719
|
+
# {
|
720
|
+
# description: "WorkflowDescription",
|
721
|
+
# steps: [ # required
|
722
|
+
# {
|
723
|
+
# type: "COPY", # accepts COPY, CUSTOM, TAG, DELETE
|
724
|
+
# copy_step_details: {
|
725
|
+
# name: "WorkflowStepName",
|
726
|
+
# destination_file_location: {
|
727
|
+
# s3_file_location: {
|
728
|
+
# bucket: "S3Bucket",
|
729
|
+
# key: "S3Key",
|
730
|
+
# },
|
731
|
+
# efs_file_location: {
|
732
|
+
# file_system_id: "EfsFileSystemId",
|
733
|
+
# path: "EfsPath",
|
734
|
+
# },
|
735
|
+
# },
|
736
|
+
# overwrite_existing: "TRUE", # accepts TRUE, FALSE
|
737
|
+
# },
|
738
|
+
# custom_step_details: {
|
739
|
+
# name: "WorkflowStepName",
|
740
|
+
# target: "CustomStepTarget",
|
741
|
+
# timeout_seconds: 1,
|
742
|
+
# },
|
743
|
+
# delete_step_details: {
|
744
|
+
# name: "WorkflowStepName",
|
745
|
+
# },
|
746
|
+
# tag_step_details: {
|
747
|
+
# name: "WorkflowStepName",
|
748
|
+
# tags: [
|
749
|
+
# {
|
750
|
+
# key: "S3TagKey", # required
|
751
|
+
# value: "S3TagValue", # required
|
752
|
+
# },
|
753
|
+
# ],
|
754
|
+
# },
|
755
|
+
# },
|
756
|
+
# ],
|
757
|
+
# on_exception_steps: [
|
758
|
+
# {
|
759
|
+
# type: "COPY", # accepts COPY, CUSTOM, TAG, DELETE
|
760
|
+
# copy_step_details: {
|
761
|
+
# name: "WorkflowStepName",
|
762
|
+
# destination_file_location: {
|
763
|
+
# s3_file_location: {
|
764
|
+
# bucket: "S3Bucket",
|
765
|
+
# key: "S3Key",
|
766
|
+
# },
|
767
|
+
# efs_file_location: {
|
768
|
+
# file_system_id: "EfsFileSystemId",
|
769
|
+
# path: "EfsPath",
|
770
|
+
# },
|
771
|
+
# },
|
772
|
+
# overwrite_existing: "TRUE", # accepts TRUE, FALSE
|
773
|
+
# },
|
774
|
+
# custom_step_details: {
|
775
|
+
# name: "WorkflowStepName",
|
776
|
+
# target: "CustomStepTarget",
|
777
|
+
# timeout_seconds: 1,
|
778
|
+
# },
|
779
|
+
# delete_step_details: {
|
780
|
+
# name: "WorkflowStepName",
|
781
|
+
# },
|
782
|
+
# tag_step_details: {
|
783
|
+
# name: "WorkflowStepName",
|
784
|
+
# tags: [
|
785
|
+
# {
|
786
|
+
# key: "S3TagKey", # required
|
787
|
+
# value: "S3TagValue", # required
|
788
|
+
# },
|
789
|
+
# ],
|
790
|
+
# },
|
791
|
+
# },
|
792
|
+
# ],
|
793
|
+
# tags: [
|
794
|
+
# {
|
795
|
+
# key: "TagKey", # required
|
796
|
+
# value: "TagValue", # required
|
797
|
+
# },
|
798
|
+
# ],
|
799
|
+
# }
|
800
|
+
#
|
801
|
+
# @!attribute [rw] description
|
802
|
+
# A textual description for the workflow.
|
803
|
+
# @return [String]
|
804
|
+
#
|
805
|
+
# @!attribute [rw] steps
|
806
|
+
# Specifies the details for the steps that are in the specified
|
807
|
+
# workflow.
|
808
|
+
#
|
809
|
+
# The `TYPE` specifies which of the following actions is being taken
|
810
|
+
# for this step.
|
811
|
+
#
|
812
|
+
# * *Copy*\: copy the file to another location
|
813
|
+
#
|
814
|
+
# * *Custom*\: custom step with a lambda target
|
815
|
+
#
|
816
|
+
# * *Delete*\: delete the file
|
817
|
+
#
|
818
|
+
# * *Tag*\: add a tag to the file
|
819
|
+
#
|
820
|
+
# <note markdown="1"> Currently, copying and tagging are supported only on S3.
|
821
|
+
#
|
822
|
+
# </note>
|
823
|
+
#
|
824
|
+
# For file location, you specify either the S3 bucket and key, or the
|
825
|
+
# EFS filesystem ID and path.
|
826
|
+
# @return [Array<Types::WorkflowStep>]
|
827
|
+
#
|
828
|
+
# @!attribute [rw] on_exception_steps
|
829
|
+
# Specifies the steps (actions) to take if errors are encountered
|
830
|
+
# during execution of the workflow.
|
831
|
+
#
|
832
|
+
# <note markdown="1"> For custom steps, the lambda function needs to send `FAILURE` to the
|
833
|
+
# call back API to kick off the exception steps. Additionally, if the
|
834
|
+
# lambda does not send `SUCCESS` before it times out, the exception
|
835
|
+
# steps are executed.
|
836
|
+
#
|
837
|
+
# </note>
|
838
|
+
# @return [Array<Types::WorkflowStep>]
|
839
|
+
#
|
840
|
+
# @!attribute [rw] tags
|
841
|
+
# Key-value pairs that can be used to group and search for workflows.
|
842
|
+
# Tags are metadata attached to workflows for any purpose.
|
843
|
+
# @return [Array<Types::Tag>]
|
844
|
+
#
|
845
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateWorkflowRequest AWS API Documentation
|
846
|
+
#
|
847
|
+
class CreateWorkflowRequest < Struct.new(
|
848
|
+
:description,
|
849
|
+
:steps,
|
850
|
+
:on_exception_steps,
|
851
|
+
:tags)
|
852
|
+
SENSITIVE = []
|
853
|
+
include Aws::Structure
|
854
|
+
end
|
855
|
+
|
856
|
+
# @!attribute [rw] workflow_id
|
857
|
+
# A unique identifier for the workflow.
|
858
|
+
# @return [String]
|
859
|
+
#
|
860
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateWorkflowResponse AWS API Documentation
|
861
|
+
#
|
862
|
+
class CreateWorkflowResponse < Struct.new(
|
863
|
+
:workflow_id)
|
864
|
+
SENSITIVE = []
|
865
|
+
include Aws::Structure
|
866
|
+
end
|
867
|
+
|
868
|
+
# Each step type has its own `StepDetails` structure.
|
869
|
+
#
|
870
|
+
# @note When making an API call, you may pass CustomStepDetails
|
871
|
+
# data as a hash:
|
872
|
+
#
|
873
|
+
# {
|
874
|
+
# name: "WorkflowStepName",
|
875
|
+
# target: "CustomStepTarget",
|
876
|
+
# timeout_seconds: 1,
|
877
|
+
# }
|
878
|
+
#
|
879
|
+
# @!attribute [rw] name
|
880
|
+
# The name of the step, used as an identifier.
|
881
|
+
# @return [String]
|
882
|
+
#
|
883
|
+
# @!attribute [rw] target
|
884
|
+
# The ARN for the lambda function that is being called.
|
885
|
+
# @return [String]
|
886
|
+
#
|
887
|
+
# @!attribute [rw] timeout_seconds
|
888
|
+
# Timeout, in seconds, for the step.
|
889
|
+
# @return [Integer]
|
890
|
+
#
|
891
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CustomStepDetails AWS API Documentation
|
892
|
+
#
|
893
|
+
class CustomStepDetails < Struct.new(
|
894
|
+
:name,
|
895
|
+
:target,
|
896
|
+
:timeout_seconds)
|
897
|
+
SENSITIVE = []
|
898
|
+
include Aws::Structure
|
899
|
+
end
|
900
|
+
|
661
901
|
# @note When making an API call, you may pass DeleteAccessRequest
|
662
902
|
# data as a hash:
|
663
903
|
#
|
@@ -752,6 +992,27 @@ module Aws::Transfer
|
|
752
992
|
include Aws::Structure
|
753
993
|
end
|
754
994
|
|
995
|
+
# The name of the step, used to identify the delete step.
|
996
|
+
#
|
997
|
+
# @note When making an API call, you may pass DeleteStepDetails
|
998
|
+
# data as a hash:
|
999
|
+
#
|
1000
|
+
# {
|
1001
|
+
# name: "WorkflowStepName",
|
1002
|
+
# }
|
1003
|
+
#
|
1004
|
+
# @!attribute [rw] name
|
1005
|
+
# The name of the step, used as an identifier.
|
1006
|
+
# @return [String]
|
1007
|
+
#
|
1008
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteStepDetails AWS API Documentation
|
1009
|
+
#
|
1010
|
+
class DeleteStepDetails < Struct.new(
|
1011
|
+
:name)
|
1012
|
+
SENSITIVE = []
|
1013
|
+
include Aws::Structure
|
1014
|
+
end
|
1015
|
+
|
755
1016
|
# @note When making an API call, you may pass DeleteUserRequest
|
756
1017
|
# data as a hash:
|
757
1018
|
#
|
@@ -779,6 +1040,25 @@ module Aws::Transfer
|
|
779
1040
|
include Aws::Structure
|
780
1041
|
end
|
781
1042
|
|
1043
|
+
# @note When making an API call, you may pass DeleteWorkflowRequest
|
1044
|
+
# data as a hash:
|
1045
|
+
#
|
1046
|
+
# {
|
1047
|
+
# workflow_id: "WorkflowId", # required
|
1048
|
+
# }
|
1049
|
+
#
|
1050
|
+
# @!attribute [rw] workflow_id
|
1051
|
+
# A unique identifier for the workflow.
|
1052
|
+
# @return [String]
|
1053
|
+
#
|
1054
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteWorkflowRequest AWS API Documentation
|
1055
|
+
#
|
1056
|
+
class DeleteWorkflowRequest < Struct.new(
|
1057
|
+
:workflow_id)
|
1058
|
+
SENSITIVE = []
|
1059
|
+
include Aws::Structure
|
1060
|
+
end
|
1061
|
+
|
782
1062
|
# @note When making an API call, you may pass DescribeAccessRequest
|
783
1063
|
# data as a hash:
|
784
1064
|
#
|
@@ -839,6 +1119,48 @@ module Aws::Transfer
|
|
839
1119
|
include Aws::Structure
|
840
1120
|
end
|
841
1121
|
|
1122
|
+
# @note When making an API call, you may pass DescribeExecutionRequest
|
1123
|
+
# data as a hash:
|
1124
|
+
#
|
1125
|
+
# {
|
1126
|
+
# execution_id: "ExecutionId", # required
|
1127
|
+
# workflow_id: "WorkflowId", # required
|
1128
|
+
# }
|
1129
|
+
#
|
1130
|
+
# @!attribute [rw] execution_id
|
1131
|
+
# A unique identifier for the execution of a workflow.
|
1132
|
+
# @return [String]
|
1133
|
+
#
|
1134
|
+
# @!attribute [rw] workflow_id
|
1135
|
+
# A unique identifier for the workflow.
|
1136
|
+
# @return [String]
|
1137
|
+
#
|
1138
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeExecutionRequest AWS API Documentation
|
1139
|
+
#
|
1140
|
+
class DescribeExecutionRequest < Struct.new(
|
1141
|
+
:execution_id,
|
1142
|
+
:workflow_id)
|
1143
|
+
SENSITIVE = []
|
1144
|
+
include Aws::Structure
|
1145
|
+
end
|
1146
|
+
|
1147
|
+
# @!attribute [rw] workflow_id
|
1148
|
+
# A unique identifier for the workflow.
|
1149
|
+
# @return [String]
|
1150
|
+
#
|
1151
|
+
# @!attribute [rw] execution
|
1152
|
+
# The structure that contains the details of the workflow' execution.
|
1153
|
+
# @return [Types::DescribedExecution]
|
1154
|
+
#
|
1155
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeExecutionResponse AWS API Documentation
|
1156
|
+
#
|
1157
|
+
class DescribeExecutionResponse < Struct.new(
|
1158
|
+
:workflow_id,
|
1159
|
+
:execution)
|
1160
|
+
SENSITIVE = []
|
1161
|
+
include Aws::Structure
|
1162
|
+
end
|
1163
|
+
|
842
1164
|
# @note When making an API call, you may pass DescribeSecurityPolicyRequest
|
843
1165
|
# data as a hash:
|
844
1166
|
#
|
@@ -950,6 +1272,37 @@ module Aws::Transfer
|
|
950
1272
|
include Aws::Structure
|
951
1273
|
end
|
952
1274
|
|
1275
|
+
# @note When making an API call, you may pass DescribeWorkflowRequest
|
1276
|
+
# data as a hash:
|
1277
|
+
#
|
1278
|
+
# {
|
1279
|
+
# workflow_id: "WorkflowId", # required
|
1280
|
+
# }
|
1281
|
+
#
|
1282
|
+
# @!attribute [rw] workflow_id
|
1283
|
+
# A unique identifier for the workflow.
|
1284
|
+
# @return [String]
|
1285
|
+
#
|
1286
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeWorkflowRequest AWS API Documentation
|
1287
|
+
#
|
1288
|
+
class DescribeWorkflowRequest < Struct.new(
|
1289
|
+
:workflow_id)
|
1290
|
+
SENSITIVE = []
|
1291
|
+
include Aws::Structure
|
1292
|
+
end
|
1293
|
+
|
1294
|
+
# @!attribute [rw] workflow
|
1295
|
+
# The structure that contains the details of the workflow.
|
1296
|
+
# @return [Types::DescribedWorkflow]
|
1297
|
+
#
|
1298
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeWorkflowResponse AWS API Documentation
|
1299
|
+
#
|
1300
|
+
class DescribeWorkflowResponse < Struct.new(
|
1301
|
+
:workflow)
|
1302
|
+
SENSITIVE = []
|
1303
|
+
include Aws::Structure
|
1304
|
+
end
|
1305
|
+
|
953
1306
|
# Describes the properties of the access that was specified.
|
954
1307
|
#
|
955
1308
|
# @!attribute [rw] home_directory
|
@@ -970,10 +1323,10 @@ module Aws::Transfer
|
|
970
1323
|
# to paths in `Target`. This value can only be set when
|
971
1324
|
# `HomeDirectoryType` is set to *LOGICAL*.
|
972
1325
|
#
|
973
|
-
# In most cases, you can use this value instead of the
|
974
|
-
#
|
975
|
-
#
|
976
|
-
#
|
1326
|
+
# In most cases, you can use this value instead of the session policy
|
1327
|
+
# to lock down the associated access to the designated home directory
|
1328
|
+
# ("`chroot`"). To do this, you can set `Entry` to '/' and set
|
1329
|
+
# `Target` to the `HomeDirectory` parameter value.
|
977
1330
|
# @return [Array<Types::HomeDirectoryMapEntry>]
|
978
1331
|
#
|
979
1332
|
# @!attribute [rw] home_directory_type
|
@@ -981,14 +1334,14 @@ module Aws::Transfer
|
|
981
1334
|
# directory to be when they log into the server. If you set it to
|
982
1335
|
# `PATH`, the user will see the absolute Amazon S3 bucket or EFS paths
|
983
1336
|
# as is in their file transfer protocol clients. If you set it
|
984
|
-
# `LOGICAL`, you
|
1337
|
+
# `LOGICAL`, you need to provide mappings in the
|
985
1338
|
# `HomeDirectoryMappings` for how you want to make Amazon S3 or EFS
|
986
1339
|
# paths visible to your users.
|
987
1340
|
# @return [String]
|
988
1341
|
#
|
989
1342
|
# @!attribute [rw] policy
|
990
|
-
# A
|
991
|
-
#
|
1343
|
+
# A session policy for your user so that you can use the same IAM role
|
1344
|
+
# across multiple users. This policy scopes down user access to
|
992
1345
|
# portions of their Amazon S3 bucket. Variables that you can use
|
993
1346
|
# inside this policy include `$\{Transfer:UserName\}`,
|
994
1347
|
# `$\{Transfer:HomeDirectory\}`, and `$\{Transfer:HomeBucket\}`.
|
@@ -1048,6 +1401,67 @@ module Aws::Transfer
|
|
1048
1401
|
include Aws::Structure
|
1049
1402
|
end
|
1050
1403
|
|
1404
|
+
# The details for an execution object.
|
1405
|
+
#
|
1406
|
+
# @!attribute [rw] execution_id
|
1407
|
+
# A unique identifier for the execution of a workflow.
|
1408
|
+
# @return [String]
|
1409
|
+
#
|
1410
|
+
# @!attribute [rw] initial_file_location
|
1411
|
+
# A structure that describes the Amazon S3 or EFS file location. This
|
1412
|
+
# is the file location when the execution begins: if the file is being
|
1413
|
+
# copied, this is the initial (as opposed to destination) file
|
1414
|
+
# location.
|
1415
|
+
# @return [Types::FileLocation]
|
1416
|
+
#
|
1417
|
+
# @!attribute [rw] service_metadata
|
1418
|
+
# A container object for the session details associated with a
|
1419
|
+
# workflow.
|
1420
|
+
# @return [Types::ServiceMetadata]
|
1421
|
+
#
|
1422
|
+
# @!attribute [rw] execution_role
|
1423
|
+
# The IAM role associated with the execution.
|
1424
|
+
# @return [String]
|
1425
|
+
#
|
1426
|
+
# @!attribute [rw] logging_configuration
|
1427
|
+
# The IAM logging role associated with the execution.
|
1428
|
+
# @return [Types::LoggingConfiguration]
|
1429
|
+
#
|
1430
|
+
# @!attribute [rw] posix_profile
|
1431
|
+
# The full POSIX identity, including user ID (`Uid`), group ID
|
1432
|
+
# (`Gid`), and any secondary groups IDs (`SecondaryGids`), that
|
1433
|
+
# controls your users' access to your Amazon EFS file systems. The
|
1434
|
+
# POSIX permissions that are set on files and directories in your file
|
1435
|
+
# system determine the level of access your users get when
|
1436
|
+
# transferring files into and out of your Amazon EFS file systems.
|
1437
|
+
# @return [Types::PosixProfile]
|
1438
|
+
#
|
1439
|
+
# @!attribute [rw] status
|
1440
|
+
# The status is one of the execution. Can be in progress, completed,
|
1441
|
+
# exception encountered, or handling the exception.
|
1442
|
+
# @return [String]
|
1443
|
+
#
|
1444
|
+
# @!attribute [rw] results
|
1445
|
+
# A structure that describes the execution results. This includes a
|
1446
|
+
# list of the steps along with the details of each step, error type
|
1447
|
+
# and message (if any), and the `OnExceptionSteps` structure.
|
1448
|
+
# @return [Types::ExecutionResults]
|
1449
|
+
#
|
1450
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribedExecution AWS API Documentation
|
1451
|
+
#
|
1452
|
+
class DescribedExecution < Struct.new(
|
1453
|
+
:execution_id,
|
1454
|
+
:initial_file_location,
|
1455
|
+
:service_metadata,
|
1456
|
+
:execution_role,
|
1457
|
+
:logging_configuration,
|
1458
|
+
:posix_profile,
|
1459
|
+
:status,
|
1460
|
+
:results)
|
1461
|
+
SENSITIVE = []
|
1462
|
+
include Aws::Structure
|
1463
|
+
end
|
1464
|
+
|
1051
1465
|
# Describes the properties of a security policy that was specified. For
|
1052
1466
|
# more information about security policies, see [Working with security
|
1053
1467
|
# policies][1].
|
@@ -1225,6 +1639,11 @@ module Aws::Transfer
|
|
1225
1639
|
# specified with the `ServerId`.
|
1226
1640
|
# @return [Integer]
|
1227
1641
|
#
|
1642
|
+
# @!attribute [rw] workflow_details
|
1643
|
+
# Specifies the workflow ID for the workflow to assign and the
|
1644
|
+
# execution role used for executing the workflow.
|
1645
|
+
# @return [Types::WorkflowDetails]
|
1646
|
+
#
|
1228
1647
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribedServer AWS API Documentation
|
1229
1648
|
#
|
1230
1649
|
class DescribedServer < Struct.new(
|
@@ -1243,7 +1662,8 @@ module Aws::Transfer
|
|
1243
1662
|
:server_id,
|
1244
1663
|
:state,
|
1245
1664
|
:tags,
|
1246
|
-
:user_count
|
1665
|
+
:user_count,
|
1666
|
+
:workflow_details)
|
1247
1667
|
SENSITIVE = []
|
1248
1668
|
include Aws::Structure
|
1249
1669
|
end
|
@@ -1273,8 +1693,8 @@ module Aws::Transfer
|
|
1273
1693
|
# to paths in `Target`. This value can only be set when
|
1274
1694
|
# `HomeDirectoryType` is set to *LOGICAL*.
|
1275
1695
|
#
|
1276
|
-
# In most cases, you can use this value instead of the
|
1277
|
-
#
|
1696
|
+
# In most cases, you can use this value instead of the session policy
|
1697
|
+
# to lock your user down to the designated home directory
|
1278
1698
|
# ("`chroot`"). To do this, you can set `Entry` to '/' and set
|
1279
1699
|
# `Target` to the HomeDirectory parameter value.
|
1280
1700
|
# @return [Array<Types::HomeDirectoryMapEntry>]
|
@@ -1284,14 +1704,14 @@ module Aws::Transfer
|
|
1284
1704
|
# directory to be when they log into the server. If you set it to
|
1285
1705
|
# `PATH`, the user will see the absolute Amazon S3 bucket or EFS paths
|
1286
1706
|
# as is in their file transfer protocol clients. If you set it
|
1287
|
-
# `LOGICAL`, you
|
1707
|
+
# `LOGICAL`, you need to provide mappings in the
|
1288
1708
|
# `HomeDirectoryMappings` for how you want to make Amazon S3 or EFS
|
1289
1709
|
# paths visible to your users.
|
1290
1710
|
# @return [String]
|
1291
1711
|
#
|
1292
1712
|
# @!attribute [rw] policy
|
1293
|
-
# A
|
1294
|
-
#
|
1713
|
+
# A session policy for your user so that you can use the same IAM role
|
1714
|
+
# across multiple users. This policy scopes down user access to
|
1295
1715
|
# portions of their Amazon S3 bucket. Variables that you can use
|
1296
1716
|
# inside this policy include `$\{Transfer:UserName\}`,
|
1297
1717
|
# `$\{Transfer:HomeDirectory\}`, and `$\{Transfer:HomeBucket\}`.
|
@@ -1351,6 +1771,75 @@ module Aws::Transfer
|
|
1351
1771
|
include Aws::Structure
|
1352
1772
|
end
|
1353
1773
|
|
1774
|
+
# Describes the properties of the specified workflow
|
1775
|
+
#
|
1776
|
+
# @!attribute [rw] arn
|
1777
|
+
# Specifies the unique Amazon Resource Name (ARN) for the workflow.
|
1778
|
+
# @return [String]
|
1779
|
+
#
|
1780
|
+
# @!attribute [rw] description
|
1781
|
+
# Specifies the text description for the workflow.
|
1782
|
+
# @return [String]
|
1783
|
+
#
|
1784
|
+
# @!attribute [rw] steps
|
1785
|
+
# Specifies the details for the steps that are in the specified
|
1786
|
+
# workflow.
|
1787
|
+
# @return [Array<Types::WorkflowStep>]
|
1788
|
+
#
|
1789
|
+
# @!attribute [rw] on_exception_steps
|
1790
|
+
# Specifies the steps (actions) to take if errors are encountered
|
1791
|
+
# during execution of the workflow.
|
1792
|
+
# @return [Array<Types::WorkflowStep>]
|
1793
|
+
#
|
1794
|
+
# @!attribute [rw] workflow_id
|
1795
|
+
# A unique identifier for the workflow.
|
1796
|
+
# @return [String]
|
1797
|
+
#
|
1798
|
+
# @!attribute [rw] tags
|
1799
|
+
# Key-value pairs that can be used to group and search for workflows.
|
1800
|
+
# Tags are metadata attached to workflows for any purpose.
|
1801
|
+
# @return [Array<Types::Tag>]
|
1802
|
+
#
|
1803
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribedWorkflow AWS API Documentation
|
1804
|
+
#
|
1805
|
+
class DescribedWorkflow < Struct.new(
|
1806
|
+
:arn,
|
1807
|
+
:description,
|
1808
|
+
:steps,
|
1809
|
+
:on_exception_steps,
|
1810
|
+
:workflow_id,
|
1811
|
+
:tags)
|
1812
|
+
SENSITIVE = []
|
1813
|
+
include Aws::Structure
|
1814
|
+
end
|
1815
|
+
|
1816
|
+
# Reserved for future use.
|
1817
|
+
#
|
1818
|
+
# @note When making an API call, you may pass EfsFileLocation
|
1819
|
+
# data as a hash:
|
1820
|
+
#
|
1821
|
+
# {
|
1822
|
+
# file_system_id: "EfsFileSystemId",
|
1823
|
+
# path: "EfsPath",
|
1824
|
+
# }
|
1825
|
+
#
|
1826
|
+
# @!attribute [rw] file_system_id
|
1827
|
+
# The ID of the file system, assigned by Amazon EFS.
|
1828
|
+
# @return [String]
|
1829
|
+
#
|
1830
|
+
# @!attribute [rw] path
|
1831
|
+
# The pathname for the folder being used by a workflow.
|
1832
|
+
# @return [String]
|
1833
|
+
#
|
1834
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/EfsFileLocation AWS API Documentation
|
1835
|
+
#
|
1836
|
+
class EfsFileLocation < Struct.new(
|
1837
|
+
:file_system_id,
|
1838
|
+
:path)
|
1839
|
+
SENSITIVE = []
|
1840
|
+
include Aws::Structure
|
1841
|
+
end
|
1842
|
+
|
1354
1843
|
# The virtual private cloud (VPC) endpoint settings that are configured
|
1355
1844
|
# for your file transfer protocol-enabled server. With a VPC endpoint,
|
1356
1845
|
# you can restrict access to your server and resources only within your
|
@@ -1451,39 +1940,140 @@ module Aws::Transfer
|
|
1451
1940
|
include Aws::Structure
|
1452
1941
|
end
|
1453
1942
|
|
1454
|
-
#
|
1455
|
-
#
|
1943
|
+
# Specifies the error message and type, for an error that occurs during
|
1944
|
+
# the execution of the workflow.
|
1456
1945
|
#
|
1457
|
-
#
|
1946
|
+
# @!attribute [rw] type
|
1947
|
+
# Specifies the error type: currently, the only valid value is
|
1948
|
+
# `PERMISSION_DENIED`, which occurs if your policy does not contain
|
1949
|
+
# the correct permissions to complete one or more of the steps in the
|
1950
|
+
# workflow.
|
1951
|
+
# @return [String]
|
1458
1952
|
#
|
1459
|
-
#
|
1953
|
+
# @!attribute [rw] message
|
1954
|
+
# Specifies the descriptive message that corresponds to the
|
1955
|
+
# `ErrorType`.
|
1956
|
+
# @return [String]
|
1460
1957
|
#
|
1461
|
-
#
|
1462
|
-
# or EFS, the entry is ignored. As a workaround, you can use the Amazon
|
1463
|
-
# S3 API or EFS API to create 0 byte objects as place holders for your
|
1464
|
-
# directory. If using the CLI, use the `s3api` or `efsapi` call instead
|
1465
|
-
# of `s3` or `efs` so you can use the put-object operation. For example,
|
1466
|
-
# you use the following: `aws s3api put-object --bucket bucketname --key
|
1467
|
-
# path/to/folder/`. Make sure that the end of the key name ends in a `/`
|
1468
|
-
# for it to be considered a folder.
|
1958
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ExecutionError AWS API Documentation
|
1469
1959
|
#
|
1470
|
-
|
1960
|
+
class ExecutionError < Struct.new(
|
1961
|
+
:type,
|
1962
|
+
:message)
|
1963
|
+
SENSITIVE = []
|
1964
|
+
include Aws::Structure
|
1965
|
+
end
|
1966
|
+
|
1967
|
+
# Specifies the steps in the workflow, as well as the steps to execute
|
1968
|
+
# in case of any errors during workflow execution.
|
1471
1969
|
#
|
1472
|
-
#
|
1473
|
-
#
|
1970
|
+
# @!attribute [rw] steps
|
1971
|
+
# Specifies the details for the steps that are in the specified
|
1972
|
+
# workflow.
|
1973
|
+
# @return [Array<Types::ExecutionStepResult>]
|
1474
1974
|
#
|
1475
|
-
#
|
1476
|
-
#
|
1477
|
-
#
|
1478
|
-
#
|
1975
|
+
# @!attribute [rw] on_exception_steps
|
1976
|
+
# Specifies the steps (actions) to take if errors are encountered
|
1977
|
+
# during execution of the workflow.
|
1978
|
+
# @return [Array<Types::ExecutionStepResult>]
|
1479
1979
|
#
|
1480
|
-
#
|
1481
|
-
# Represents an entry for `HomeDirectoryMappings`.
|
1482
|
-
# @return [String]
|
1980
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ExecutionResults AWS API Documentation
|
1483
1981
|
#
|
1484
|
-
|
1485
|
-
|
1486
|
-
|
1982
|
+
class ExecutionResults < Struct.new(
|
1983
|
+
:steps,
|
1984
|
+
:on_exception_steps)
|
1985
|
+
SENSITIVE = []
|
1986
|
+
include Aws::Structure
|
1987
|
+
end
|
1988
|
+
|
1989
|
+
# Specifies the following details for the step: error (if any), outputs
|
1990
|
+
# (if any), and the step type.
|
1991
|
+
#
|
1992
|
+
# @!attribute [rw] step_type
|
1993
|
+
# One of the available step types.
|
1994
|
+
#
|
1995
|
+
# * *Copy*\: copy the file to another location
|
1996
|
+
#
|
1997
|
+
# * *Custom*\: custom step with a lambda target
|
1998
|
+
#
|
1999
|
+
# * *Delete*\: delete the file
|
2000
|
+
#
|
2001
|
+
# * *Tag*\: add a tag to the file
|
2002
|
+
# @return [String]
|
2003
|
+
#
|
2004
|
+
# @!attribute [rw] outputs
|
2005
|
+
# The values for the key/value pair applied as a tag to the file. Only
|
2006
|
+
# applicable if the step type is `TAG`.
|
2007
|
+
# @return [String]
|
2008
|
+
#
|
2009
|
+
# @!attribute [rw] error
|
2010
|
+
# Specifies the details for an error, if it occurred during execution
|
2011
|
+
# of the specified workfow step.
|
2012
|
+
# @return [Types::ExecutionError]
|
2013
|
+
#
|
2014
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ExecutionStepResult AWS API Documentation
|
2015
|
+
#
|
2016
|
+
class ExecutionStepResult < Struct.new(
|
2017
|
+
:step_type,
|
2018
|
+
:outputs,
|
2019
|
+
:error)
|
2020
|
+
SENSITIVE = []
|
2021
|
+
include Aws::Structure
|
2022
|
+
end
|
2023
|
+
|
2024
|
+
# Specifies the Amazon S3 or EFS file details to be used in the step.
|
2025
|
+
#
|
2026
|
+
# @!attribute [rw] s3_file_location
|
2027
|
+
# Specifies the S3 details for the file being used, such as bucket,
|
2028
|
+
# Etag, and so forth.
|
2029
|
+
# @return [Types::S3FileLocation]
|
2030
|
+
#
|
2031
|
+
# @!attribute [rw] efs_file_location
|
2032
|
+
# Specifies the Amazon EFS ID and the path for the file being used.
|
2033
|
+
# @return [Types::EfsFileLocation]
|
2034
|
+
#
|
2035
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/FileLocation AWS API Documentation
|
2036
|
+
#
|
2037
|
+
class FileLocation < Struct.new(
|
2038
|
+
:s3_file_location,
|
2039
|
+
:efs_file_location)
|
2040
|
+
SENSITIVE = []
|
2041
|
+
include Aws::Structure
|
2042
|
+
end
|
2043
|
+
|
2044
|
+
# Represents an object that contains entries and targets for
|
2045
|
+
# `HomeDirectoryMappings`.
|
2046
|
+
#
|
2047
|
+
# The following is an `Entry` and `Target` pair example for `chroot`.
|
2048
|
+
#
|
2049
|
+
# `[ \{ "Entry:": "/", "Target": "/bucket_name/home/mydirectory" \} ]`
|
2050
|
+
#
|
2051
|
+
# <note markdown="1"> If the target of a logical directory entry does not exist in Amazon S3
|
2052
|
+
# or EFS, the entry is ignored. As a workaround, you can use the Amazon
|
2053
|
+
# S3 API or EFS API to create 0 byte objects as place holders for your
|
2054
|
+
# directory. If using the CLI, use the `s3api` or `efsapi` call instead
|
2055
|
+
# of `s3` or `efs` so you can use the put-object operation. For example,
|
2056
|
+
# you use the following: `aws s3api put-object --bucket bucketname --key
|
2057
|
+
# path/to/folder/`. Make sure that the end of the key name ends in a `/`
|
2058
|
+
# for it to be considered a folder.
|
2059
|
+
#
|
2060
|
+
# </note>
|
2061
|
+
#
|
2062
|
+
# @note When making an API call, you may pass HomeDirectoryMapEntry
|
2063
|
+
# data as a hash:
|
2064
|
+
#
|
2065
|
+
# {
|
2066
|
+
# entry: "MapEntry", # required
|
2067
|
+
# target: "MapTarget", # required
|
2068
|
+
# }
|
2069
|
+
#
|
2070
|
+
# @!attribute [rw] entry
|
2071
|
+
# Represents an entry for `HomeDirectoryMappings`.
|
2072
|
+
# @return [String]
|
2073
|
+
#
|
2074
|
+
# @!attribute [rw] target
|
2075
|
+
# Represents the map target that is used in a `HomeDirectorymapEntry`.
|
2076
|
+
# @return [String]
|
1487
2077
|
#
|
1488
2078
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/HomeDirectoryMapEntry AWS API Documentation
|
1489
2079
|
#
|
@@ -1590,6 +2180,40 @@ module Aws::Transfer
|
|
1590
2180
|
include Aws::Structure
|
1591
2181
|
end
|
1592
2182
|
|
2183
|
+
# Specifies the location for the file being copied. Only applicable for
|
2184
|
+
# the Copy type of workflow steps.
|
2185
|
+
#
|
2186
|
+
# @note When making an API call, you may pass InputFileLocation
|
2187
|
+
# data as a hash:
|
2188
|
+
#
|
2189
|
+
# {
|
2190
|
+
# s3_file_location: {
|
2191
|
+
# bucket: "S3Bucket",
|
2192
|
+
# key: "S3Key",
|
2193
|
+
# },
|
2194
|
+
# efs_file_location: {
|
2195
|
+
# file_system_id: "EfsFileSystemId",
|
2196
|
+
# path: "EfsPath",
|
2197
|
+
# },
|
2198
|
+
# }
|
2199
|
+
#
|
2200
|
+
# @!attribute [rw] s3_file_location
|
2201
|
+
# Specifies the details for the S3 file being copied.
|
2202
|
+
# @return [Types::S3InputFileLocation]
|
2203
|
+
#
|
2204
|
+
# @!attribute [rw] efs_file_location
|
2205
|
+
# Reserved for future use.
|
2206
|
+
# @return [Types::EfsFileLocation]
|
2207
|
+
#
|
2208
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/InputFileLocation AWS API Documentation
|
2209
|
+
#
|
2210
|
+
class InputFileLocation < Struct.new(
|
2211
|
+
:s3_file_location,
|
2212
|
+
:efs_file_location)
|
2213
|
+
SENSITIVE = []
|
2214
|
+
include Aws::Structure
|
2215
|
+
end
|
2216
|
+
|
1593
2217
|
# This exception is thrown when an error occurs in the Amazon Web
|
1594
2218
|
# ServicesTransfer Family service.
|
1595
2219
|
#
|
@@ -1692,6 +2316,92 @@ module Aws::Transfer
|
|
1692
2316
|
include Aws::Structure
|
1693
2317
|
end
|
1694
2318
|
|
2319
|
+
# @note When making an API call, you may pass ListExecutionsRequest
|
2320
|
+
# data as a hash:
|
2321
|
+
#
|
2322
|
+
# {
|
2323
|
+
# max_results: 1,
|
2324
|
+
# next_token: "NextToken",
|
2325
|
+
# workflow_id: "WorkflowId", # required
|
2326
|
+
# }
|
2327
|
+
#
|
2328
|
+
# @!attribute [rw] max_results
|
2329
|
+
# Specifies the aximum number of executions to return.
|
2330
|
+
# @return [Integer]
|
2331
|
+
#
|
2332
|
+
# @!attribute [rw] next_token
|
2333
|
+
# `ListExecutions` returns the `NextToken` parameter in the output.
|
2334
|
+
# You can then pass the `NextToken` parameter in a subsequent command
|
2335
|
+
# to continue listing additional executions.
|
2336
|
+
#
|
2337
|
+
# This is useful for pagination, for instance. If you have 100
|
2338
|
+
# executions for a workflow, you might only want to list first 10. If
|
2339
|
+
# so, callthe API by specifing the `max-results`\:
|
2340
|
+
#
|
2341
|
+
# `aws transfer list-executions --max-results 10`
|
2342
|
+
#
|
2343
|
+
# This returns details for the first 10 executions, as well as the
|
2344
|
+
# pointer (`NextToken`) to the eleventh execution. You can now call
|
2345
|
+
# the API again, suppling the `NextToken` value you received:
|
2346
|
+
#
|
2347
|
+
# `aws transfer list-executions --max-results 10 --next-token
|
2348
|
+
# $somePointerReturnedFromPreviousListResult`
|
2349
|
+
#
|
2350
|
+
# This call returns the next 10 executions, the 11th through the 20th.
|
2351
|
+
# You can then repeat the call until the details for all 100
|
2352
|
+
# executions have been returned.
|
2353
|
+
# @return [String]
|
2354
|
+
#
|
2355
|
+
# @!attribute [rw] workflow_id
|
2356
|
+
# A unique identifier for the workflow.
|
2357
|
+
# @return [String]
|
2358
|
+
#
|
2359
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListExecutionsRequest AWS API Documentation
|
2360
|
+
#
|
2361
|
+
class ListExecutionsRequest < Struct.new(
|
2362
|
+
:max_results,
|
2363
|
+
:next_token,
|
2364
|
+
:workflow_id)
|
2365
|
+
SENSITIVE = []
|
2366
|
+
include Aws::Structure
|
2367
|
+
end
|
2368
|
+
|
2369
|
+
# @!attribute [rw] next_token
|
2370
|
+
# `ListExecutions` returns the `NextToken` parameter in the output.
|
2371
|
+
# You can then pass the `NextToken` parameter in a subsequent command
|
2372
|
+
# to continue listing additional executions.
|
2373
|
+
# @return [String]
|
2374
|
+
#
|
2375
|
+
# @!attribute [rw] workflow_id
|
2376
|
+
# A unique identifier for the workflow.
|
2377
|
+
# @return [String]
|
2378
|
+
#
|
2379
|
+
# @!attribute [rw] executions
|
2380
|
+
# Returns the details for each execution.
|
2381
|
+
#
|
2382
|
+
# * **NextToken**\: returned from a call to several APIs, you can use
|
2383
|
+
# pass it to a subsequent command to continue listing additional
|
2384
|
+
# executions.
|
2385
|
+
#
|
2386
|
+
# * **StartTime**\: timestamp indicating when the execution began.
|
2387
|
+
#
|
2388
|
+
# * **Executions**\: details of the execution, including the execution
|
2389
|
+
# ID, initial file location, and Service metadata.
|
2390
|
+
#
|
2391
|
+
# * **Status**\: one of the following values: `IN_PROGRESS`,
|
2392
|
+
# `COMPLETED`, `EXCEPTION`, `HANDLING_EXEPTION`.
|
2393
|
+
# @return [Array<Types::ListedExecution>]
|
2394
|
+
#
|
2395
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListExecutionsResponse AWS API Documentation
|
2396
|
+
#
|
2397
|
+
class ListExecutionsResponse < Struct.new(
|
2398
|
+
:next_token,
|
2399
|
+
:workflow_id,
|
2400
|
+
:executions)
|
2401
|
+
SENSITIVE = []
|
2402
|
+
include Aws::Structure
|
2403
|
+
end
|
2404
|
+
|
1695
2405
|
# @note When making an API call, you may pass ListSecurityPoliciesRequest
|
1696
2406
|
# data as a hash:
|
1697
2407
|
#
|
@@ -1917,6 +2627,53 @@ module Aws::Transfer
|
|
1917
2627
|
include Aws::Structure
|
1918
2628
|
end
|
1919
2629
|
|
2630
|
+
# @note When making an API call, you may pass ListWorkflowsRequest
|
2631
|
+
# data as a hash:
|
2632
|
+
#
|
2633
|
+
# {
|
2634
|
+
# max_results: 1,
|
2635
|
+
# next_token: "NextToken",
|
2636
|
+
# }
|
2637
|
+
#
|
2638
|
+
# @!attribute [rw] max_results
|
2639
|
+
# Specifies the maximum number of workflows to return.
|
2640
|
+
# @return [Integer]
|
2641
|
+
#
|
2642
|
+
# @!attribute [rw] next_token
|
2643
|
+
# `ListWorkflows` returns the `NextToken` parameter in the output. You
|
2644
|
+
# can then pass the `NextToken` parameter in a subsequent command to
|
2645
|
+
# continue listing additional workflows.
|
2646
|
+
# @return [String]
|
2647
|
+
#
|
2648
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListWorkflowsRequest AWS API Documentation
|
2649
|
+
#
|
2650
|
+
class ListWorkflowsRequest < Struct.new(
|
2651
|
+
:max_results,
|
2652
|
+
:next_token)
|
2653
|
+
SENSITIVE = []
|
2654
|
+
include Aws::Structure
|
2655
|
+
end
|
2656
|
+
|
2657
|
+
# @!attribute [rw] next_token
|
2658
|
+
# `ListWorkflows` returns the `NextToken` parameter in the output. You
|
2659
|
+
# can then pass the `NextToken` parameter in a subsequent command to
|
2660
|
+
# continue listing additional workflows.
|
2661
|
+
# @return [String]
|
2662
|
+
#
|
2663
|
+
# @!attribute [rw] workflows
|
2664
|
+
# Returns the `Arn`, `WorkflowId`, and `Description` for each
|
2665
|
+
# workflow.
|
2666
|
+
# @return [Array<Types::ListedWorkflow>]
|
2667
|
+
#
|
2668
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListWorkflowsResponse AWS API Documentation
|
2669
|
+
#
|
2670
|
+
class ListWorkflowsResponse < Struct.new(
|
2671
|
+
:next_token,
|
2672
|
+
:workflows)
|
2673
|
+
SENSITIVE = []
|
2674
|
+
include Aws::Structure
|
2675
|
+
end
|
2676
|
+
|
1920
2677
|
# Lists the properties for one or more specified associated accesses.
|
1921
2678
|
#
|
1922
2679
|
# @!attribute [rw] home_directory
|
@@ -1931,7 +2688,7 @@ module Aws::Transfer
|
|
1931
2688
|
# directory to be when they log into the server. If you set it to
|
1932
2689
|
# `PATH`, the user will see the absolute Amazon S3 bucket or EFS paths
|
1933
2690
|
# as is in their file transfer protocol clients. If you set it
|
1934
|
-
# `LOGICAL`, you
|
2691
|
+
# `LOGICAL`, you need to provide mappings in the
|
1935
2692
|
# `HomeDirectoryMappings` for how you want to make Amazon S3 or EFS
|
1936
2693
|
# paths visible to your users.
|
1937
2694
|
# @return [String]
|
@@ -1978,6 +2735,40 @@ module Aws::Transfer
|
|
1978
2735
|
include Aws::Structure
|
1979
2736
|
end
|
1980
2737
|
|
2738
|
+
# Returns properties of the execution that is specified.
|
2739
|
+
#
|
2740
|
+
# @!attribute [rw] execution_id
|
2741
|
+
# A unique identifier for the execution of a workflow.
|
2742
|
+
# @return [String]
|
2743
|
+
#
|
2744
|
+
# @!attribute [rw] initial_file_location
|
2745
|
+
# A structure that describes the Amazon S3 or EFS file location. This
|
2746
|
+
# is the file location when the execution begins: if the file is being
|
2747
|
+
# copied, this is the initial (as opposed to destination) file
|
2748
|
+
# location.
|
2749
|
+
# @return [Types::FileLocation]
|
2750
|
+
#
|
2751
|
+
# @!attribute [rw] service_metadata
|
2752
|
+
# A container object for the session details associated with a
|
2753
|
+
# workflow.
|
2754
|
+
# @return [Types::ServiceMetadata]
|
2755
|
+
#
|
2756
|
+
# @!attribute [rw] status
|
2757
|
+
# The status is one of the execution. Can be in progress, completed,
|
2758
|
+
# exception encountered, or handling the exception.
|
2759
|
+
# @return [String]
|
2760
|
+
#
|
2761
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListedExecution AWS API Documentation
|
2762
|
+
#
|
2763
|
+
class ListedExecution < Struct.new(
|
2764
|
+
:execution_id,
|
2765
|
+
:initial_file_location,
|
2766
|
+
:service_metadata,
|
2767
|
+
:status)
|
2768
|
+
SENSITIVE = []
|
2769
|
+
include Aws::Structure
|
2770
|
+
end
|
2771
|
+
|
1981
2772
|
# Returns properties of a file transfer protocol-enabled server that was
|
1982
2773
|
# specified.
|
1983
2774
|
#
|
@@ -2079,7 +2870,7 @@ module Aws::Transfer
|
|
2079
2870
|
# directory to be when they log into the server. If you set it to
|
2080
2871
|
# `PATH`, the user will see the absolute Amazon S3 bucket or EFS paths
|
2081
2872
|
# as is in their file transfer protocol clients. If you set it
|
2082
|
-
# `LOGICAL`, you
|
2873
|
+
# `LOGICAL`, you need to provide mappings in the
|
2083
2874
|
# `HomeDirectoryMappings` for how you want to make Amazon S3 or EFS
|
2084
2875
|
# paths visible to your users.
|
2085
2876
|
# @return [String]
|
@@ -2128,6 +2919,55 @@ module Aws::Transfer
|
|
2128
2919
|
include Aws::Structure
|
2129
2920
|
end
|
2130
2921
|
|
2922
|
+
# Contains the ID, text description, and Amazon Resource Name (ARN) for
|
2923
|
+
# the workflow.
|
2924
|
+
#
|
2925
|
+
# @!attribute [rw] workflow_id
|
2926
|
+
# A unique identifier for the workflow.
|
2927
|
+
# @return [String]
|
2928
|
+
#
|
2929
|
+
# @!attribute [rw] description
|
2930
|
+
# Specifies the text description for the workflow.
|
2931
|
+
# @return [String]
|
2932
|
+
#
|
2933
|
+
# @!attribute [rw] arn
|
2934
|
+
# Specifies the unique Amazon Resource Name (ARN) for the workflow.
|
2935
|
+
# @return [String]
|
2936
|
+
#
|
2937
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListedWorkflow AWS API Documentation
|
2938
|
+
#
|
2939
|
+
class ListedWorkflow < Struct.new(
|
2940
|
+
:workflow_id,
|
2941
|
+
:description,
|
2942
|
+
:arn)
|
2943
|
+
SENSITIVE = []
|
2944
|
+
include Aws::Structure
|
2945
|
+
end
|
2946
|
+
|
2947
|
+
# Consists of the logging role and the log group name.
|
2948
|
+
#
|
2949
|
+
# @!attribute [rw] logging_role
|
2950
|
+
# Specifies the Amazon Resource Name (ARN) of the Amazon Web Services
|
2951
|
+
# Identity and Access Management (IAM) role that allows a server to
|
2952
|
+
# turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFS
|
2953
|
+
# events. When set, user activity can be viewed in your CloudWatch
|
2954
|
+
# logs.
|
2955
|
+
# @return [String]
|
2956
|
+
#
|
2957
|
+
# @!attribute [rw] log_group_name
|
2958
|
+
# The name of the CloudWatch logging group for the Amazon Web Services
|
2959
|
+
# Transfer server to which this workflow belongs.
|
2960
|
+
# @return [String]
|
2961
|
+
#
|
2962
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/LoggingConfiguration AWS API Documentation
|
2963
|
+
#
|
2964
|
+
class LoggingConfiguration < Struct.new(
|
2965
|
+
:logging_role,
|
2966
|
+
:log_group_name)
|
2967
|
+
SENSITIVE = []
|
2968
|
+
include Aws::Structure
|
2969
|
+
end
|
2970
|
+
|
2131
2971
|
# The full POSIX identity, including user ID (`Uid`), group ID (`Gid`),
|
2132
2972
|
# and any secondary groups IDs (`SecondaryGids`), that controls your
|
2133
2973
|
# users' access to your Amazon EFS file systems. The POSIX permissions
|
@@ -2189,6 +3029,18 @@ module Aws::Transfer
|
|
2189
3029
|
#
|
2190
3030
|
# Replace ` 0.0.0.0 ` in the example above with the actual IP address
|
2191
3031
|
# you want to use.
|
3032
|
+
#
|
3033
|
+
# <note markdown="1"> If you change the `PassiveIp` value, you must stop and then restart
|
3034
|
+
# your Transfer server for the change to take effect. For details on
|
3035
|
+
# using Passive IP (PASV) in a NAT environment, see [Configuring your
|
3036
|
+
# FTPS server behind a firewall or NAT with Amazon Web Services
|
3037
|
+
# Transfer Family][1].
|
3038
|
+
#
|
3039
|
+
# </note>
|
3040
|
+
#
|
3041
|
+
#
|
3042
|
+
#
|
3043
|
+
# [1]: http://aws.amazon.com/blogs/storage/configuring-your-ftps-server-behind-a-firewall-or-nat-with-aws-transfer-family/
|
2192
3044
|
# @return [String]
|
2193
3045
|
#
|
2194
3046
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ProtocolDetails AWS API Documentation
|
@@ -2242,6 +3094,167 @@ module Aws::Transfer
|
|
2242
3094
|
include Aws::Structure
|
2243
3095
|
end
|
2244
3096
|
|
3097
|
+
# Specifies the details for the file location for the file being used in
|
3098
|
+
# the workflow. Only applicable if you are using S3 storage.
|
3099
|
+
#
|
3100
|
+
# @!attribute [rw] bucket
|
3101
|
+
# Specifies the S3 bucket that contains the file being used.
|
3102
|
+
# @return [String]
|
3103
|
+
#
|
3104
|
+
# @!attribute [rw] key
|
3105
|
+
# The name assigned to the file when it was created in S3. You use the
|
3106
|
+
# object key to retrieve the object.
|
3107
|
+
# @return [String]
|
3108
|
+
#
|
3109
|
+
# @!attribute [rw] version_id
|
3110
|
+
# Specifies the file version.
|
3111
|
+
# @return [String]
|
3112
|
+
#
|
3113
|
+
# @!attribute [rw] etag
|
3114
|
+
# The entity tag is a hash of the object. The ETag reflects changes
|
3115
|
+
# only to the contents of an object, not its metadata.
|
3116
|
+
# @return [String]
|
3117
|
+
#
|
3118
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/S3FileLocation AWS API Documentation
|
3119
|
+
#
|
3120
|
+
class S3FileLocation < Struct.new(
|
3121
|
+
:bucket,
|
3122
|
+
:key,
|
3123
|
+
:version_id,
|
3124
|
+
:etag)
|
3125
|
+
SENSITIVE = []
|
3126
|
+
include Aws::Structure
|
3127
|
+
end
|
3128
|
+
|
3129
|
+
# Specifies the customer input S3 file location. If it is used inside
|
3130
|
+
# `copyStepDetails.DestinationFileLocation`, it should be the S3 copy
|
3131
|
+
# destination.
|
3132
|
+
#
|
3133
|
+
# You need to provide the bucket and key. The key can represent either a
|
3134
|
+
# path or a file. This is determined by whether or not you end the key
|
3135
|
+
# value with the forward slash (/) character. If the final character is
|
3136
|
+
# "/", then your file is copied to the folder, and its name does not
|
3137
|
+
# change. If, rather, the final character is alphanumeric, your uploaded
|
3138
|
+
# file is renamed to the path value. In this case, if a file with that
|
3139
|
+
# name already exists, it is overwritten.
|
3140
|
+
#
|
3141
|
+
# For example, if your path is `shared-files/bob/`, your uploaded files
|
3142
|
+
# are copied to the `shared-files/bob/`, folder. If your path is
|
3143
|
+
# `shared-files/today`, each uploaded file is copied to the
|
3144
|
+
# `shared-files` folder and named `today`\: each upload overwrites the
|
3145
|
+
# previous version of the *bob* file.
|
3146
|
+
#
|
3147
|
+
# @note When making an API call, you may pass S3InputFileLocation
|
3148
|
+
# data as a hash:
|
3149
|
+
#
|
3150
|
+
# {
|
3151
|
+
# bucket: "S3Bucket",
|
3152
|
+
# key: "S3Key",
|
3153
|
+
# }
|
3154
|
+
#
|
3155
|
+
# @!attribute [rw] bucket
|
3156
|
+
# Specifies the S3 bucket for the customer input file.
|
3157
|
+
# @return [String]
|
3158
|
+
#
|
3159
|
+
# @!attribute [rw] key
|
3160
|
+
# The name assigned to the file when it was created in S3. You use the
|
3161
|
+
# object key to retrieve the object.
|
3162
|
+
# @return [String]
|
3163
|
+
#
|
3164
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/S3InputFileLocation AWS API Documentation
|
3165
|
+
#
|
3166
|
+
class S3InputFileLocation < Struct.new(
|
3167
|
+
:bucket,
|
3168
|
+
:key)
|
3169
|
+
SENSITIVE = []
|
3170
|
+
include Aws::Structure
|
3171
|
+
end
|
3172
|
+
|
3173
|
+
# Specifies the key-value pair that are assigned to a file during the
|
3174
|
+
# execution of a Tagging step.
|
3175
|
+
#
|
3176
|
+
# @note When making an API call, you may pass S3Tag
|
3177
|
+
# data as a hash:
|
3178
|
+
#
|
3179
|
+
# {
|
3180
|
+
# key: "S3TagKey", # required
|
3181
|
+
# value: "S3TagValue", # required
|
3182
|
+
# }
|
3183
|
+
#
|
3184
|
+
# @!attribute [rw] key
|
3185
|
+
# The name assigned to the tag that you create.
|
3186
|
+
# @return [String]
|
3187
|
+
#
|
3188
|
+
# @!attribute [rw] value
|
3189
|
+
# The value that corresponds to the key.
|
3190
|
+
# @return [String]
|
3191
|
+
#
|
3192
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/S3Tag AWS API Documentation
|
3193
|
+
#
|
3194
|
+
class S3Tag < Struct.new(
|
3195
|
+
:key,
|
3196
|
+
:value)
|
3197
|
+
SENSITIVE = []
|
3198
|
+
include Aws::Structure
|
3199
|
+
end
|
3200
|
+
|
3201
|
+
# @note When making an API call, you may pass SendWorkflowStepStateRequest
|
3202
|
+
# data as a hash:
|
3203
|
+
#
|
3204
|
+
# {
|
3205
|
+
# workflow_id: "WorkflowId", # required
|
3206
|
+
# execution_id: "ExecutionId", # required
|
3207
|
+
# token: "CallbackToken", # required
|
3208
|
+
# status: "SUCCESS", # required, accepts SUCCESS, FAILURE
|
3209
|
+
# }
|
3210
|
+
#
|
3211
|
+
# @!attribute [rw] workflow_id
|
3212
|
+
# A unique identifier for the workflow.
|
3213
|
+
# @return [String]
|
3214
|
+
#
|
3215
|
+
# @!attribute [rw] execution_id
|
3216
|
+
# A unique identifier for the execution of a workflow.
|
3217
|
+
# @return [String]
|
3218
|
+
#
|
3219
|
+
# @!attribute [rw] token
|
3220
|
+
# Used to distinguish between multiple callbacks for multiple Lambda
|
3221
|
+
# steps within the same execution.
|
3222
|
+
# @return [String]
|
3223
|
+
#
|
3224
|
+
# @!attribute [rw] status
|
3225
|
+
# Indicates whether the specified step succeeded or failed.
|
3226
|
+
# @return [String]
|
3227
|
+
#
|
3228
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/SendWorkflowStepStateRequest AWS API Documentation
|
3229
|
+
#
|
3230
|
+
class SendWorkflowStepStateRequest < Struct.new(
|
3231
|
+
:workflow_id,
|
3232
|
+
:execution_id,
|
3233
|
+
:token,
|
3234
|
+
:status)
|
3235
|
+
SENSITIVE = []
|
3236
|
+
include Aws::Structure
|
3237
|
+
end
|
3238
|
+
|
3239
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/SendWorkflowStepStateResponse AWS API Documentation
|
3240
|
+
#
|
3241
|
+
class SendWorkflowStepStateResponse < Aws::EmptyStructure; end
|
3242
|
+
|
3243
|
+
# A container object for the session details associated with a workflow.
|
3244
|
+
#
|
3245
|
+
# @!attribute [rw] user_details
|
3246
|
+
# The Server ID (`ServerId`), Session ID (`SessionId`) and user
|
3247
|
+
# (`UserName`) make up the `UserDetails`.
|
3248
|
+
# @return [Types::UserDetails]
|
3249
|
+
#
|
3250
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ServiceMetadata AWS API Documentation
|
3251
|
+
#
|
3252
|
+
class ServiceMetadata < Struct.new(
|
3253
|
+
:user_details)
|
3254
|
+
SENSITIVE = []
|
3255
|
+
include Aws::Structure
|
3256
|
+
end
|
3257
|
+
|
2245
3258
|
# The request has failed because the Amazon Web ServicesTransfer Family
|
2246
3259
|
# service is not available.
|
2247
3260
|
#
|
@@ -2392,6 +3405,41 @@ module Aws::Transfer
|
|
2392
3405
|
include Aws::Structure
|
2393
3406
|
end
|
2394
3407
|
|
3408
|
+
# Each step type has its own `StepDetails` structure.
|
3409
|
+
#
|
3410
|
+
# The key/value pairs used to tag a file during the execution of a
|
3411
|
+
# workflow step.
|
3412
|
+
#
|
3413
|
+
# @note When making an API call, you may pass TagStepDetails
|
3414
|
+
# data as a hash:
|
3415
|
+
#
|
3416
|
+
# {
|
3417
|
+
# name: "WorkflowStepName",
|
3418
|
+
# tags: [
|
3419
|
+
# {
|
3420
|
+
# key: "S3TagKey", # required
|
3421
|
+
# value: "S3TagValue", # required
|
3422
|
+
# },
|
3423
|
+
# ],
|
3424
|
+
# }
|
3425
|
+
#
|
3426
|
+
# @!attribute [rw] name
|
3427
|
+
# The name of the step, used as an identifier.
|
3428
|
+
# @return [String]
|
3429
|
+
#
|
3430
|
+
# @!attribute [rw] tags
|
3431
|
+
# Array that contains from 1 to 10 key/value pairs.
|
3432
|
+
# @return [Array<Types::S3Tag>]
|
3433
|
+
#
|
3434
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/TagStepDetails AWS API Documentation
|
3435
|
+
#
|
3436
|
+
class TagStepDetails < Struct.new(
|
3437
|
+
:name,
|
3438
|
+
:tags)
|
3439
|
+
SENSITIVE = []
|
3440
|
+
include Aws::Structure
|
3441
|
+
end
|
3442
|
+
|
2395
3443
|
# @note When making an API call, you may pass TestIdentityProviderRequest
|
2396
3444
|
# data as a hash:
|
2397
3445
|
#
|
@@ -2550,7 +3598,7 @@ module Aws::Transfer
|
|
2550
3598
|
# directory to be when they log into the server. If you set it to
|
2551
3599
|
# `PATH`, the user will see the absolute Amazon S3 bucket or EFS paths
|
2552
3600
|
# as is in their file transfer protocol clients. If you set it
|
2553
|
-
# `LOGICAL`, you
|
3601
|
+
# `LOGICAL`, you need to provide mappings in the
|
2554
3602
|
# `HomeDirectoryMappings` for how you want to make Amazon S3 or EFS
|
2555
3603
|
# paths visible to your users.
|
2556
3604
|
# @return [String]
|
@@ -2568,11 +3616,11 @@ module Aws::Transfer
|
|
2568
3616
|
#
|
2569
3617
|
# The following is an `Entry` and `Target` pair example.
|
2570
3618
|
#
|
2571
|
-
# `[ \{ "Entry": "
|
2572
|
-
# "/
|
3619
|
+
# `[ \{ "Entry": "/directory1", "Target":
|
3620
|
+
# "/bucket_name/home/mydirectory" \} ]`
|
2573
3621
|
#
|
2574
|
-
# In most cases, you can use this value instead of the
|
2575
|
-
#
|
3622
|
+
# In most cases, you can use this value instead of the session policy
|
3623
|
+
# to lock down your user to the designated home directory
|
2576
3624
|
# ("`chroot`"). To do this, you can set `Entry` to `/` and set
|
2577
3625
|
# `Target` to the `HomeDirectory` parameter value.
|
2578
3626
|
#
|
@@ -2593,22 +3641,21 @@ module Aws::Transfer
|
|
2593
3641
|
# @return [Array<Types::HomeDirectoryMapEntry>]
|
2594
3642
|
#
|
2595
3643
|
# @!attribute [rw] policy
|
2596
|
-
# A
|
2597
|
-
#
|
3644
|
+
# A session policy for your user so that you can use the same IAM role
|
3645
|
+
# across multiple users. This policy scopes down user access to
|
2598
3646
|
# portions of their Amazon S3 bucket. Variables that you can use
|
2599
3647
|
# inside this policy include `$\{Transfer:UserName\}`,
|
2600
3648
|
# `$\{Transfer:HomeDirectory\}`, and `$\{Transfer:HomeBucket\}`.
|
2601
3649
|
#
|
2602
|
-
# <note markdown="1"> This only applies when domain of `ServerId` is S3.
|
2603
|
-
#
|
3650
|
+
# <note markdown="1"> This only applies when the domain of `ServerId` is S3. EFS does not
|
3651
|
+
# use session policies.
|
2604
3652
|
#
|
2605
|
-
# For
|
2606
|
-
#
|
2607
|
-
#
|
3653
|
+
# For session policies, Amazon Web Services Transfer Family stores the
|
3654
|
+
# policy as a JSON blob, instead of the Amazon Resource Name (ARN) of
|
3655
|
+
# the policy. You save the policy as a JSON blob and pass it in the
|
2608
3656
|
# `Policy` argument.
|
2609
3657
|
#
|
2610
|
-
# For an example of a
|
2611
|
-
# policy][1].
|
3658
|
+
# For an example of a session policy, see [Example session policy][1].
|
2612
3659
|
#
|
2613
3660
|
# For more information, see [AssumeRole][2] in the *Amazon Web
|
2614
3661
|
# ServicesSecurity Token Service API Reference*.
|
@@ -2617,7 +3664,7 @@ module Aws::Transfer
|
|
2617
3664
|
#
|
2618
3665
|
#
|
2619
3666
|
#
|
2620
|
-
# [1]: https://docs.aws.amazon.com/transfer/latest/userguide/
|
3667
|
+
# [1]: https://docs.aws.amazon.com/transfer/latest/userguide/session-policy.html
|
2621
3668
|
# [2]: https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html
|
2622
3669
|
# @return [String]
|
2623
3670
|
#
|
@@ -2726,6 +3773,14 @@ module Aws::Transfer
|
|
2726
3773
|
# protocols: ["SFTP"], # accepts SFTP, FTP, FTPS
|
2727
3774
|
# security_policy_name: "SecurityPolicyName",
|
2728
3775
|
# server_id: "ServerId", # required
|
3776
|
+
# workflow_details: {
|
3777
|
+
# on_upload: [ # required
|
3778
|
+
# {
|
3779
|
+
# workflow_id: "WorkflowId", # required
|
3780
|
+
# execution_role: "Role", # required
|
3781
|
+
# },
|
3782
|
+
# ],
|
3783
|
+
# },
|
2729
3784
|
# }
|
2730
3785
|
#
|
2731
3786
|
# @!attribute [rw] certificate
|
@@ -2885,6 +3940,11 @@ module Aws::Transfer
|
|
2885
3940
|
# user account is assigned to.
|
2886
3941
|
# @return [String]
|
2887
3942
|
#
|
3943
|
+
# @!attribute [rw] workflow_details
|
3944
|
+
# Specifies the workflow ID for the workflow to assign and the
|
3945
|
+
# execution role used for executing the workflow.
|
3946
|
+
# @return [Types::WorkflowDetails]
|
3947
|
+
#
|
2888
3948
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateServerRequest AWS API Documentation
|
2889
3949
|
#
|
2890
3950
|
class UpdateServerRequest < Struct.new(
|
@@ -2897,7 +3957,8 @@ module Aws::Transfer
|
|
2897
3957
|
:logging_role,
|
2898
3958
|
:protocols,
|
2899
3959
|
:security_policy_name,
|
2900
|
-
:server_id
|
3960
|
+
:server_id,
|
3961
|
+
:workflow_details)
|
2901
3962
|
SENSITIVE = [:host_key]
|
2902
3963
|
include Aws::Structure
|
2903
3964
|
end
|
@@ -2950,7 +4011,7 @@ module Aws::Transfer
|
|
2950
4011
|
# directory to be when they log into the server. If you set it to
|
2951
4012
|
# `PATH`, the user will see the absolute Amazon S3 bucket or EFS paths
|
2952
4013
|
# as is in their file transfer protocol clients. If you set it
|
2953
|
-
# `LOGICAL`, you
|
4014
|
+
# `LOGICAL`, you need to provide mappings in the
|
2954
4015
|
# `HomeDirectoryMappings` for how you want to make Amazon S3 or EFS
|
2955
4016
|
# paths visible to your users.
|
2956
4017
|
# @return [String]
|
@@ -2968,11 +4029,11 @@ module Aws::Transfer
|
|
2968
4029
|
#
|
2969
4030
|
# The following is an `Entry` and `Target` pair example.
|
2970
4031
|
#
|
2971
|
-
# `[ \{ "Entry": "
|
2972
|
-
# "/
|
4032
|
+
# `[ \{ "Entry": "/directory1", "Target":
|
4033
|
+
# "/bucket_name/home/mydirectory" \} ]`
|
2973
4034
|
#
|
2974
|
-
# In most cases, you can use this value instead of the
|
2975
|
-
#
|
4035
|
+
# In most cases, you can use this value instead of the session policy
|
4036
|
+
# to lock down your user to the designated home directory
|
2976
4037
|
# ("`chroot`"). To do this, you can set `Entry` to '/' and set
|
2977
4038
|
# `Target` to the HomeDirectory parameter value.
|
2978
4039
|
#
|
@@ -2993,21 +4054,21 @@ module Aws::Transfer
|
|
2993
4054
|
# @return [Array<Types::HomeDirectoryMapEntry>]
|
2994
4055
|
#
|
2995
4056
|
# @!attribute [rw] policy
|
2996
|
-
# A
|
2997
|
-
#
|
4057
|
+
# A session policy for your user so that you can use the same IAM role
|
4058
|
+
# across multiple users. This policy scopes down user access to
|
2998
4059
|
# portions of their Amazon S3 bucket. Variables that you can use
|
2999
4060
|
# inside this policy include `$\{Transfer:UserName\}`,
|
3000
4061
|
# `$\{Transfer:HomeDirectory\}`, and `$\{Transfer:HomeBucket\}`.
|
3001
4062
|
#
|
3002
|
-
# <note markdown="1"> This only applies when domain of `ServerId` is S3.
|
3003
|
-
#
|
4063
|
+
# <note markdown="1"> This only applies when the domain of `ServerId` is S3. EFS does not
|
4064
|
+
# use session policies.
|
3004
4065
|
#
|
3005
|
-
# For
|
3006
|
-
#
|
3007
|
-
#
|
4066
|
+
# For session policies, Amazon Web Services Transfer Family stores the
|
4067
|
+
# policy as a JSON blob, instead of the Amazon Resource Name (ARN) of
|
4068
|
+
# the policy. You save the policy as a JSON blob and pass it in the
|
3008
4069
|
# `Policy` argument.
|
3009
4070
|
#
|
3010
|
-
# For an example of a
|
4071
|
+
# For an example of a session policy, see [Creating a session
|
3011
4072
|
# policy][1].
|
3012
4073
|
#
|
3013
4074
|
# For more information, see [AssumeRole][2] in the *Amazon Web
|
@@ -3017,7 +4078,7 @@ module Aws::Transfer
|
|
3017
4078
|
#
|
3018
4079
|
#
|
3019
4080
|
#
|
3020
|
-
# [1]: https://docs.aws.amazon.com/transfer/latest/userguide/
|
4081
|
+
# [1]: https://docs.aws.amazon.com/transfer/latest/userguide/session-policy
|
3021
4082
|
# [2]: https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html
|
3022
4083
|
# @return [String]
|
3023
4084
|
#
|
@@ -3093,5 +4154,184 @@ module Aws::Transfer
|
|
3093
4154
|
include Aws::Structure
|
3094
4155
|
end
|
3095
4156
|
|
4157
|
+
# Specifies the user name, server ID, and session ID for a workflow.
|
4158
|
+
#
|
4159
|
+
# @!attribute [rw] user_name
|
4160
|
+
# A unique string that identifies a user account associated with a
|
4161
|
+
# server.
|
4162
|
+
# @return [String]
|
4163
|
+
#
|
4164
|
+
# @!attribute [rw] server_id
|
4165
|
+
# The system-assigned unique identifier for a Transfer server
|
4166
|
+
# instance.
|
4167
|
+
# @return [String]
|
4168
|
+
#
|
4169
|
+
# @!attribute [rw] session_id
|
4170
|
+
# The system-assigned unique identifier for a session that corresponds
|
4171
|
+
# to the workflow.
|
4172
|
+
# @return [String]
|
4173
|
+
#
|
4174
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UserDetails AWS API Documentation
|
4175
|
+
#
|
4176
|
+
class UserDetails < Struct.new(
|
4177
|
+
:user_name,
|
4178
|
+
:server_id,
|
4179
|
+
:session_id)
|
4180
|
+
SENSITIVE = []
|
4181
|
+
include Aws::Structure
|
4182
|
+
end
|
4183
|
+
|
4184
|
+
# Specifies the workflow ID for the workflow to assign and the execution
|
4185
|
+
# role used for executing the workflow.
|
4186
|
+
#
|
4187
|
+
# @note When making an API call, you may pass WorkflowDetail
|
4188
|
+
# data as a hash:
|
4189
|
+
#
|
4190
|
+
# {
|
4191
|
+
# workflow_id: "WorkflowId", # required
|
4192
|
+
# execution_role: "Role", # required
|
4193
|
+
# }
|
4194
|
+
#
|
4195
|
+
# @!attribute [rw] workflow_id
|
4196
|
+
# A unique identifier for the workflow.
|
4197
|
+
# @return [String]
|
4198
|
+
#
|
4199
|
+
# @!attribute [rw] execution_role
|
4200
|
+
# Includes the necessary permissions for S3, EFS, and Lambda
|
4201
|
+
# operations that Transfer can assume, so that all workflow steps can
|
4202
|
+
# operate on the required resources
|
4203
|
+
# @return [String]
|
4204
|
+
#
|
4205
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/WorkflowDetail AWS API Documentation
|
4206
|
+
#
|
4207
|
+
class WorkflowDetail < Struct.new(
|
4208
|
+
:workflow_id,
|
4209
|
+
:execution_role)
|
4210
|
+
SENSITIVE = []
|
4211
|
+
include Aws::Structure
|
4212
|
+
end
|
4213
|
+
|
4214
|
+
# Container for the `WorkflowDetail` data type. It is used by actions
|
4215
|
+
# that trigger a workflow to begin execution.
|
4216
|
+
#
|
4217
|
+
# @note When making an API call, you may pass WorkflowDetails
|
4218
|
+
# data as a hash:
|
4219
|
+
#
|
4220
|
+
# {
|
4221
|
+
# on_upload: [ # required
|
4222
|
+
# {
|
4223
|
+
# workflow_id: "WorkflowId", # required
|
4224
|
+
# execution_role: "Role", # required
|
4225
|
+
# },
|
4226
|
+
# ],
|
4227
|
+
# }
|
4228
|
+
#
|
4229
|
+
# @!attribute [rw] on_upload
|
4230
|
+
# A trigger that starts a workflow: the workflow begins to execute
|
4231
|
+
# after a file is uploaded.
|
4232
|
+
# @return [Array<Types::WorkflowDetail>]
|
4233
|
+
#
|
4234
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/WorkflowDetails AWS API Documentation
|
4235
|
+
#
|
4236
|
+
class WorkflowDetails < Struct.new(
|
4237
|
+
:on_upload)
|
4238
|
+
SENSITIVE = []
|
4239
|
+
include Aws::Structure
|
4240
|
+
end
|
4241
|
+
|
4242
|
+
# The basic building block of a workflow.
|
4243
|
+
#
|
4244
|
+
# @note When making an API call, you may pass WorkflowStep
|
4245
|
+
# data as a hash:
|
4246
|
+
#
|
4247
|
+
# {
|
4248
|
+
# type: "COPY", # accepts COPY, CUSTOM, TAG, DELETE
|
4249
|
+
# copy_step_details: {
|
4250
|
+
# name: "WorkflowStepName",
|
4251
|
+
# destination_file_location: {
|
4252
|
+
# s3_file_location: {
|
4253
|
+
# bucket: "S3Bucket",
|
4254
|
+
# key: "S3Key",
|
4255
|
+
# },
|
4256
|
+
# efs_file_location: {
|
4257
|
+
# file_system_id: "EfsFileSystemId",
|
4258
|
+
# path: "EfsPath",
|
4259
|
+
# },
|
4260
|
+
# },
|
4261
|
+
# overwrite_existing: "TRUE", # accepts TRUE, FALSE
|
4262
|
+
# },
|
4263
|
+
# custom_step_details: {
|
4264
|
+
# name: "WorkflowStepName",
|
4265
|
+
# target: "CustomStepTarget",
|
4266
|
+
# timeout_seconds: 1,
|
4267
|
+
# },
|
4268
|
+
# delete_step_details: {
|
4269
|
+
# name: "WorkflowStepName",
|
4270
|
+
# },
|
4271
|
+
# tag_step_details: {
|
4272
|
+
# name: "WorkflowStepName",
|
4273
|
+
# tags: [
|
4274
|
+
# {
|
4275
|
+
# key: "S3TagKey", # required
|
4276
|
+
# value: "S3TagValue", # required
|
4277
|
+
# },
|
4278
|
+
# ],
|
4279
|
+
# },
|
4280
|
+
# }
|
4281
|
+
#
|
4282
|
+
# @!attribute [rw] type
|
4283
|
+
# Currently, the following step types are supported.
|
4284
|
+
#
|
4285
|
+
# * *Copy*\: copy the file to another location
|
4286
|
+
#
|
4287
|
+
# * *Custom*\: custom step with a lambda target
|
4288
|
+
#
|
4289
|
+
# * *Delete*\: delete the file
|
4290
|
+
#
|
4291
|
+
# * *Tag*\: add a tag to the file
|
4292
|
+
# @return [String]
|
4293
|
+
#
|
4294
|
+
# @!attribute [rw] copy_step_details
|
4295
|
+
# Details for a step that performs a file copy.
|
4296
|
+
#
|
4297
|
+
# Consists of the following values:
|
4298
|
+
#
|
4299
|
+
# * A description
|
4300
|
+
#
|
4301
|
+
# * An S3 location for the destination of the file copy.
|
4302
|
+
#
|
4303
|
+
# * A flag that indicates whether or not to overwrite an existing file
|
4304
|
+
# of the same name. The default is `FALSE`.
|
4305
|
+
# @return [Types::CopyStepDetails]
|
4306
|
+
#
|
4307
|
+
# @!attribute [rw] custom_step_details
|
4308
|
+
# Details for a step that invokes a lambda function.
|
4309
|
+
#
|
4310
|
+
# Consists of the lambda function name, target, and timeout (in
|
4311
|
+
# seconds).
|
4312
|
+
# @return [Types::CustomStepDetails]
|
4313
|
+
#
|
4314
|
+
# @!attribute [rw] delete_step_details
|
4315
|
+
# Details for a step that deletes the file.
|
4316
|
+
# @return [Types::DeleteStepDetails]
|
4317
|
+
#
|
4318
|
+
# @!attribute [rw] tag_step_details
|
4319
|
+
# Details for a step that creates one or more tags.
|
4320
|
+
#
|
4321
|
+
# You specify one or more tags: each tag contains a key/value pair.
|
4322
|
+
# @return [Types::TagStepDetails]
|
4323
|
+
#
|
4324
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/WorkflowStep AWS API Documentation
|
4325
|
+
#
|
4326
|
+
class WorkflowStep < Struct.new(
|
4327
|
+
:type,
|
4328
|
+
:copy_step_details,
|
4329
|
+
:custom_step_details,
|
4330
|
+
:delete_step_details,
|
4331
|
+
:tag_step_details)
|
4332
|
+
SENSITIVE = []
|
4333
|
+
include Aws::Structure
|
4334
|
+
end
|
4335
|
+
|
3096
4336
|
end
|
3097
4337
|
end
|