aws-sdk-controltower 1.8.0 → 1.10.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: 7d7d409ea2e7b64862d7f28160adff3b3855743831cc68eed0d76d18e00c1fa0
4
- data.tar.gz: a4d0363a5ec3384ca55d1ac0f972e569eba4a8b0a84d08ffd2c0318ffc907c25
3
+ metadata.gz: f3ff7ad859e489b9dffbd38c5d388554a5d65bf59a751ce09643749b9c34e7c4
4
+ data.tar.gz: 8c31d7bd765e7dbfda8f9f23d683574666ec77b1a88737bdbf0d3615c71caeef
5
5
  SHA512:
6
- metadata.gz: eee1181b1b7cba516be10893b013bc2f8f3212360ce971edd797c99fac03435c79d6eac582df075fe052cc57f74e4fe4490a44d3e46f0b9599edaeb2ebd861ce
7
- data.tar.gz: 13d066f67f74d7edd88a6157e69dc9ba626be4cb2ef96e8117c2774f3af6766b9f8955c9c01f1a50e33c360c827db26f51b33ff54a2b6dbd4852350b8cadc1e2
6
+ metadata.gz: 99704ae145ebfdcd7c2f0a228bcb167408ec14fb2afe5d15a1bfbc20f47bdfbbab126cbc7d38a4c414a6a570d3bede517f487d1eb8c77783af758a9657daa3b9
7
+ data.tar.gz: 84327384ce31b64c44753b7ed6ae57d0685166a23d25fba1ceed57221c48baa5251cd9c6b9b89484378f740219931db47d5817614142bcf481e239d54be34749
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.10.0 (2023-10-12)
5
+ ------------------
6
+
7
+ * Feature - Added new EnabledControl resource details to ListEnabledControls API and added new GetEnabledControl API.
8
+
9
+ 1.9.0 (2023-09-27)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
4
14
  1.8.0 (2023-09-19)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.8.0
1
+ 1.10.0
@@ -391,15 +391,30 @@ module Aws::ControlTower
391
391
  # This API call turns off a control. It starts an asynchronous operation
392
392
  # that deletes AWS resources on the specified organizational unit and
393
393
  # the accounts it contains. The resources will vary according to the
394
- # control that you specify.
394
+ # control that you specify. For usage examples, see [ *the AWS Control
395
+ # Tower User Guide* ][1].
396
+ #
397
+ #
398
+ #
399
+ # [1]: https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html
395
400
  #
396
401
  # @option params [required, String] :control_identifier
397
402
  # The ARN of the control. Only **Strongly recommended** and **Elective**
398
403
  # controls are permitted, with the exception of the **Region deny**
399
- # guardrail.
404
+ # control. For information on how to find the `controlIdentifier`, see
405
+ # [the overview page][1].
406
+ #
407
+ #
408
+ #
409
+ # [1]: https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html
400
410
  #
401
411
  # @option params [required, String] :target_identifier
402
- # The ARN of the organizational unit.
412
+ # The ARN of the organizational unit. For information on how to find the
413
+ # `targetIdentifier`, see [the overview page][1].
414
+ #
415
+ #
416
+ #
417
+ # [1]: https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html
403
418
  #
404
419
  # @return [Types::DisableControlOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
405
420
  #
@@ -428,15 +443,30 @@ module Aws::ControlTower
428
443
  # This API call activates a control. It starts an asynchronous operation
429
444
  # that creates AWS resources on the specified organizational unit and
430
445
  # the accounts it contains. The resources created will vary according to
431
- # the control that you specify.
446
+ # the control that you specify. For usage examples, see [ *the AWS
447
+ # Control Tower User Guide* ][1]
448
+ #
449
+ #
450
+ #
451
+ # [1]: https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html
432
452
  #
433
453
  # @option params [required, String] :control_identifier
434
454
  # The ARN of the control. Only **Strongly recommended** and **Elective**
435
455
  # controls are permitted, with the exception of the **Region deny**
436
- # guardrail.
456
+ # control. For information on how to find the `controlIdentifier`, see
457
+ # [the overview page][1].
458
+ #
459
+ #
460
+ #
461
+ # [1]: https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html
437
462
  #
