aws-sdk-states 1.72.0 → 1.74.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 00b08b5d202e5c0093830505b4a551cac636fa117a152a1054dc770d6c903cd9
4
- data.tar.gz: cbeb07668ca62a8913633fab31f9826830e6e4ece09d998a8f712d9bc34d386b
3
+ metadata.gz: 280bc3a3690d2f119e28faab199246d6ff9e1a53d2b2830624c350ce68ceeee1
4
+ data.tar.gz: a1e42b4aaaf0333fb5f83c85adec8f8a6048989a53c493f9b3950d1da44caa80
5
5
  SHA512:
6
- metadata.gz: a9a0c27a5c2dca0adce50d7b6faabde4ea722072c460f13ef8f4707f6c648cfc3fa51c39c9268a6e667d6be1e175d58932d3a94149d187153e88c59c9e0f14e5
7
- data.tar.gz: d672c5864b66d8c7bdbe86ebb2ae6d00d256cadfc991e5f2cb5197563bdf79491f85d12662cdc814b33f18b32bb410b1c930c1f980e3c7a747002c6456a59cb2
6
+ metadata.gz: 8f474820a604d9f323be7060e28eaeba152a2489bfb5906406e1cd01d7eb7f762df17b87224589cb9d4abf2b91b786d5f639afab812073f6c6171e292fabdac0
7
+ data.tar.gz: a2fad035f367bb5b52509180730a50c8b00c62cccfe96766cf2b83982322d98d50333f40b717f1754dbb03e70cf308c66c7702c68ef463579e6c4da14cc2b824
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.74.0 (2024-08-29)
5
+ ------------------
6
+
7
+ * Feature - This release adds support for static analysis to ValidateStateMachineDefinition API, which can now return optional WARNING diagnostics for semantic errors on the definition of an Amazon States Language (ASL) state machine.
8
+
9
+ 1.73.0 (2024-07-25)
10
+ ------------------
11
+
12
+ * Feature - This release adds support to customer managed KMS key encryption in AWS Step Functions.
13
+
4
14
  1.72.0 (2024-07-02)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.72.0
1
+ 1.74.0
@@ -495,6 +495,9 @@ module Aws::States
495
495
  # [1]: https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html
496
496
  # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_iam-tags.html
497
497
  #
498
+ # @option params [Types::EncryptionConfiguration] :encryption_configuration
499
+ # Settings to configure server-side encryption.
500
+ #
498
501
  # @return [Types::CreateActivityOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
499
502
  #
500
503
  # * {Types::CreateActivityOutput#activity_arn #activity_arn} => String
@@ -510,6 +513,11 @@ module Aws::States
510
513
  # value: "TagValue",
511
514
  # },
512
515
  # ],
516
+ # encryption_configuration: {
517
+ # kms_key_id: "KmsKeyId",
518
+ # kms_data_key_reuse_period_seconds: 1,
519
+ # type: "AWS_OWNED_KEY", # required, accepts AWS_OWNED_KEY, CUSTOMER_MANAGED_KMS_KEY
520
+ # },
513
521
  # })
514
522
  #
515
523
  # @example Response structure
@@ -536,6 +544,13 @@ module Aws::States
536
544
  # If you set the `publish` parameter of this API action to `true`, it
537
545
  # publishes version `1` as the first revision of the state machine.
538
546
  #
547
+ # For additional control over security, you can encrypt your data using
548
+ # a **customer-managed key** for Step Functions state machines. You can
549
+ # configure a symmetric KMS key and data key reuse period when creating
550
+ # or updating a **State Machine**. The execution history and state
551
+ # machine definition will be encrypted with the key applied to the State
552
+ # Machine.
553
+ #
539
554
  # <note markdown="1"> This operation is eventually consistent. The results are best effort
540
555
  # and may not reflect very recent updates and changes.
541
556
  #
@@ -544,13 +559,13 @@ module Aws::States
544
559
  # <note markdown="1"> `CreateStateMachine` is an idempotent API. Subsequent requests won’t
545
560
  # create a duplicate resource if it was already created.
546
561
  # `CreateStateMachine`'s idempotency check is based on the state
