aws-sdk-controlcatalog 1.14.0 → 1.16.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 82ac8252e0a882c1edcd8e328a23a21a36149c4d90c478fd33b11e44918716f5
4
- data.tar.gz: b42711a63061dc2d9383d832a2acc876f89deb235a5b965a08ae220d79c61b71
3
+ metadata.gz: 23921242f81a2c4d0a344a710299d5935d3d7edbb1ee2ee01b18ed96354dbf15
4
+ data.tar.gz: 4cec7f9d4047762eaecc4c929a877d2a4011e1eca619cdc76370f535c237aca2
5
5
  SHA512:
6
- metadata.gz: '083227982045ec085636ceaa66f8317fd5b65610ef735999df590add25609336dfa29bd6ce732c64e2c9ff66a9e4b249256a9cb11e8be12a5af70e1a526b9ce3'
7
- data.tar.gz: d7c5e75015e0bf19470b744b8cc8c9025e457a98af7c757900f8b1c17faefdc96b6f7305531bc74b2305d8dd7d18c056af00228c6a65a071fea657623ea55218
6
+ metadata.gz: 3e6fc759284b448c8a8311690e4f753f85ff2b354572be290193abdafcb1dcadeac2cd2c0151f62fd33a14fd8e9952a12fdf1c1bb355eaaf8eacde4eb9002ab1
7
+ data.tar.gz: a91523d4623fc41a98598b40bb3f621389cb81e3b992bcca1488105f25d98137ba7a4525b74b4bf266a1430704e9ff59e9e178a931f6fe81549dce3caf3ed7a3
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.16.0 (2024-11-08)
5
+ ------------------
6
+
7
+ * Feature - AWS Control Catalog GetControl public API returns additional data in output, including Implementation and Parameters
8
+
9
+ 1.15.0 (2024-11-06)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
4
14
  1.14.0 (2024-10-18)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.14.0
1
+ 1.16.0
@@ -465,11 +465,11 @@ module Aws::ControlCatalog
465
465
  #
466
466
  # *Global format*
467
467
  #
468
- # `arn:\{PARTITION\}:controlcatalog:::control/\{CONTROL_CATALOG_OPAQUE_ID\}`
468
+ # `arn:{PARTITION}:controlcatalog:::control/{CONTROL_CATALOG_OPAQUE_ID}`
469
469
  #
470
470
  # *Or Regional format*
471
471
  #
472
- # `arn:\{PARTITION\}:controltower:\{REGION\}::control/\{CONTROL_TOWER_OPAQUE_ID\}`
472
+ # `arn:{PARTITION}:controltower:{REGION}::control/{CONTROL_TOWER_OPAQUE_ID}`
473
473
  #
474
474
  # Here is a more general pattern that covers Amazon Web Services Control
475
475
  # Tower and Control Catalog ARNs:
@@ -483,6 +483,8 @@ module Aws::ControlCatalog
483
483
  # * {Types::GetControlResponse#description #description} => String
484
484
  # * {Types::GetControlResponse#behavior #behavior} => String
485
485
  # * {Types::GetControlResponse#region_configuration #region_configuration} => Types::RegionConfiguration
486
+ # * {Types::GetControlResponse#implementation #implementation} => Types::ImplementationDetails
487
+ # * {Types::GetControlResponse#parameters #parameters} => Array<Types::ControlParameter>
486
488
  #
487
489
  # @example Request syntax with placeholder values
488
490
  #
@@ -499,6 +501,9 @@ module Aws::ControlCatalog
499
501
  # resp.region_configuration.scope #=> String, one of "GLOBAL", "REGIONAL"
500
502
  # resp.region_configuration.deployable_regions #=> Array
501
503
  # resp.region_configuration.deployable_regions[0] #=> String
504
+ # resp.implementation.type #=> String
505
+ # resp.parameters #=> Array
506
+ # resp.parameters[0].name #=> String
502
507
  #
503
508
  # @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/GetControl AWS API Documentation
504
509
  #
@@ -736,7 +741,7 @@ module Aws::ControlCatalog
736
741
  tracer: tracer
737
742
  )
738
743
  context[:gem_name] = 'aws-sdk-controlcatalog'
739
- context[:gem_version] = '1.14.0'
744
+ context[:gem_version] = '1.16.0'
740
745
  Seahorse::Client::Request.new(handlers, context)
741
746
  end
742
747
 
@@ -23,6 +23,8 @@ module Aws::ControlCatalog
23
23
  CommonControlSummaryList = Shapes::ListShape.new(name: 'CommonControlSummaryList')
24
24
  ControlArn = Shapes::StringShape.new(name: 'ControlArn')