438
463
  # @option params [required, String] :target_identifier
439
- # The ARN of the organizational unit.
464
+ # The ARN of the organizational unit. For information on how to find the
465
+ # `targetIdentifier`, see [the overview page][1].
466
+ #
467
+ #
468
+ #
469
+ # [1]: https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html
440
470
  #
441
471
  # @return [Types::EnableControlOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
442
472
  #
@@ -464,7 +494,12 @@ module Aws::ControlTower
464
494
 
465
495
  # Returns the status of a particular `EnableControl` or `DisableControl`
466
496
  # operation. Displays a message in case of error. Details for an
467
- # operation are available for 90 days.
497
+ # operation are available for 90 days. For usage examples, see [ *the
498
+ # AWS Control Tower User Guide* ][1]
499
+ #
500
+ #
501
+ #
502
+ # [1]: https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html
468
503
  #
469
504
  # @option params [required, String] :operation_identifier
470
505
  # The ID of the asynchronous operation, which is used to track status.
@@ -497,8 +532,62 @@ module Aws::ControlTower
497
532
  req.send_request(options)
498
533
  end
499
534
 
535
+ # Provides details about the enabled control. For usage examples, see [
536
+ # *the AWS Control Tower User Guide* ][1].
537
+ #
538
+ # **Returned values**
539
+ #
540
+ # * TargetRegions: Shows target AWS Regions where the enabled control is
541
+ # available to be deployed.
542
+ #
543
+ # * StatusSummary: Provides a detailed summary of the deployment status.
544
+ #
545
+ # * DriftSummary: Provides a detailed summary of the drifted status.
546
+ #
547
+ #
548
+ #
549
+ # [1]: https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html
550
+ #
551
+ # @option params [required, String] :enabled_control_identifier
552
+ # The ARN of the enabled control.
553
+ #
554
+ # @return [Types::GetEnabledControlOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
555
+ #
556
+ # * {Types::GetEnabledControlOutput#enabled_control_details #enabled_control_details} => Types::EnabledControlDetails
557
+ #
558
+ # @example Request syntax with placeholder values
559
+ #
560
+ # resp = client.get_enabled_control({
561
+ # enabled_control_identifier: "Arn", # required
562
+ # })
563
+ #
564
+ # @example Response structure
565
+ #
566
+ # resp.enabled_control_details.arn #=> String
567
+ # resp.enabled_control_details.control_identifier #=> String
568
+ # resp.enabled_control_details.drift_status_summary.drift_status #=> String, one of "DRIFTED", "IN_SYNC", "NOT_CHECKING", "UNKNOWN"
569
+ # resp.enabled_control_details.status_summary.last_operation_identifier #=> String
570
+ # resp.enabled_control_details.status_summary.status #=> String, one of "SUCCEEDED", "FAILED", "UNDER_CHANGE"
571
+ # resp.enabled_control_details.target_identifier #=> String
572
+ # resp.enabled_control_details.target_regions #=> Array
573
+ # resp.enabled_control_details.target_regions[0].name #=> String
574
+ #
575
+ # @see http://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetEnabledControl AWS API Documentation
576
+ #
577
+ # @overload get_enabled_control(params = {})
578
+ # @param [Hash] params ({})
579
+ def get_enabled_control(params = {}, options = {})
580
+ req = build_request(:get_enabled_control, params)
581
+ req.send_request(options)
582
+ end
583
+
500
584
  # Lists the controls enabled by AWS Control Tower on the specified
501
- # organizational unit and the accounts it contains.
585
+ # organizational unit and the accounts it contains. For usage examples,
586
+ # see [ *the AWS Control Tower User Guide* ][1]
587
+ #
588
+ #
589
+ #
590
+ # [1]: https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html
502
591
  #
503
592
  # @option params [Integer] :max_results
504
593
  # How many results to return per API call.
@@ -508,7 +597,12 @@ module Aws::ControlTower
508
597
  # parameters.
509
598
  #
510
599
  # @option params [required, String] :target_identifier