547
- # machine `name`, `definition`, `type`, `LoggingConfiguration`, and
548
- # `TracingConfiguration`. The check is also based on the `publish` and
549
- # `versionDescription` parameters. If a following request has a
550
- # different `roleArn` or `tags`, Step Functions will ignore these
551
- # differences and treat it as an idempotent request of the previous. In
552
- # this case, `roleArn` and `tags` will not be updated, even if they are
553
- # different.
562
+ # machine `name`, `definition`, `type`, `LoggingConfiguration`,
563
+ # `TracingConfiguration`, and `EncryptionConfiguration` The check is
564
+ # also based on the `publish` and `versionDescription` parameters. If a
565
+ # following request has a different `roleArn` or `tags`, Step Functions
566
+ # will ignore these differences and treat it as an idempotent request of
567
+ # the previous. In this case, `roleArn` and `tags` will not be updated,
568
+ # even if they are different.
554
569
  #
555
570
  # </note>
556
571
  #
@@ -634,6 +649,9 @@ module Aws::States
634
649
  # you set `versionDescription`, but `publish` to `false`, this API
635
650
  # action throws `ValidationException`.
636
651
  #
652
+ # @option params [Types::EncryptionConfiguration] :encryption_configuration
653
+ # Settings to configure server-side encryption.
654
+ #
637
655
  # @return [Types::CreateStateMachineOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
638
656
  #
639
657
  # * {Types::CreateStateMachineOutput#state_machine_arn #state_machine_arn} => String
@@ -669,6 +687,11 @@ module Aws::States
669
687
  # },
670
688
  # publish: false,
671
689
  # version_description: "VersionDescription",
690
+ # encryption_configuration: {
691
+ # kms_key_id: "KmsKeyId",
692
+ # kms_data_key_reuse_period_seconds: 1,
693
+ # type: "AWS_OWNED_KEY", # required, accepts AWS_OWNED_KEY, CUSTOMER_MANAGED_KMS_KEY
694
+ # },
672
695
  # })
673
696
  #
674
697
  # @example Response structure
@@ -960,6 +983,7 @@ module Aws::States
960
983
  # * {Types::DescribeActivityOutput#activity_arn #activity_arn} => String
961
984
  # * {Types::DescribeActivityOutput#name #name} => String
962
985
  # * {Types::DescribeActivityOutput#creation_date #creation_date} => Time
986
+ # * {Types::DescribeActivityOutput#encryption_configuration #encryption_configuration} => Types::EncryptionConfiguration
963
987
  #
964
988
  # @example Request syntax with placeholder values
965
989
  #
@@ -972,6 +996,9 @@ module Aws::States
972
996
  # resp.activity_arn #=> String
973
997
  # resp.name #=> String
974
998
  # resp.creation_date #=> Time
999
+ # resp.encryption_configuration.kms_key_id #=> String
1000
+ # resp.encryption_configuration.kms_data_key_reuse_period_seconds #=> Integer
1001
+ # resp.encryption_configuration.type #=> String, one of "AWS_OWNED_KEY", "CUSTOMER_MANAGED_KMS_KEY"
975
1002
  #
976
1003
  # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DescribeActivity AWS API Documentation
977
1004
  #
@@ -1008,6 +1035,13 @@ module Aws::States
1008
1035
  # @option params [required, String] :execution_arn
1009
1036
  # The Amazon Resource Name (ARN) of the execution to describe.
1010
1037
  #
1038
+ # @option params [String] :included_data
1039
+ # If your state machine definition is encrypted with a KMS key, callers
1040
+ # must have `kms:Decrypt` permission to decrypt the definition.
1041
+ # Alternatively, you can call DescribeStateMachine API with
1042
+ # `includedData = METADATA_ONLY` to get a successful response without
1043
+ # the encrypted definition.
1044
+ #
1011
1045
  # @return [Types::DescribeExecutionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1012
1046
  #
1013
1047
  # * {Types::DescribeExecutionOutput#execution_arn #execution_arn} => String
@@ -1035,6 +1069,7 @@ module Aws::States
1035
1069
  #
1036
1070
  # resp = client.describe_execution({
1037
1071
  # execution_arn: "Arn", # required
1072
+ # included_data: "ALL_DATA", # accepts ALL_DATA, METADATA_ONLY
1038
1073
  # })
1039
1074
  #
1040
1075
  # @example Response structure