25
25
  ControlBehavior = Shapes::StringShape.new(name: 'ControlBehavior')
26
+ ControlParameter = Shapes::StructureShape.new(name: 'ControlParameter')
27
+ ControlParameters = Shapes::ListShape.new(name: 'ControlParameters')
26
28
  ControlScope = Shapes::StringShape.new(name: 'ControlScope')
27
29
  ControlSummary = Shapes::StructureShape.new(name: 'ControlSummary')
28
30
  Controls = Shapes::ListShape.new(name: 'Controls')
@@ -34,6 +36,8 @@ module Aws::ControlCatalog
34
36
  DomainSummaryList = Shapes::ListShape.new(name: 'DomainSummaryList')
35
37
  GetControlRequest = Shapes::StructureShape.new(name: 'GetControlRequest')
36
38
  GetControlResponse = Shapes::StructureShape.new(name: 'GetControlResponse')
39
+ ImplementationDetails = Shapes::StructureShape.new(name: 'ImplementationDetails')
40
+ ImplementationType = Shapes::StringShape.new(name: 'ImplementationType')
37
41
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
38
42
  ListCommonControlsRequest = Shapes::StructureShape.new(name: 'ListCommonControlsRequest')
39
43
  ListCommonControlsResponse = Shapes::StructureShape.new(name: 'ListCommonControlsResponse')
@@ -87,6 +91,11 @@ module Aws::ControlCatalog
87
91
 
88
92
  CommonControlSummaryList.member = Shapes::ShapeRef.new(shape: CommonControlSummary)
89
93
 