511
- # The ARN of the organizational unit.
600
+ # The ARN of the organizational unit. For information on how to find the
601
+ # `targetIdentifier`, see [the overview page][1].
602
+ #
603
+ #
604
+ #
605
+ # [1]: https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html
512
606
  #
513
607
  # @return [Types::ListEnabledControlsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
514
608
  #
@@ -528,7 +622,12 @@ module Aws::ControlTower
528
622
  # @example Response structure
529
623
  #
530
624
  # resp.enabled_controls #=> Array
625
+ # resp.enabled_controls[0].arn #=> String
531
626
  # resp.enabled_controls[0].control_identifier #=> String
627
+ # resp.enabled_controls[0].drift_status_summary.drift_status #=> String, one of "DRIFTED", "IN_SYNC", "NOT_CHECKING", "UNKNOWN"
628
+ # resp.enabled_controls[0].status_summary.last_operation_identifier #=> String
629
+ # resp.enabled_controls[0].status_summary.status #=> String, one of "SUCCEEDED", "FAILED", "UNDER_CHANGE"
630
+ # resp.enabled_controls[0].target_identifier #=> String
532
631
  # resp.next_token #=> String
533
632
  #
534
633
  # @see http://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListEnabledControls AWS API Documentation
@@ -553,7 +652,7 @@ module Aws::ControlTower
553
652
  params: params,
554
653
  config: config)
555
654
  context[:gem_name] = 'aws-sdk-controltower'
556
- context[:gem_version] = '1.8.0'
655
+ context[:gem_version] = '1.10.0'
557
656
  Seahorse::Client::Request.new(handlers, context)
558
657
  end
559
658
 
@@ -14,6 +14,7 @@ module Aws::ControlTower
14
14
  include Seahorse::Model
15
15
 
16
16
  AccessDeniedException = Shapes::StructureShape.new(name: 'AccessDeniedException')
17
+ Arn = Shapes::StringShape.new(name: 'Arn')
17
18
  ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
18
19
  ControlIdentifier = Shapes::StringShape.new(name: 'ControlIdentifier')
19
20
  ControlOperation = Shapes::StructureShape.new(name: 'ControlOperation')
@@ -21,23 +22,33 @@ module Aws::ControlTower
21
22
  ControlOperationType = Shapes::StringShape.new(name: 'ControlOperationType')
22
23
  DisableControlInput = Shapes::StructureShape.new(name: 'DisableControlInput')
23
24
  DisableControlOutput = Shapes::StructureShape.new(name: 'DisableControlOutput')
25
+ DriftStatus = Shapes::StringShape.new(name: 'DriftStatus')
26
+ DriftStatusSummary = Shapes::StructureShape.new(name: 'DriftStatusSummary')
24
27
  EnableControlInput = Shapes::StructureShape.new(name: 'EnableControlInput')
25
28
  EnableControlOutput = Shapes::StructureShape.new(name: 'EnableControlOutput')
29
+ EnabledControlDetails = Shapes::StructureShape.new(name: 'EnabledControlDetails')
26
30
  EnabledControlSummary = Shapes::StructureShape.new(name: 'EnabledControlSummary')
27
31
  EnabledControls = Shapes::ListShape.new(name: 'EnabledControls')
32
+ EnablementStatus = Shapes::StringShape.new(name: 'EnablementStatus')
33
+ EnablementStatusSummary = Shapes::StructureShape.new(name: 'EnablementStatusSummary')
28
34
  GetControlOperationInput = Shapes::StructureShape.new(name: 'GetControlOperationInput')
29
35
  GetControlOperationOutput = Shapes::StructureShape.new(name: 'GetControlOperationOutput')
36
+ GetEnabledControlInput = Shapes::StructureShape.new(name: 'GetEnabledControlInput')
37
+ GetEnabledControlOutput = Shapes::StructureShape.new(name: 'GetEnabledControlOutput')
30
38
  Integer = Shapes::IntegerShape.new(name: 'Integer')
31
39
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
32
40
  ListEnabledControlsInput = Shapes::StructureShape.new(name: 'ListEnabledControlsInput')