@@ -1200,6 +1235,21 @@ module Aws::States
1200
1235
  # ARN and the version number separated by a colon (:). For example,
1201
1236
  # `stateMachineARN:1`.
1202
1237
  #
1238
+ # @option params [String] :included_data
1239
+ # If your state machine definition is encrypted with a KMS key, callers
1240
+ # must have `kms:Decrypt` permission to decrypt the definition.
1241
+ # Alternatively, you can call the API with `includedData =
1242
+ # METADATA_ONLY` to get a successful response without the encrypted
1243
+ # definition.
1244
+ #
1245
+ # <note markdown="1"> When calling a labelled ARN for an encrypted state machine, the
1246
+ # `includedData = METADATA_ONLY` parameter will not apply because Step
1247
+ # Functions needs to decrypt the entire state machine definition to get
1248
+ # the Distributed Map state’s definition. In this case, the API caller
1249
+ # needs to have `kms:Decrypt` permission.
1250
+ #
1251
+ # </note>
1252
+ #
1203
1253
  # @return [Types::DescribeStateMachineOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1204
1254
  #
1205
1255
  # * {Types::DescribeStateMachineOutput#state_machine_arn #state_machine_arn} => String
@@ -1214,11 +1264,13 @@ module Aws::States
1214
1264
  # * {Types::DescribeStateMachineOutput#label #label} => String
1215
1265
  # * {Types::DescribeStateMachineOutput#revision_id #revision_id} => String
1216
1266
  # * {Types::DescribeStateMachineOutput#description #description} => String
1267
+ # * {Types::DescribeStateMachineOutput#encryption_configuration #encryption_configuration} => Types::EncryptionConfiguration
1217
1268
  #
1218
1269
  # @example Request syntax with placeholder values
1219
1270
  #
1220
1271
  # resp = client.describe_state_machine({
1221
1272
  # state_machine_arn: "Arn", # required
1273
+ # included_data: "ALL_DATA", # accepts ALL_DATA, METADATA_ONLY
1222
1274
  # })
1223
1275
  #
1224
1276
  # @example Response structure
@@ -1238,6 +1290,9 @@ module Aws::States
1238
1290
  # resp.label #=> String
1239
1291
  # resp.revision_id #=> String
1240
1292
  # resp.description #=> String
1293
+ # resp.encryption_configuration.kms_key_id #=> String
1294
+ # resp.encryption_configuration.kms_data_key_reuse_period_seconds #=> Integer
1295
+ # resp.encryption_configuration.type #=> String, one of "AWS_OWNED_KEY", "CUSTOMER_MANAGED_KMS_KEY"
1241
1296
  #
1242
1297
  # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DescribeStateMachine AWS API Documentation
1243
1298
  #
@@ -1319,6 +1374,13 @@ module Aws::States
1319
1374
  # The Amazon Resource Name (ARN) of the execution you want state machine
1320
1375
  # information for.
1321
1376
  #
1377
+ # @option params [String] :included_data
1378
+ # If your state machine definition is encrypted with a KMS key, callers
1379
+ # must have `kms:Decrypt` permission to decrypt the definition.
1380
+ # Alternatively, you can call the API with `includedData =
1381
+ # METADATA_ONLY` to get a successful response without the encrypted
1382
+ # definition.
1383
+ #
1322
1384
  # @return [Types::DescribeStateMachineForExecutionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1323
1385
  #
1324
1386
  # * {Types::DescribeStateMachineForExecutionOutput#state_machine_arn #state_machine_arn} => String
@@ -1331,11 +1393,13 @@ module Aws::States
1331
1393
  # * {Types::DescribeStateMachineForExecutionOutput#map_run_arn #map_run_arn} => String
1332
1394
  # * {Types::DescribeStateMachineForExecutionOutput#label #label} => String
1333
1395
  # * {Types::DescribeStateMachineForExecutionOutput#revision_id #revision_id} => String
1396
+ # * {Types::DescribeStateMachineForExecutionOutput#encryption_configuration #encryption_configuration} => Types::EncryptionConfiguration
1334
1397
  #
1335
1398
  # @example Request syntax with placeholder values
1336
1399
  #
1337
1400
  # resp = client.describe_state_machine_for_execution({