94
+ ControlParameter.add_member(:name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Name"))
95
+ ControlParameter.struct_class = Types::ControlParameter
96
+
97
+ ControlParameters.member = Shapes::ShapeRef.new(shape: ControlParameter)
98
+
90
99
  ControlSummary.add_member(:arn, Shapes::ShapeRef.new(shape: ControlArn, required: true, location_name: "Arn"))
91
100
  ControlSummary.add_member(:name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Name"))
92
101
  ControlSummary.add_member(:description, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Description"))
@@ -118,8 +127,13 @@ module Aws::ControlCatalog
118
127
  GetControlResponse.add_member(:description, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Description"))
119
128
  GetControlResponse.add_member(:behavior, Shapes::ShapeRef.new(shape: ControlBehavior, required: true, location_name: "Behavior"))
120
129
  GetControlResponse.add_member(:region_configuration, Shapes::ShapeRef.new(shape: RegionConfiguration, required: true, location_name: "RegionConfiguration"))
130
+ GetControlResponse.add_member(:implementation, Shapes::ShapeRef.new(shape: ImplementationDetails, location_name: "Implementation"))
131
+ GetControlResponse.add_member(:parameters, Shapes::ShapeRef.new(shape: ControlParameters, location_name: "Parameters"))
121
132
  GetControlResponse.struct_class = Types::GetControlResponse
122
133
 
134
+ ImplementationDetails.add_member(:type, Shapes::ShapeRef.new(shape: ImplementationType, required: true, location_name: "Type"))
135
+ ImplementationDetails.struct_class = Types::ImplementationDetails
136
+
123
137
  InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
124
138
  InternalServerException.struct_class = Types::InternalServerException
125
139
 
@@ -124,6 +124,53 @@ module Aws::ControlCatalog
124
124
  include Aws::Structure
125
125
  end
126
126
 
127
+ # Four types of control parameters are supported.
128
+ #
129
+ # * **AllowedRegions**: List of Amazon Web Services Regions exempted
130
+ # from the control. Each string is expected to be an Amazon Web
131
+ # Services Region code. This parameter is mandatory for the **OU
132
+ # Region deny** control, **CT.MULTISERVICE.PV.1**.
133
+ #
134
+ # Example: `["us-east-1","us-west-2"]`
135
+ #
136
+ # * **ExemptedActions**: List of Amazon Web Services IAM actions
137
+ # exempted from the control. Each string is expected to be an IAM
138
+ # action.
139
+ #
140
+ # Example:
141
+ # `["logs:DescribeLogGroups","logs:StartQuery","logs:GetQueryResults"]`
142
+ #
143
+ # * **ExemptedPrincipalArns**: List of Amazon Web Services IAM principal
144
+ # ARNs exempted from the control. Each string is expected to be an IAM
145
+ # principal that follows the pattern
146
+ # `^arn:(aws|aws-us-gov):(iam|sts)::.+:.+$`
147
+ #
148
+ # Example:
149
+ # `["arn:aws:iam::*:role/ReadOnly","arn:aws:sts::*:assumed-role/ReadOnly/*"]`
150
+ #
151
+ # * **ExemptedResourceArns**: List of resource ARNs exempted from the
152
+ # control. Each string is expected to be a resource ARN.
153
+ #
154
+ # Example: `["arn:aws:s3:::my-bucket-name"]`
155
+ #
156
+ # @!attribute [rw] name
157
+ # The parameter name. This name is the parameter `key` when you call [
158
+ # `EnableControl` ][1] or [ `UpdateEnabledControl` ][2].
159
+ #
160
+ #
161
+ #
162
+ # [1]: https://docs.aws.amazon.com/controltower/latest/APIReference/API_EnableControl.html
163
+ # [2]: https://docs.aws.amazon.com/controltower/latest/APIReference/API_UpdateEnabledControl.html
164
+ # @return [String]
165
+ #
166
+ # @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ControlParameter AWS API Documentation
167
+ #
168
+ class ControlParameter < Struct.new(
169
+ :name)
170
+ SENSITIVE = []
171
+ include Aws::Structure
172
+ end
173
+
127
174
  # Overview of information about a control.
128
175
  #
129
176
  # @!attribute [rw] arn
@@ -203,11 +250,11 @@ module Aws::ControlCatalog
203
250
  #
204
251
  # *Global format*
205
252
  #
206
- # `arn:\{PARTITION\}:controlcatalog:::control/\{CONTROL_CATALOG_OPAQUE_ID\}`
253
+ # `arn:{PARTITION}:controlcatalog:::control/{CONTROL_CATALOG_OPAQUE_ID}`
207
254
  #
208
255
  # *Or Regional format*
209
256
  #
210
- # `arn:\{PARTITION\}:controltower:\{REGION\}::control/\{CONTROL_TOWER_OPAQUE_ID\}`
257
+ # `arn:{PARTITION}:controltower:{REGION}::control/{CONTROL_TOWER_OPAQUE_ID}`
211
258
  #
212
259
  # Here is a more general pattern that covers Amazon Web Services
213
260
  # Control Tower and Control Catalog ARNs:
@@ -237,13 +284,14 @@ module Aws::ControlCatalog
237
284
  #
238
285
  # @!attribute [rw] behavior
239
286
  # A term that identifies the control's functional behavior. One of
240
- # `Preventive`, `Deteictive`, `Proactive`
287
+ # `Preventive`, `Detective`, `Proactive`
241
288
  # @return [String]
242
289
  #
243
290
  # @!attribute [rw] region_configuration
244
291
  # Returns information about the control, including the scope of the
245
292
  # control, if enabled, and the Regions in which the control currently
246
- # is available for deployment.
293
+ # is available for deployment. For more information about scope, see
294
+ # [Global services][1].
247
295
  #
248
296
  # If you are applying controls through an Amazon Web Services Control
249
297
  # Tower landing zone environment, remember that the values returned in
@@ -255,8 +303,23 @@ module Aws::ControlCatalog
255
303
  # `REGIONAL` scope, even though you may not intend to deploy the
256
304
  # control in Region `D`, because you do not govern it through your
257
305
  # landing zone.
306
+ #
307
+ #
308
+ #
309
+ # [1]: https://docs.aws.amazon.com/whitepapers/latest/aws-fault-isolation-boundaries/global-services.html
258
310
  # @return [Types::RegionConfiguration]
259
311
  #
312
+ # @!attribute [rw] implementation
313
+ # Returns information about the control, as an `ImplementationDetails`
314
+ # object that shows the underlying implementation type for a control.
315
+ # @return [Types::ImplementationDetails]
316
+ #
317
+ # @!attribute [rw] parameters
318
+ # Returns an array of `ControlParameter` objects that specify the
319
+ # parameters a control supports. An empty list is returned for
320
+ # controls that don’t support parameters.
321
+ # @return [Array<Types::ControlParameter>]
322
+ #
260
323
  # @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/GetControlResponse AWS API Documentation
261
324
  #
262
325
  class GetControlResponse < Struct.new(
@@ -264,7 +327,49 @@ module Aws::ControlCatalog
264
327
  :name,
265
328
  :description,
266
329
  :behavior,
267
- :region_configuration)
330
+ :region_configuration,
331
+ :implementation,
332
+ :parameters)
333
+ SENSITIVE = []
334
+ include Aws::Structure
335
+ end
336
+
337
+ # An object that describes the implementation type for a control.
338
+ #
339
+ # Our `ImplementationDetails` `Type` format has three required segments:
340
+ #
341
+ # * `SERVICE-PROVIDER::SERVICE-NAME::RESOURCE-NAME`
342
+ #
343
+ # ^
344
+ #
345
+ # For example, `AWS::Config::ConfigRule` **or**
346
+ # `AWS::SecurityHub::SecurityControl` resources have the format with
347
+ # three required segments.
348
+ #
349
+ # Our `ImplementationDetails` `Type` format has an optional fourth
350
+ # segment, which is present for applicable implementation types. The
351
+ # format is as follows:
352
+ #
353
+ # * `SERVICE-PROVIDER::SERVICE-NAME::RESOURCE-NAME::RESOURCE-TYPE-DESCRIPTION`
354
+ #
355
+ # ^
356
+ #
357
+ # For example, `AWS::Organizations::Policy::SERVICE_CONTROL_POLICY`
358
+ # **or** `AWS::CloudFormation::Type::HOOK` have the format with four
359
+ # segments.
360
+ #
361
+ # Although the format is similar, the values for the `Type` field do not
362
+ # match any Amazon Web Services CloudFormation values, and we do not use
363
+ # CloudFormation to implement these controls.
364
+ #
365
+ # @!attribute [rw] type
366
+ # A string that describes a control's implementation type.
367
+ # @return [String]
368
+ #
369
+ # @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ImplementationDetails AWS API Documentation
370
+ #
371
+ class ImplementationDetails < Struct.new(
372
+ :type)
268
373
  SENSITIVE = []
269
374
  include Aws::Structure
270
375
  end
@@ -512,7 +617,8 @@ module Aws::ControlCatalog
512
617
 
513
618
  # Returns information about the control, including the scope of the
514
619
  # control, if enabled, and the Regions in which the control currently is
515
- # available for deployment.
620
+ # available for deployment. For more information about scope, see
621
+ # [Global services][1].
516
622
  #
517
623
  # If you are applying controls through an Amazon Web Services Control
518
624
  # Tower landing zone environment, remember that the values returned in
@@ -524,6 +630,10 @@ module Aws::ControlCatalog
524
630
  # `REGIONAL` scope, even though you may not intend to deploy the control
525
631
  # in Region `D`, because you do not govern it through your landing zone.
526
632
  #
633
+ #
634
+ #
635
+ # [1]: https://docs.aws.amazon.com/whitepapers/latest/aws-fault-isolation-boundaries/global-services.html
636
+ #
527
637
  # @!attribute [rw] scope
528
638
  # The coverage of the control, if deployed. Scope is an enumerated
529
639
  # type, with value `Regional`, or `Global`. A control with Global
@@ -55,7 +55,7 @@ module Aws::ControlCatalog
55
55
  autoload :EndpointProvider, 'aws-sdk-controlcatalog/endpoint_provider'
56
56
  autoload :Endpoints, 'aws-sdk-controlcatalog/endpoints'
57
57
 
58
- GEM_VERSION = '1.14.0'
58
+ GEM_VERSION = '1.16.0'
59
59
 
60
60
  end
61
61
 
data/sig/client.rbs CHANGED
@@ -82,6 +82,8 @@ module Aws
82
82
  def description: () -> ::String
83
83
  def behavior: () -> ("PREVENTIVE" | "PROACTIVE" | "DETECTIVE")
84
84
  def region_configuration: () -> Types::RegionConfiguration
85
+ def implementation: () -> Types::ImplementationDetails
86
+ def parameters: () -> ::Array[Types::ControlParameter]
85
87
  end
86
88
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ControlCatalog/Client.html#get_control-instance_method
87
89
  def get_control: (
data/sig/types.rbs CHANGED
@@ -41,6 +41,11 @@ module Aws::ControlCatalog
41
41
  SENSITIVE: []
42
42
  end
43
43
 
44
+ class ControlParameter
45
+ attr_accessor name: ::String
46
+ SENSITIVE: []
47
+ end
48
+
44
49
  class ControlSummary
45
50
  attr_accessor arn: ::String
46
51
  attr_accessor name: ::String
@@ -73,6 +78,13 @@ module Aws::ControlCatalog
73
78
  attr_accessor description: ::String
74
79
  attr_accessor behavior: ("PREVENTIVE" | "PROACTIVE" | "DETECTIVE")
75
80
  attr_accessor region_configuration: Types::RegionConfiguration
81
+ attr_accessor implementation: Types::ImplementationDetails
82
+ attr_accessor parameters: ::Array[Types::ControlParameter]
83
+ SENSITIVE: []
84
+ end
85
+
86
+ class ImplementationDetails
87
+ attr_accessor type: ::String
76
88
  SENSITIVE: []
77
89
  end
78
90
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-controlcatalog
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.14.0
4
+ version: 1.16.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: 2024-10-18 00:00:00.000000000 Z
11
+ date: 2024-11-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core