33
41
  ListEnabledControlsOutput = Shapes::StructureShape.new(name: 'ListEnabledControlsOutput')
34
42
  MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
35
43
  OperationIdentifier = Shapes::StringShape.new(name: 'OperationIdentifier')
44
+ Region = Shapes::StructureShape.new(name: 'Region')
45
+ RegionName = Shapes::StringShape.new(name: 'RegionName')
36
46
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
37
47
  ServiceQuotaExceededException = Shapes::StructureShape.new(name: 'ServiceQuotaExceededException')
38
48
  String = Shapes::StringShape.new(name: 'String')
39
49
  SyntheticTimestamp_date_time = Shapes::TimestampShape.new(name: 'SyntheticTimestamp_date_time', timestampFormat: "iso8601")
40
50
  TargetIdentifier = Shapes::StringShape.new(name: 'TargetIdentifier')
51
+ TargetRegions = Shapes::ListShape.new(name: 'TargetRegions')
41
52
  ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
42
53
  ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
43
54
 
@@ -61,6 +72,9 @@ module Aws::ControlTower
61
72
  DisableControlOutput.add_member(:operation_identifier, Shapes::ShapeRef.new(shape: OperationIdentifier, required: true, location_name: "operationIdentifier"))
62
73
  DisableControlOutput.struct_class = Types::DisableControlOutput
63
74
 
75
+ DriftStatusSummary.add_member(:drift_status, Shapes::ShapeRef.new(shape: DriftStatus, location_name: "driftStatus"))
76
+ DriftStatusSummary.struct_class = Types::DriftStatusSummary
77
+
64
78
  EnableControlInput.add_member(:control_identifier, Shapes::ShapeRef.new(shape: ControlIdentifier, required: true, location_name: "controlIdentifier"))
65
79
  EnableControlInput.add_member(:target_identifier, Shapes::ShapeRef.new(shape: TargetIdentifier, required: true, location_name: "targetIdentifier"))
66
80
  EnableControlInput.struct_class = Types::EnableControlInput
@@ -68,17 +82,39 @@ module Aws::ControlTower
68
82
  EnableControlOutput.add_member(:operation_identifier, Shapes::ShapeRef.new(shape: OperationIdentifier, required: true, location_name: "operationIdentifier"))
69
83
  EnableControlOutput.struct_class = Types::EnableControlOutput
70
84
 
85
+ EnabledControlDetails.add_member(:arn, Shapes::ShapeRef.new(shape: Arn, location_name: "arn"))
86
+ EnabledControlDetails.add_member(:control_identifier, Shapes::ShapeRef.new(shape: ControlIdentifier, location_name: "controlIdentifier"))
87
+ EnabledControlDetails.add_member(:drift_status_summary, Shapes::ShapeRef.new(shape: DriftStatusSummary, location_name: "driftStatusSummary"))
88
+ EnabledControlDetails.add_member(:status_summary, Shapes::ShapeRef.new(shape: EnablementStatusSummary, location_name: "statusSummary"))
89
+ EnabledControlDetails.add_member(:target_identifier, Shapes::ShapeRef.new(shape: TargetIdentifier, location_name: "targetIdentifier"))
90
+ EnabledControlDetails.add_member(:target_regions, Shapes::ShapeRef.new(shape: TargetRegions, location_name: "targetRegions"))
91
+ EnabledControlDetails.struct_class = Types::EnabledControlDetails
92
+
93
+ EnabledControlSummary.add_member(:arn, Shapes::ShapeRef.new(shape: Arn, location_name: "arn"))
71
94
  EnabledControlSummary.add_member(:control_identifier, Shapes::ShapeRef.new(shape: ControlIdentifier, location_name: "controlIdentifier"))
95
+ EnabledControlSummary.add_member(:drift_status_summary, Shapes::ShapeRef.new(shape: DriftStatusSummary, location_name: "driftStatusSummary"))
96
+ EnabledControlSummary.add_member(:status_summary, Shapes::ShapeRef.new(shape: EnablementStatusSummary, location_name: "statusSummary"))
97
+ EnabledControlSummary.add_member(:target_identifier, Shapes::ShapeRef.new(shape: TargetIdentifier, location_name: "targetIdentifier"))
72
98
  EnabledControlSummary.struct_class = Types::EnabledControlSummary