1338
1401
  # execution_arn: "Arn", # required
1402
+ # included_data: "ALL_DATA", # accepts ALL_DATA, METADATA_ONLY
1339
1403
  # })
1340
1404
  #
1341
1405
  # @example Response structure
@@ -1353,6 +1417,9 @@ module Aws::States
1353
1417
  # resp.map_run_arn #=> String
1354
1418
  # resp.label #=> String
1355
1419
  # resp.revision_id #=> String
1420
+ # resp.encryption_configuration.kms_key_id #=> String
1421
+ # resp.encryption_configuration.kms_data_key_reuse_period_seconds #=> Integer
1422
+ # resp.encryption_configuration.type #=> String, one of "AWS_OWNED_KEY", "CUSTOMER_MANAGED_KMS_KEY"
1356
1423
  #
1357
1424
  # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DescribeStateMachineForExecution AWS API Documentation
1358
1425
  #
@@ -2279,6 +2346,13 @@ module Aws::States
2279
2346
  # and optionally Task states using the [job run][2] pattern to report
2280
2347
  # that the task identified by the `taskToken` failed.
2281
2348
  #
2349
+ # For an execution with encryption enabled, Step Functions will encrypt
2350
+ # the error and cause fields using the KMS key for the execution role.
2351
+ #
2352
+ # A caller can mark a task as fail without using any KMS permissions in
2353
+ # the execution role if the caller provides a null value for both
2354
+ # `error` and `cause` fields because no data needs to be encrypted.
2355
+ #
2282
2356
  #
2283
2357
  #
2284
2358
  # [1]: https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token
@@ -2621,6 +2695,13 @@ module Aws::States
2621
2695
  # Passes the X-Ray trace header. The trace header can also be passed in
2622
2696
  # the request payload.
2623
2697
  #
2698
+ # @option params [String] :included_data
2699
+ # If your state machine definition is encrypted with a KMS key, callers
2700
+ # must have `kms:Decrypt` permission to decrypt the definition.
2701
+ # Alternatively, you can call the API with `includedData =
2702
+ # METADATA_ONLY` to get a successful response without the encrypted
2703
+ # definition.
2704
+ #
2624
2705
  # @return [Types::StartSyncExecutionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2625
2706
  #
2626
2707
  # * {Types::StartSyncExecutionOutput#execution_arn #execution_arn} => String
@@ -2645,6 +2726,7 @@ module Aws::States
2645
2726
  # name: "Name",
2646
2727
  # input: "SensitiveData",
2647
2728
  # trace_header: "TraceHeader",
2729
+ # included_data: "ALL_DATA", # accepts ALL_DATA, METADATA_ONLY
2648
2730
  # })
2649
2731
  #
2650
2732
  # @example Response structure
@@ -2678,6 +2760,13 @@ module Aws::States
2678
2760
  #
2679
2761
  # This API action is not supported by `EXPRESS` state machines.
2680
2762
  #
2763
+ # For an execution with encryption enabled, Step Functions will encrypt
2764
+ # the error and cause fields using the KMS key for the execution role.
2765
+ #
2766
+ # A caller can stop an execution without using any KMS permissions in
2767
+ # the execution role if the caller provides a null value for both
2768
+ # `error` and `cause` fields because no data needs to be encrypted.
2769
+ #
2681
2770
  # @option params [required, String] :execution_arn
2682
2771
  # The Amazon Resource Name (ARN) of the execution to stop.
2683
2772
  #
@@ -2981,10 +3070,10 @@ module Aws::States
2981
3070
  end
2982
3071
 
2983
3072
  # Updates an existing state machine by modifying its `definition`,
2984
- # `roleArn`, or `loggingConfiguration`. Running executions will continue
2985
- # to use the previous `definition` and `roleArn`. You must include at
2986
- # least one of `definition` or `roleArn` or you will receive a
2987
- # `MissingRequiredParameter` error.
3073
+ # `roleArn`, `loggingConfiguration`, or `EncryptionConfiguration`.
3074
+ # Running executions will continue to use the previous `definition` and
3075
+ # `roleArn`. You must include at least one of `definition` or `roleArn`
3076
+ # or you will receive a `MissingRequiredParameter` error.
2988
3077
  #
2989
3078
  # A qualified state machine ARN refers to a *Distributed Map state*