73
99
 
74
100
  EnabledControls.member = Shapes::ShapeRef.new(shape: EnabledControlSummary)
75
101
 
102
+ EnablementStatusSummary.add_member(:last_operation_identifier, Shapes::ShapeRef.new(shape: OperationIdentifier, location_name: "lastOperationIdentifier"))
103
+ EnablementStatusSummary.add_member(:status, Shapes::ShapeRef.new(shape: EnablementStatus, location_name: "status"))
104
+ EnablementStatusSummary.struct_class = Types::EnablementStatusSummary
105
+
76
106
  GetControlOperationInput.add_member(:operation_identifier, Shapes::ShapeRef.new(shape: OperationIdentifier, required: true, location_name: "operationIdentifier"))
77
107
  GetControlOperationInput.struct_class = Types::GetControlOperationInput
78
108
 
79
109
  GetControlOperationOutput.add_member(:control_operation, Shapes::ShapeRef.new(shape: ControlOperation, required: true, location_name: "controlOperation"))
80
110
  GetControlOperationOutput.struct_class = Types::GetControlOperationOutput
81
111
 
112
+ GetEnabledControlInput.add_member(:enabled_control_identifier, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "enabledControlIdentifier"))
113
+ GetEnabledControlInput.struct_class = Types::GetEnabledControlInput
114
+
115
+ GetEnabledControlOutput.add_member(:enabled_control_details, Shapes::ShapeRef.new(shape: EnabledControlDetails, required: true, location_name: "enabledControlDetails"))
116
+ GetEnabledControlOutput.struct_class = Types::GetEnabledControlOutput
117
+
82
118
  InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
83
119
  InternalServerException.struct_class = Types::InternalServerException
84
120
 
@@ -91,12 +127,17 @@ module Aws::ControlTower
91
127
  ListEnabledControlsOutput.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
92
128
  ListEnabledControlsOutput.struct_class = Types::ListEnabledControlsOutput
93
129
 
130
+ Region.add_member(:name, Shapes::ShapeRef.new(shape: RegionName, location_name: "name"))
131
+ Region.struct_class = Types::Region
132
+
94
133
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
95
134
  ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
96
135
 
97
136
  ServiceQuotaExceededException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
98
137
  ServiceQuotaExceededException.struct_class = Types::ServiceQuotaExceededException
99
138
 
139
+ TargetRegions.member = Shapes::ShapeRef.new(shape: Region)
140
+
100
141
  ThrottlingException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
101
142
  ThrottlingException.add_member(:quota_code, Shapes::ShapeRef.new(shape: String, location_name: "quotaCode"))
102
143
  ThrottlingException.add_member(:retry_after_seconds, Shapes::ShapeRef.new(shape: Integer, location: "header", location_name: "Retry-After"))
@@ -167,6 +208,19 @@ module Aws::ControlTower
167
208
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
168
209
  end)
169
210
 
211
+ api.add_operation(:get_enabled_control, Seahorse::Model::Operation.new.tap do |o|
212
+ o.name = "GetEnabledControl"
213
+ o.http_method = "POST"
214
+ o.http_request_uri = "/get-enabled-control"
215
+ o.input = Shapes::ShapeRef.new(shape: GetEnabledControlInput)
216
+ o.output = Shapes::ShapeRef.new(shape: GetEnabledControlOutput)
217
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
218
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
219
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
220
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
221
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
222
+ end)
223
+
170
224
  api.add_operation(:list_enabled_controls, Seahorse::Model::Operation.new.tap do |o|
171
225
  o.name = "ListEnabledControls"
172
226
  o.http_method = "POST"
@@ -54,6 +54,20 @@ module Aws::ControlTower
54
54
  end
55
55
  end
56
56
 
57
+ class GetEnabledControl
58
+ def self.build(context)
59
+ unless context.config.regional_endpoint
60
+ endpoint = context.config.endpoint.to_s
61
+ end
62
+ Aws::ControlTower::EndpointParameters.new(
63
+ region: context.config.region,
64
+ use_dual_stack: context.config.use_dualstack_endpoint,
65
+ use_fips: context.config.use_fips_endpoint,
66
+ endpoint: endpoint,
67
+ )
68
+ end
69
+ end
70
+
57
71
  class ListEnabledControls
58
72
  def self.build(context)
59
73
  unless context.config.regional_endpoint
@@ -62,6 +62,8 @@ module Aws::ControlTower
62
62
  Aws::ControlTower::Endpoints::EnableControl.build(context)
63
63
  when :get_control_operation
64
64
  Aws::ControlTower::Endpoints::GetControlOperation.build(context)
65
+ when :get_enabled_control
66
+ Aws::ControlTower::Endpoints::GetEnabledControl.build(context)
65
67
  when :list_enabled_controls
66
68
  Aws::ControlTower::Endpoints::ListEnabledControls.build(context)
67
69
  end
@@ -74,11 +74,21 @@ module Aws::ControlTower
74
74
  # @!attribute [rw] control_identifier
75
75
  # The ARN of the control. Only **Strongly recommended** and
76
76
  # **Elective** controls are permitted, with the exception of the
77
- # **Region deny** guardrail.
77
+ # **Region deny** control. For information on how to find the
78
+ # `controlIdentifier`, see [the overview page][1].
79
+ #
80
+ #
81
+ #
82
+ # [1]: https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html
78
83
  # @return [String]
79
84
  #
80
85
  # @!attribute [rw] target_identifier
81
- # The ARN of the organizational unit.
86
+ # The ARN of the organizational unit. For information on how to find
87
+ # the `targetIdentifier`, see [the overview page][1].
88
+ #
89
+ #
90
+ #
91
+ # [1]: https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html
82
92
  # @return [String]
83
93
  #
84
94
  # @see http://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/DisableControlInput AWS API Documentation
@@ -103,14 +113,57 @@ module Aws::ControlTower
103
113
  include Aws::Structure
104
114
  end
105
115
 
116
+ # The drift summary of the enabled control.
117
+ #
118
+ # AWS Control Tower expects the enabled control configuration to include
119
+ # all supported and governed Regions. If the enabled control differs
120
+ # from the expected configuration, it is defined to be in a state of
121
+ # drift. You can repair this drift by resetting the enabled control.
122
+ #
123
+ # @!attribute [rw] drift_status
124
+ # The drift status of the enabled control.
125
+ #
126
+ # Valid values:
127
+ #
128
+ # * `DRIFTED`: The `enabledControl` deployed in this configuration
129
+ # doesn’t match the configuration that AWS Control Tower expected.
130
+ #
131
+ # * `IN_SYNC`: The `enabledControl` deployed in this configuration
132
+ # matches the configuration that AWS Control Tower expected.
133
+ #
134
+ # * `NOT_CHECKING`: AWS Control Tower does not check drift for this
135
+ # enabled control. Drift is not supported for the control type.
136
+ #
137
+ # * `UNKNOWN`: AWS Control Tower is not able to check the drift status
138
+ # for the enabled control.
139
+ # @return [String]
140
+ #
141
+ # @see http://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/DriftStatusSummary AWS API Documentation
142
+ #
143
+ class DriftStatusSummary < Struct.new(
144
+ :drift_status)
145
+ SENSITIVE = []
146
+ include Aws::Structure
147
+ end
148
+
106
149
  # @!attribute [rw] control_identifier
107
150
  # The ARN of the control. Only **Strongly recommended** and
108
151
  # **Elective** controls are permitted, with the exception of the
109
- # **Region deny** guardrail.
152
+ # **Region deny** control. For information on how to find the
153
+ # `controlIdentifier`, see [the overview page][1].
154
+ #
155
+ #
156
+ #
157
+ # [1]: https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html
110
158
  # @return [String]
111
159
  #
112
160
  # @!attribute [rw] target_identifier
113
- # The ARN of the organizational unit.
161
+ # The ARN of the organizational unit. For information on how to find
162
+ # the `targetIdentifier`, see [the overview page][1].
163
+ #
164
+ #
165
+ #
166
+ # [1]: https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html
114
167
  # @return [String]
115
168
  #
116
169
  # @see http://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/EnableControlInput AWS API Documentation
@@ -135,18 +188,122 @@ module Aws::ControlTower
135
188
  include Aws::Structure
136
189
  end
137
190
 
191
+ # Information about the enabled control.
192
+ #
193
+ # @!attribute [rw] arn
194
+ # The ARN of the enabled control.
195
+ # @return [String]
196
+ #
197
+ # @!attribute [rw] control_identifier
198
+ # The control identifier of the enabled control. For information on
199
+ # how to find the `controlIdentifier`, see [the overview page][1].
200
+ #
201
+ #
202
+ #
203
+ # [1]: https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html
204
+ # @return [String]
205
+ #
206
+ # @!attribute [rw] drift_status_summary
207
+ # The drift status of the enabled control.
208
+ # @return [Types::DriftStatusSummary]
209
+ #
210
+ # @!attribute [rw] status_summary
211
+ # The deployment summary of the enabled control.
212
+ # @return [Types::EnablementStatusSummary]
213
+ #
214
+ # @!attribute [rw] target_identifier
215
+ # The ARN of the organizational unit. For information on how to find
216
+ # the `targetIdentifier`, see [the overview page][1].
217
+ #
218
+ #
219
+ #
220
+ # [1]: https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html
221
+ # @return [String]
222
+ #
223
+ # @!attribute [rw] target_regions
224
+ # Target AWS Regions for the enabled control.
225
+ # @return [Array<Types::Region>]
226
+ #
227
+ # @see http://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/EnabledControlDetails AWS API Documentation
228
+ #
229
+ class EnabledControlDetails < Struct.new(
230
+ :arn,
231
+ :control_identifier,
232
+ :drift_status_summary,
233
+ :status_summary,
234
+ :target_identifier,
235
+ :target_regions)
236
+ SENSITIVE = []
237
+ include Aws::Structure
238
+ end
239
+
138
240
  # A summary of enabled controls.
139
241
  #
242
+ # @!attribute [rw] arn
243
+ # The ARN of the enabled control.
244
+ # @return [String]
245
+ #
140
246
  # @!attribute [rw] control_identifier
141
247
  # The ARN of the control. Only **Strongly recommended** and
142
248
  # **Elective** controls are permitted, with the exception of the
143
- # **Region deny** guardrail.
249
+ # **Region deny** control. For information on how to find the
250
+ # `controlIdentifier`, see [the overview page][1].
251
+ #
252
+ #
253
+ #
254
+ # [1]: https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html
255
+ # @return [String]
256
+ #
257
+ # @!attribute [rw] drift_status_summary
258
+ # The drift status of the enabled control.
259
+ # @return [Types::DriftStatusSummary]
260
+ #
261
+ # @!attribute [rw] status_summary
262
+ # <zonbook />
263
+ #
264
+ # <xhtml />
265
+ # @return [Types::EnablementStatusSummary]
266
+ #
267
+ # @!attribute [rw] target_identifier
268
+ # The ARN of the organizational unit.
144
269
  # @return [String]
145
270
  #
146
271
  # @see http://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/EnabledControlSummary AWS API Documentation
147
272
  #
148
273
  class EnabledControlSummary < Struct.new(
149
- :control_identifier)
274
+ :arn,
275
+ :control_identifier,
276
+ :drift_status_summary,
277
+ :status_summary,
278
+ :target_identifier)
279
+ SENSITIVE = []
280
+ include Aws::Structure
281
+ end
282
+
283
+ # The deployment summary of the enabled control.
284
+ #
285
+ # @!attribute [rw] last_operation_identifier
286
+ # The last operation identifier for the enabled control.
287
+ # @return [String]
288
+ #
289
+ # @!attribute [rw] status
290
+ # The deployment status of the enabled control.
291
+ #
292
+ # Valid values:
293
+ #
294
+ # * `SUCCEEDED`: The `enabledControl` configuration was deployed
295
+ # successfully.
296
+ #
297
+ # * `UNDER_CHANGE`: The `enabledControl` configuration is changing.
298
+ #
299
+ # * `FAILED`: The `enabledControl` configuration failed to deploy.
300
+ # @return [String]
301
+ #
302
+ # @see http://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/EnablementStatusSummary AWS API Documentation
303
+ #
304
+ class EnablementStatusSummary < Struct.new(
305
+ :last_operation_identifier,
306
+ :status)
150
307
  SENSITIVE = []