2990
3079
  # defined within a state machine. For example, the qualified state
@@ -3079,6 +3168,9 @@ module Aws::States
3079
3168
  # You can only specify the `versionDescription` parameter if you've set
3080
3169
  # `publish` to `true`.
3081
3170
  #
3171
+ # @option params [Types::EncryptionConfiguration] :encryption_configuration
3172
+ # Settings to configure server-side encryption.
3173
+ #
3082
3174
  # @return [Types::UpdateStateMachineOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3083
3175
  #
3084
3176
  # * {Types::UpdateStateMachineOutput#update_date #update_date} => Time
@@ -3107,6 +3199,11 @@ module Aws::States
3107
3199
  # },
3108
3200
  # publish: false,
3109
3201
  # version_description: "VersionDescription",
3202
+ # encryption_configuration: {
3203
+ # kms_key_id: "KmsKeyId",
3204
+ # kms_data_key_reuse_period_seconds: 1,
3205
+ # type: "AWS_OWNED_KEY", # required, accepts AWS_OWNED_KEY, CUSTOMER_MANAGED_KMS_KEY
3206
+ # },
3110
3207
  # })
3111
3208
  #
3112
3209
  # @example Response structure
@@ -3241,26 +3338,44 @@ module Aws::States
3241
3338
  # The target type of state machine for this definition. The default is
3242
3339
  # `STANDARD`.
3243
3340
  #
3341
+ # @option params [String] :severity
3342
+ # Minimum level of diagnostics to return. `ERROR` returns only `ERROR`
3343
+ # diagnostics, whereas `WARNING` returns both `WARNING` and `ERROR`
3344
+ # diagnostics. The default is `ERROR`.
3345
+ #
3346
+ # @option params [Integer] :max_results
3347
+ # The maximum number of diagnostics that are returned per call. The
3348
+ # default and maximum value is 100. Setting the value to 0 will also use
3349
+ # the default of 100.
3350
+ #
3351
+ # If the number of diagnostics returned in the response exceeds
3352
+ # `maxResults`, the value of the `truncated` field in the response will
3353
+ # be set to `true`.
3354
+ #
3244
3355
  # @return [Types::ValidateStateMachineDefinitionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3245
3356
  #
3246
3357
  # * {Types::ValidateStateMachineDefinitionOutput#result #result} => String
3247
3358
  # * {Types::ValidateStateMachineDefinitionOutput#diagnostics #diagnostics} => Array&lt;Types::ValidateStateMachineDefinitionDiagnostic&gt;
3359
+ # * {Types::ValidateStateMachineDefinitionOutput#truncated #truncated} => Boolean
3248
3360
  #
3249
3361
  # @example Request syntax with placeholder values
3250
3362
  #
3251
3363
  # resp = client.validate_state_machine_definition({
3252
3364
  # definition: "Definition", # required
3253
3365
  # type: "STANDARD", # accepts STANDARD, EXPRESS
3366
+ # severity: "ERROR", # accepts ERROR, WARNING
3367
+ # max_results: 1,
3254
3368
  # })
3255
3369
  #
3256
3370
  # @example Response structure
3257
3371
  #
3258
3372
  # resp.result #=> String, one of "OK", "FAIL"
3259
3373
  # resp.diagnostics #=> Array
3260
- # resp.diagnostics[0].severity #=> String, one of "ERROR"
3374
+ # resp.diagnostics[0].severity #=> String, one of "ERROR", "WARNING"
3261
3375
  # resp.diagnostics[0].code #=> String
3262
3376
  # resp.diagnostics[0].message #=> String
3263
3377
  # resp.diagnostics[0].location #=> String
3378
+ # resp.truncated #=> Boolean
3264
3379
  #
3265
3380
  # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/ValidateStateMachineDefinition AWS API Documentation
3266
3381
  #
@@ -3284,7 +3399,7 @@ module Aws::States
3284
3399
  params: params,
3285
3400
  config: config)
3286
3401
  context[:gem_name] = 'aws-sdk-states'
3287
- context[:gem_version] = '1.72.0'
3402
+ context[:gem_version] = '1.74.0'
3288
3403
  Seahorse::Client::Request.new(handlers, context)
3289
3404
  end
3290
3405