151
308
  include Aws::Structure
152
309
  end
@@ -165,6 +322,7 @@ module Aws::ControlTower
165
322
  end
166
323
 
167
324
  # @!attribute [rw] control_operation
325
+ # An operation performed by the control.
168
326
  # @return [Types::ControlOperation]
169
327
  #
170
328
  # @see http://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetControlOperationOutput AWS API Documentation
@@ -175,6 +333,30 @@ module Aws::ControlTower
175
333
  include Aws::Structure
176
334
  end
177
335
 
336
+ # @!attribute [rw] enabled_control_identifier
337
+ # The ARN of the enabled control.
338
+ # @return [String]
339
+ #
340
+ # @see http://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetEnabledControlInput AWS API Documentation
341
+ #
342
+ class GetEnabledControlInput < Struct.new(
343
+ :enabled_control_identifier)
344
+ SENSITIVE = []
345
+ include Aws::Structure
346
+ end
347
+
348
+ # @!attribute [rw] enabled_control_details
349
+ # Information about the enabled control.
350
+ # @return [Types::EnabledControlDetails]
351
+ #
352
+ # @see http://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetEnabledControlOutput AWS API Documentation
353
+ #
354
+ class GetEnabledControlOutput < Struct.new(
355
+ :enabled_control_details)
356
+ SENSITIVE = []
357
+ include Aws::Structure
358
+ end
359
+
178
360
  # Unexpected error during processing of request.
179
361
  #
180
362
  # @!attribute [rw] message
@@ -198,7 +380,12 @@ module Aws::ControlTower
198
380
  # @return [String]
199
381
  #
200
382
  # @!attribute [rw] target_identifier
201
- # The ARN of the organizational unit.
383
+ # The ARN of the organizational unit. For information on how to find
384
+ # the `targetIdentifier`, see [the overview page][1].
385
+ #
386
+ #
387
+ #
388
+ # [1]: https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html
202
389
  # @return [String]
203
390
  #
204
391
  # @see http://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListEnabledControlsInput AWS API Documentation
@@ -230,6 +417,30 @@ module Aws::ControlTower
230
417
  include Aws::Structure
231
418
  end
232
419
 
420
+ # An AWS Region in which AWS Control Tower expects to find the control
421
+ # deployed.
422
+ #
423
+ # The expected Regions are based on the Regions that are governed by the
424
+ # landing zone. In certain cases, a control is not actually enabled in
425
+ # the Region as expected, such as during drift, or [mixed
426
+ # governance][1].
427
+ #
428
+ #
429
+ #
430
+ # [1]: https://docs.aws.amazon.com/controltower/latest/userguide/region-how.html#mixed-governance
431
+ #
432
+ # @!attribute [rw] name
433
+ # The AWS Region name.
434
+ # @return [String]
435
+ #
436
+ # @see http://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/Region AWS API Documentation
437
+ #
438
+ class Region < Struct.new(
439
+ :name)
440
+ SENSITIVE = []
441
+ include Aws::Structure
442
+ end
443
+
233
444
  # Request references a resource which does not exist.
234
445
  #
235
446
  # @!attribute [rw] message
@@ -52,6 +52,6 @@ require_relative 'aws-sdk-controltower/customizations'
52
52
  # @!group service
53
53
  module Aws::ControlTower
54
54
 
55
- GEM_VERSION = '1.8.0'
55
+ GEM_VERSION = '1.10.0'
56
56
 
57
57
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-controltower
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.8.0
4
+ version: 1.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-09-19 00:00:00.000000000 Z
11
+ date: 2023-10-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.177.0
22
+ version: 3.184.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.177.0
32
+ version: 3.184.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement