aws-sdk-controlcatalog 1.25.0 → 1.26.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: c1a2b9d74d644166ae67a07007461cc1277992bda1bce94773c76f5fb8db59b9
4
- data.tar.gz: b5580589fa8c7ca4357226ddd955c6ef27f57b6d1ef3734236861eb80daec2f3
3
+ metadata.gz: 3daf1d0f732b31aaa1a388c07f18f3dd1b3818aadf759cdc9a1c542102955410
4
+ data.tar.gz: 9fda2bcca2f168feafccb5ee25766184a91e86562eced654c61b7b4a949471a8
5
5
  SHA512:
6
- metadata.gz: 3fdbd0db8ad66d4673c91f9e34560d62ffaf9de77745cda9f090f9b86ce71ecf8cc90f604e587c1ca8479999404242e6d413f1a2a2ab6e436f48367fb634d3e2
7
- data.tar.gz: 199f129af43b7f192dc1f49213a261a2bc48b07fbd91b13ad5d14485a94320382b6ae34e48b90283b90e23cacbef64b23ac686d87013f3c3fc03400059ef03b9
6
+ metadata.gz: 5d951fc547b819bb9ecbaae549337e6deb0559a56a77587cca207151411044cbf3abd7c14c1f1d720e9c81682baf86ffe5025af405f69d5fcca6a96e333c2826
7
+ data.tar.gz: d5a8c3a9d348330c4f8a6d3c64a468c223ce0c810951949c7a8283f3fa32277e8abd7eea2eb40a39f33380cb0464657969caf59d96b9ccbbcaf0400014c09d34
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.26.0 (2025-06-11)
5
+ ------------------
6
+
7
+ * Feature - Introduced ListControlMappings API that retrieves control mappings. Added control aliases and governed resources fields in GetControl and ListControls APIs. New filtering capability in ListControls API, with implementation identifiers and implementation types.
8
+
4
9
  1.25.0 (2025-06-02)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.25.0
1
+ 1.26.0
@@ -501,6 +501,7 @@ module Aws::ControlCatalog
501
501
  # @return [Types::GetControlResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
502
502
  #
503
503
  # * {Types::GetControlResponse#arn #arn} => String
504
+ # * {Types::GetControlResponse#aliases #aliases} => Array<String>
504
505
  # * {Types::GetControlResponse#name #name} => String
505
506
  # * {Types::GetControlResponse#description #description} => String
506
507
  # * {Types::GetControlResponse#behavior #behavior} => String
@@ -509,6 +510,7 @@ module Aws::ControlCatalog
509
510
  # * {Types::GetControlResponse#implementation #implementation} => Types::ImplementationDetails
510
511
  # * {Types::GetControlResponse#parameters #parameters} => Array<Types::ControlParameter>
511
512
  # * {Types::GetControlResponse#create_time #create_time} => Time
513
+ # * {Types::GetControlResponse#governed_resources #governed_resources} => Array<String>
512
514
  #
513
515
  # @example Request syntax with placeholder values
514
516
  #
@@ -519,6 +521,8 @@ module Aws::ControlCatalog
519
521
  # @example Response structure
520
522
  #
521
523
  # resp.arn #=> String
524
+ # resp.aliases #=> Array
525
+ # resp.aliases[0] #=> String
522
526
  # resp.name #=> String
523
527
  # resp.description #=> String
524
528
  # resp.behavior #=> String, one of "PREVENTIVE", "PROACTIVE", "DETECTIVE"
@@ -531,6 +535,8 @@ module Aws::ControlCatalog
531
535
  # resp.parameters #=> Array
532
536
  # resp.parameters[0].name #=> String
533
537
  # resp.create_time #=> Time
538
+ # resp.governed_resources #=> Array
539
+ # resp.governed_resources[0] #=> String
534
540
  #
535
541
  # @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/GetControl AWS API Documentation
536
542
  #
@@ -558,7 +564,7 @@ module Aws::ControlCatalog
558
564
  # An optional filter that narrows the results to a specific objective.
559
565
  #
560
566
  # This filter allows you to specify one objective ARN at a time. Passing
561
- # multiple ARNs in the `CommonControlFilter` isn’t currently supported.
567
+ # multiple ARNs in the `CommonControlFilter` isn’t supported.
562
568
  #
563
569
  # @return [Types::ListCommonControlsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
564
570
  #
@@ -604,11 +610,9 @@ module Aws::ControlCatalog
604
610
  req.send_request(options)
605
611
  end
606
612
 
607
- # Returns a paginated list of all available controls in the Amazon Web
608
- # Services Control Catalog library. Allows you to discover available
609
- # controls. The list of controls is given as structures of type
610
- # *controlSummary*. The ARN is returned in the global *controlcatalog*
611
- # format, as shown in the examples.
613
+ # Returns a paginated list of control mappings from the Control Catalog.
614
+ # Control mappings show relationships between controls and other
615
+ # entities, such as common controls or compliance frameworks.
612
616
  #
613
617
  # @option params [String] :next_token
614
618
  # The pagination token that's used to fetch the next set of results.
@@ -616,6 +620,65 @@ module Aws::ControlCatalog
616
620
  # @option params [Integer] :max_results
617
621
  # The maximum number of results on a page or for an API request call.
618
622
  #
623
+ # @option params [Types::ControlMappingFilter] :filter
624
+ # An optional filter that narrows the results to specific control
625
+ # mappings based on control ARNs, common control ARNs, or mapping types.
626
+ #
627
+ # @return [Types::ListControlMappingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
628
+ #
629
+ # * {Types::ListControlMappingsResponse#control_mappings #control_mappings} => Array<Types::ControlMapping>
630
+ # * {Types::ListControlMappingsResponse#next_token #next_token} => String
631
+ #
632
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
633
+ #
634
+ # @example Request syntax with placeholder values
635
+ #
636
+ # resp = client.list_control_mappings({
637
+ # next_token: "PaginationToken",
638
+ # max_results: 1,
639
+ # filter: {
640
+ # control_arns: ["ControlArn"],
641
+ # common_control_arns: ["CommonControlArn"],
642
+ # mapping_types: ["FRAMEWORK"], # accepts FRAMEWORK, COMMON_CONTROL
643
+ # },
644
+ # })
645
+ #
646
+ # @example Response structure
647
+ #
648
+ # resp.control_mappings #=> Array
649
+ # resp.control_mappings[0].control_arn #=> String
650
+ # resp.control_mappings[0].mapping_type #=> String, one of "FRAMEWORK", "COMMON_CONTROL"
651
+ # resp.control_mappings[0].mapping.framework.name #=> String
652
+ # resp.control_mappings[0].mapping.framework.item #=> String
653
+ # resp.control_mappings[0].mapping.common_control.common_control_arn #=> String
654
+ # resp.next_token #=> String
655
+ #
656
+ # @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ListControlMappings AWS API Documentation
657
+ #
658
+ # @overload list_control_mappings(params = {})
659
+ # @param [Hash] params ({})
660
+ def list_control_mappings(params = {}, options = {})
661
+ req = build_request(:list_control_mappings, params)
662
+ req.send_request(options)
663
+ end
664
+
665
+ # Returns a paginated list of all available controls in the Control
666
+ # Catalog library. Allows you to discover available controls. The list
667
+ # of controls is given as structures of type *controlSummary*. The ARN
668
+ # is returned in the global *controlcatalog* format, as shown in the
669
+ # examples.
670
+ #
671
+ # @option params [String] :next_token
672
+ # The pagination token that's used to fetch the next set of results.
673
+ #
674
+ # @option params [Integer] :max_results
675
+ # The maximum number of results on a page or for an API request call.
676
+ #
677
+ # @option params [Types::ControlFilter] :filter
678
+ # An optional filter that narrows the results to controls with specific
679
+ # implementation types or identifiers. If you don't provide a filter,
680
+ # the operation returns all available controls.
681
+ #
619
682
  # @return [Types::ListControlsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
620
683
  #
621
684
  # * {Types::ListControlsResponse#controls #controls} => Array<Types::ControlSummary>
@@ -628,12 +691,20 @@ module Aws::ControlCatalog
628
691
  # resp = client.list_controls({
629
692
  # next_token: "PaginationToken",
630
693
  # max_results: 1,
694
+ # filter: {
695
+ # implementations: {
696
+ # types: ["ImplementationType"],
697
+ # identifiers: ["ImplementationIdentifier"],
698
+ # },
699
+ # },
631
700
  # })
632
701
  #
633
702
  # @example Response structure
634
703
  #
635
704
  # resp.controls #=> Array
636
705
  # resp.controls[0].arn #=> String
706
+ # resp.controls[0].aliases #=> Array
707
+ # resp.controls[0].aliases[0] #=> String
637
708
  # resp.controls[0].name #=> String
638
709
  # resp.controls[0].description #=> String
639
710
  # resp.controls[0].behavior #=> String, one of "PREVENTIVE", "PROACTIVE", "DETECTIVE"
@@ -641,6 +712,8 @@ module Aws::ControlCatalog
641
712
  # resp.controls[0].implementation.type #=> String
642
713
  # resp.controls[0].implementation.identifier #=> String
643
714
  # resp.controls[0].create_time #=> Time
715
+ # resp.controls[0].governed_resources #=> Array
716
+ # resp.controls[0].governed_resources[0] #=> String
644
717
  # resp.next_token #=> String
645
718
  #
646
719
  # @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ListControls AWS API Documentation
@@ -652,8 +725,7 @@ module Aws::ControlCatalog
652
725
  req.send_request(options)
653
726
  end
654
727
 
655
- # Returns a paginated list of domains from the Amazon Web Services
656
- # Control Catalog.
728
+ # Returns a paginated list of domains from the Control Catalog.
657
729
  #
658
730
  # @option params [Integer] :max_results
659
731
  # The maximum number of results on a page or for an API request call.
@@ -694,8 +766,7 @@ module Aws::ControlCatalog
694
766
  req.send_request(options)
695
767
  end
696
768
 
697
- # Returns a paginated list of objectives from the Amazon Web Services
698
- # Control Catalog.
769
+ # Returns a paginated list of objectives from the Control Catalog.
699
770
  #
700
771
  # You can apply an optional filter to see the objectives that belong to
701
772
  # a specific domain. If you don’t provide a filter, the operation
@@ -711,7 +782,7 @@ module Aws::ControlCatalog
711
782
  # An optional filter that narrows the results to a specific domain.
712
783
  #
713
784
  # This filter allows you to specify one domain ARN at a time. Passing
714
- # multiple ARNs in the `ObjectiveFilter` isn’t currently supported.
785
+ # multiple ARNs in the `ObjectiveFilter` isn’t supported.
715
786
  #
716
787
  # @return [Types::ListObjectivesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
717
788
  #
@@ -773,7 +844,7 @@ module Aws::ControlCatalog
773
844
  tracer: tracer
774
845
  )
775
846
  context[:gem_name] = 'aws-sdk-controlcatalog'
776
- context[:gem_version] = '1.25.0'
847
+ context[:gem_version] = '1.26.0'
777
848
  Seahorse::Client::Request.new(handlers, context)
778
849
  end
779
850
 
@@ -18,11 +18,20 @@ module Aws::ControlCatalog
18
18
  AssociatedDomainSummary = Shapes::StructureShape.new(name: 'AssociatedDomainSummary')
19
19
  AssociatedObjectiveSummary = Shapes::StructureShape.new(name: 'AssociatedObjectiveSummary')
20
20
  CommonControlArn = Shapes::StringShape.new(name: 'CommonControlArn')
21
+ CommonControlArnFilterList = Shapes::ListShape.new(name: 'CommonControlArnFilterList')
21
22
  CommonControlFilter = Shapes::StructureShape.new(name: 'CommonControlFilter')
23
+ CommonControlMappingDetails = Shapes::StructureShape.new(name: 'CommonControlMappingDetails')
22
24
  CommonControlSummary = Shapes::StructureShape.new(name: 'CommonControlSummary')
23
25
  CommonControlSummaryList = Shapes::ListShape.new(name: 'CommonControlSummaryList')
26
+ ControlAlias = Shapes::StringShape.new(name: 'ControlAlias')
27
+ ControlAliases = Shapes::ListShape.new(name: 'ControlAliases')
24
28
  ControlArn = Shapes::StringShape.new(name: 'ControlArn')
29
+ ControlArnFilterList = Shapes::ListShape.new(name: 'ControlArnFilterList')
25
30
  ControlBehavior = Shapes::StringShape.new(name: 'ControlBehavior')
31
+ ControlFilter = Shapes::StructureShape.new(name: 'ControlFilter')
32
+ ControlMapping = Shapes::StructureShape.new(name: 'ControlMapping')
33
+ ControlMappingFilter = Shapes::StructureShape.new(name: 'ControlMappingFilter')
34
+ ControlMappings = Shapes::ListShape.new(name: 'ControlMappings')
26
35
  ControlParameter = Shapes::StructureShape.new(name: 'ControlParameter')
27
36
  ControlParameters = Shapes::ListShape.new(name: 'ControlParameters')
28
37
  ControlScope = Shapes::StringShape.new(name: 'ControlScope')
@@ -35,22 +44,36 @@ module Aws::ControlCatalog
35
44
  DomainResourceFilterList = Shapes::ListShape.new(name: 'DomainResourceFilterList')
36
45
  DomainSummary = Shapes::StructureShape.new(name: 'DomainSummary')
37
46
  DomainSummaryList = Shapes::ListShape.new(name: 'DomainSummaryList')
47
+ FrameworkItem = Shapes::StringShape.new(name: 'FrameworkItem')
48
+ FrameworkMappingDetails = Shapes::StructureShape.new(name: 'FrameworkMappingDetails')
49
+ FrameworkName = Shapes::StringShape.new(name: 'FrameworkName')
38
50
  GetControlRequest = Shapes::StructureShape.new(name: 'GetControlRequest')
39
51
  GetControlResponse = Shapes::StructureShape.new(name: 'GetControlResponse')
52
+ GovernedResource = Shapes::StringShape.new(name: 'GovernedResource')
53
+ GovernedResources = Shapes::ListShape.new(name: 'GovernedResources')
40
54
  ImplementationDetails = Shapes::StructureShape.new(name: 'ImplementationDetails')
55
+ ImplementationFilter = Shapes::StructureShape.new(name: 'ImplementationFilter')
41
56
  ImplementationIdentifier = Shapes::StringShape.new(name: 'ImplementationIdentifier')
57
+ ImplementationIdentifierFilterList = Shapes::ListShape.new(name: 'ImplementationIdentifierFilterList')
42
58
  ImplementationSummary = Shapes::StructureShape.new(name: 'ImplementationSummary')
43
59
  ImplementationType = Shapes::StringShape.new(name: 'ImplementationType')
60
+ ImplementationTypeFilterList = Shapes::ListShape.new(name: 'ImplementationTypeFilterList')
44
61
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
45
62
  ListCommonControlsRequest = Shapes::StructureShape.new(name: 'ListCommonControlsRequest')
46
63
  ListCommonControlsResponse = Shapes::StructureShape.new(name: 'ListCommonControlsResponse')
64
+ ListControlMappingsRequest = Shapes::StructureShape.new(name: 'ListControlMappingsRequest')
65
+ ListControlMappingsResponse = Shapes::StructureShape.new(name: 'ListControlMappingsResponse')
47
66
  ListControlsRequest = Shapes::StructureShape.new(name: 'ListControlsRequest')
48
67
  ListControlsResponse = Shapes::StructureShape.new(name: 'ListControlsResponse')
49
68
  ListDomainsRequest = Shapes::StructureShape.new(name: 'ListDomainsRequest')
50
69
  ListDomainsResponse = Shapes::StructureShape.new(name: 'ListDomainsResponse')
51
70
  ListObjectivesRequest = Shapes::StructureShape.new(name: 'ListObjectivesRequest')
52
71
  ListObjectivesResponse = Shapes::StructureShape.new(name: 'ListObjectivesResponse')
72
+ Mapping = Shapes::UnionShape.new(name: 'Mapping')
73
+ MappingType = Shapes::StringShape.new(name: 'MappingType')
74
+ MappingTypeFilterList = Shapes::ListShape.new(name: 'MappingTypeFilterList')
53
75
  MaxListCommonControlsResults = Shapes::IntegerShape.new(name: 'MaxListCommonControlsResults')
76
+ MaxListControlMappingsResults = Shapes::IntegerShape.new(name: 'MaxListControlMappingsResults')
54
77
  MaxListControlsResults = Shapes::IntegerShape.new(name: 'MaxListControlsResults')
55
78
  MaxListDomainsResults = Shapes::IntegerShape.new(name: 'MaxListDomainsResults')
56
79
  MaxListObjectivesResults = Shapes::IntegerShape.new(name: 'MaxListObjectivesResults')
@@ -80,9 +103,14 @@ module Aws::ControlCatalog
80
103
  AssociatedObjectiveSummary.add_member(:name, Shapes::ShapeRef.new(shape: String, location_name: "Name"))
81
104
  AssociatedObjectiveSummary.struct_class = Types::AssociatedObjectiveSummary
82
105
 
106
+ CommonControlArnFilterList.member = Shapes::ShapeRef.new(shape: CommonControlArn)
107
+
83
108
  CommonControlFilter.add_member(:objectives, Shapes::ShapeRef.new(shape: ObjectiveResourceFilterList, location_name: "Objectives"))
84
109
  CommonControlFilter.struct_class = Types::CommonControlFilter
85
110
 
111
+ CommonControlMappingDetails.add_member(:common_control_arn, Shapes::ShapeRef.new(shape: CommonControlArn, required: true, location_name: "CommonControlArn"))
112
+ CommonControlMappingDetails.struct_class = Types::CommonControlMappingDetails
113
+
86
114
  CommonControlSummary.add_member(:arn, Shapes::ShapeRef.new(shape: CommonControlArn, required: true, location_name: "Arn"))
87
115
  CommonControlSummary.add_member(:name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Name"))
88
116
  CommonControlSummary.add_member(:description, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Description"))
@@ -94,18 +122,39 @@ module Aws::ControlCatalog
94
122
 
95
123
  CommonControlSummaryList.member = Shapes::ShapeRef.new(shape: CommonControlSummary)
96
124
 
125
+ ControlAliases.member = Shapes::ShapeRef.new(shape: ControlAlias)
126
+
127
+ ControlArnFilterList.member = Shapes::ShapeRef.new(shape: ControlArn)
128
+
129
+ ControlFilter.add_member(:implementations, Shapes::ShapeRef.new(shape: ImplementationFilter, location_name: "Implementations"))
130
+ ControlFilter.struct_class = Types::ControlFilter
131
+
132
+ ControlMapping.add_member(:control_arn, Shapes::ShapeRef.new(shape: ControlArn, required: true, location_name: "ControlArn"))
133
+ ControlMapping.add_member(:mapping_type, Shapes::ShapeRef.new(shape: MappingType, required: true, location_name: "MappingType"))
134
+ ControlMapping.add_member(:mapping, Shapes::ShapeRef.new(shape: Mapping, required: true, location_name: "Mapping"))
135
+ ControlMapping.struct_class = Types::ControlMapping
136
+
137
+ ControlMappingFilter.add_member(:control_arns, Shapes::ShapeRef.new(shape: ControlArnFilterList, location_name: "ControlArns"))
138
+ ControlMappingFilter.add_member(:common_control_arns, Shapes::ShapeRef.new(shape: CommonControlArnFilterList, location_name: "CommonControlArns"))
139
+ ControlMappingFilter.add_member(:mapping_types, Shapes::ShapeRef.new(shape: MappingTypeFilterList, location_name: "MappingTypes"))
140
+ ControlMappingFilter.struct_class = Types::ControlMappingFilter
141
+
142
+ ControlMappings.member = Shapes::ShapeRef.new(shape: ControlMapping)
143
+
97
144
  ControlParameter.add_member(:name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Name"))
98
145
  ControlParameter.struct_class = Types::ControlParameter
99
146
 
100
147
  ControlParameters.member = Shapes::ShapeRef.new(shape: ControlParameter)
101
148
 
102
149
  ControlSummary.add_member(:arn, Shapes::ShapeRef.new(shape: ControlArn, required: true, location_name: "Arn"))
150
+ ControlSummary.add_member(:aliases, Shapes::ShapeRef.new(shape: ControlAliases, location_name: "Aliases"))
103
151
  ControlSummary.add_member(:name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Name"))
104
152
  ControlSummary.add_member(:description, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Description"))
105
153
  ControlSummary.add_member(:behavior, Shapes::ShapeRef.new(shape: ControlBehavior, location_name: "Behavior"))
106
154
  ControlSummary.add_member(:severity, Shapes::ShapeRef.new(shape: ControlSeverity, location_name: "Severity"))
107
155
  ControlSummary.add_member(:implementation, Shapes::ShapeRef.new(shape: ImplementationSummary, location_name: "Implementation"))
108
156
  ControlSummary.add_member(:create_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreateTime"))
157
+ ControlSummary.add_member(:governed_resources, Shapes::ShapeRef.new(shape: GovernedResources, location_name: "GovernedResources"))
109
158
  ControlSummary.struct_class = Types::ControlSummary
110
159
 
111
160
  Controls.member = Shapes::ShapeRef.new(shape: ControlSummary)
@@ -126,10 +175,15 @@ module Aws::ControlCatalog
126
175
 
127
176
  DomainSummaryList.member = Shapes::ShapeRef.new(shape: DomainSummary)
128
177
 
178
+ FrameworkMappingDetails.add_member(:name, Shapes::ShapeRef.new(shape: FrameworkName, required: true, location_name: "Name"))
179
+ FrameworkMappingDetails.add_member(:item, Shapes::ShapeRef.new(shape: FrameworkItem, required: true, location_name: "Item"))
180
+ FrameworkMappingDetails.struct_class = Types::FrameworkMappingDetails
181
+
129
182
  GetControlRequest.add_member(:control_arn, Shapes::ShapeRef.new(shape: ControlArn, required: true, location_name: "ControlArn"))
130
183
  GetControlRequest.struct_class = Types::GetControlRequest
131
184
 
132
185
  GetControlResponse.add_member(:arn, Shapes::ShapeRef.new(shape: ControlArn, required: true, location_name: "Arn"))
186
+ GetControlResponse.add_member(:aliases, Shapes::ShapeRef.new(shape: ControlAliases, location_name: "Aliases"))
133
187
  GetControlResponse.add_member(:name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Name"))
134
188
  GetControlResponse.add_member(:description, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Description"))
135
189
  GetControlResponse.add_member(:behavior, Shapes::ShapeRef.new(shape: ControlBehavior, required: true, location_name: "Behavior"))
@@ -138,16 +192,27 @@ module Aws::ControlCatalog
138
192
  GetControlResponse.add_member(:implementation, Shapes::ShapeRef.new(shape: ImplementationDetails, location_name: "Implementation"))
139
193
  GetControlResponse.add_member(:parameters, Shapes::ShapeRef.new(shape: ControlParameters, location_name: "Parameters"))
140
194
  GetControlResponse.add_member(:create_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreateTime"))
195
+ GetControlResponse.add_member(:governed_resources, Shapes::ShapeRef.new(shape: GovernedResources, location_name: "GovernedResources"))
141
196
  GetControlResponse.struct_class = Types::GetControlResponse
142
197
 
198
+ GovernedResources.member = Shapes::ShapeRef.new(shape: GovernedResource)
199
+
143
200
  ImplementationDetails.add_member(:type, Shapes::ShapeRef.new(shape: ImplementationType, required: true, location_name: "Type"))
144
201
  ImplementationDetails.add_member(:identifier, Shapes::ShapeRef.new(shape: ImplementationIdentifier, location_name: "Identifier"))
145
202
  ImplementationDetails.struct_class = Types::ImplementationDetails
146
203
 
204
+ ImplementationFilter.add_member(:types, Shapes::ShapeRef.new(shape: ImplementationTypeFilterList, location_name: "Types"))
205
+ ImplementationFilter.add_member(:identifiers, Shapes::ShapeRef.new(shape: ImplementationIdentifierFilterList, location_name: "Identifiers"))
206
+ ImplementationFilter.struct_class = Types::ImplementationFilter
207
+
208
+ ImplementationIdentifierFilterList.member = Shapes::ShapeRef.new(shape: ImplementationIdentifier)
209
+
147
210
  ImplementationSummary.add_member(:type, Shapes::ShapeRef.new(shape: ImplementationType, required: true, location_name: "Type"))
148
211
  ImplementationSummary.add_member(:identifier, Shapes::ShapeRef.new(shape: ImplementationIdentifier, location_name: "Identifier"))
149
212
  ImplementationSummary.struct_class = Types::ImplementationSummary
150
213
 
214
+ ImplementationTypeFilterList.member = Shapes::ShapeRef.new(shape: ImplementationType)
215
+
151
216
  InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
152
217
  InternalServerException.struct_class = Types::InternalServerException
153
218
 
@@ -160,8 +225,18 @@ module Aws::ControlCatalog
160
225
  ListCommonControlsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "NextToken"))
161
226
  ListCommonControlsResponse.struct_class = Types::ListCommonControlsResponse
162
227
 
228
+ ListControlMappingsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location: "querystring", location_name: "nextToken"))
229
+ ListControlMappingsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxListControlMappingsResults, location: "querystring", location_name: "maxResults"))
230
+ ListControlMappingsRequest.add_member(:filter, Shapes::ShapeRef.new(shape: ControlMappingFilter, location_name: "Filter"))
231
+ ListControlMappingsRequest.struct_class = Types::ListControlMappingsRequest
232
+
233
+ ListControlMappingsResponse.add_member(:control_mappings, Shapes::ShapeRef.new(shape: ControlMappings, required: true, location_name: "ControlMappings"))
234
+ ListControlMappingsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "NextToken"))
235
+ ListControlMappingsResponse.struct_class = Types::ListControlMappingsResponse
236
+
163
237
  ListControlsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location: "querystring", location_name: "nextToken"))
164
238
  ListControlsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxListControlsResults, location: "querystring", location_name: "maxResults"))
239
+ ListControlsRequest.add_member(:filter, Shapes::ShapeRef.new(shape: ControlFilter, location_name: "Filter"))
165
240
  ListControlsRequest.struct_class = Types::ListControlsRequest
166
241
 
167
242
  ListControlsResponse.add_member(:controls, Shapes::ShapeRef.new(shape: Controls, required: true, location_name: "Controls"))
@@ -185,6 +260,16 @@ module Aws::ControlCatalog
185
260
  ListObjectivesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "NextToken"))
186
261
  ListObjectivesResponse.struct_class = Types::ListObjectivesResponse
187
262
 
263
+ Mapping.add_member(:framework, Shapes::ShapeRef.new(shape: FrameworkMappingDetails, location_name: "Framework"))
264
+ Mapping.add_member(:common_control, Shapes::ShapeRef.new(shape: CommonControlMappingDetails, location_name: "CommonControl"))
265
+ Mapping.add_member(:unknown, Shapes::ShapeRef.new(shape: nil, location_name: 'unknown'))
266
+ Mapping.add_member_subclass(:framework, Types::Mapping::Framework)
267
+ Mapping.add_member_subclass(:common_control, Types::Mapping::CommonControl)
268
+ Mapping.add_member_subclass(:unknown, Types::Mapping::Unknown)
269
+ Mapping.struct_class = Types::Mapping
270
+
271
+ MappingTypeFilterList.member = Shapes::ShapeRef.new(shape: MappingType)
272
+
188
273
  ObjectiveFilter.add_member(:domains, Shapes::ShapeRef.new(shape: DomainResourceFilterList, location_name: "Domains"))
189
274
  ObjectiveFilter.struct_class = Types::ObjectiveFilter
190
275
 
@@ -266,6 +351,24 @@ module Aws::ControlCatalog
266
351
  )
267
352
  end)
268
353
 
354
+ api.add_operation(:list_control_mappings, Seahorse::Model::Operation.new.tap do |o|
355
+ o.name = "ListControlMappings"
356
+ o.http_method = "POST"
357
+ o.http_request_uri = "/list-control-mappings"
358
+ o.input = Shapes::ShapeRef.new(shape: ListControlMappingsRequest)
359
+ o.output = Shapes::ShapeRef.new(shape: ListControlMappingsResponse)
360
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
361
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
362
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
363
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
364
+ o[:pager] = Aws::Pager.new(
365
+ limit_key: "max_results",
366
+ tokens: {
367
+ "next_token" => "next_token"
368
+ }
369
+ )
370
+ end)
371
+
269
372
  api.add_operation(:list_controls, Seahorse::Model::Operation.new.tap do |o|
270
373
  o.name = "ListControls"
271
374
  o.http_method = "POST"
@@ -68,8 +68,7 @@ module Aws::ControlCatalog
68
68
  # The objective that's used as filter criteria.
69
69
  #
70
70
  # You can use this parameter to specify one objective ARN at a time.
71
- # Passing multiple ARNs in the `CommonControlFilter` isn’t currently
72
- # supported.
71
+ # Passing multiple ARNs in the `CommonControlFilter` isn’t supported.
73
72
  # @return [Array<Types::ObjectiveResourceFilter>]
74
73
  #
75
74
  # @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/CommonControlFilter AWS API Documentation
@@ -80,6 +79,23 @@ module Aws::ControlCatalog
80
79
  include Aws::Structure
81
80
  end
82
81
 
82
+ # A structure that contains details about a common control mapping. In
83
+ # particular, it returns the Amazon Resource Name (ARN) of the common
84
+ # control.
85
+ #
86
+ # @!attribute [rw] common_control_arn
87
+ # The Amazon Resource Name (ARN) that identifies the common control in
88
+ # the mapping.
89
+ # @return [String]
90
+ #
91
+ # @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/CommonControlMappingDetails AWS API Documentation
92
+ #
93
+ class CommonControlMappingDetails < Struct.new(
94
+ :common_control_arn)
95
+ SENSITIVE = []
96
+ include Aws::Structure
97
+ end
98
+
83
99
  # A summary of metadata for a common control.
84
100
  #
85
101
  # @!attribute [rw] arn
@@ -124,6 +140,85 @@ module Aws::ControlCatalog
124
140
  include Aws::Structure
125
141
  end
126
142
 
143
+ # A structure that defines filtering criteria for the ListControls
144
+ # operation. You can use this filter to narrow down the list of controls
145
+ # based on their implementation details.
146
+ #
147
+ # @!attribute [rw] implementations
148
+ # A filter that narrows the results to controls with specific
149
+ # implementation types or identifiers. This field allows you to find
150
+ # controls that are implemented by specific Amazon Web Services
151
+ # services or with specific service identifiers.
152
+ # @return [Types::ImplementationFilter]
153
+ #
154
+ # @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ControlFilter AWS API Documentation
155
+ #
156
+ class ControlFilter < Struct.new(
157
+ :implementations)
158
+ SENSITIVE = []
159
+ include Aws::Structure
160
+ end
161
+
162
+ # A structure that contains information about a control mapping,
163
+ # including the control ARN, mapping type, and mapping details.
164
+ #
165
+ # @!attribute [rw] control_arn
166
+ # The Amazon Resource Name (ARN) that identifies the control in the
167
+ # mapping.
168
+ # @return [String]
169
+ #
170
+ # @!attribute [rw] mapping_type
171
+ # The type of mapping relationship between the control and other
172
+ # entities. Indicates whether the mapping is to a framework or common
173
+ # control.
174
+ # @return [String]
175
+ #
176
+ # @!attribute [rw] mapping
177
+ # The details of the mapping relationship, containing either framework
178
+ # or common control information.
179
+ # @return [Types::Mapping]
180
+ #
181
+ # @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ControlMapping AWS API Documentation
182
+ #
183
+ class ControlMapping < Struct.new(
184
+ :control_arn,
185
+ :mapping_type,
186
+ :mapping)
187
+ SENSITIVE = []
188
+ include Aws::Structure
189
+ end
190
+
191
+ # A structure that defines filtering criteria for the
192
+ # ListControlMappings operation. You can use this filter to narrow down
193
+ # the list of control mappings based on control ARNs, common control
194
+ # ARNs, or mapping types.
195
+ #
196
+ # @!attribute [rw] control_arns
197
+ # A list of control ARNs to filter the mappings. When specified, only
198
+ # mappings associated with these controls are returned.
199
+ # @return [Array<String>]
200
+ #
201
+ # @!attribute [rw] common_control_arns
202
+ # A list of common control ARNs to filter the mappings. When
203
+ # specified, only mappings associated with these common controls are
204
+ # returned.
205
+ # @return [Array<String>]
206
+ #
207
+ # @!attribute [rw] mapping_types
208
+ # A list of mapping types to filter the mappings. When specified, only
209
+ # mappings of these types are returned.
210
+ # @return [Array<String>]
211
+ #
212
+ # @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ControlMappingFilter AWS API Documentation
213
+ #
214
+ class ControlMappingFilter < Struct.new(
215
+ :control_arns,
216
+ :common_control_arns,
217
+ :mapping_types)
218
+ SENSITIVE = []
219
+ include Aws::Structure
220
+ end
221
+
127
222
  # Five types of control parameters are supported.
128
223
  #
129
224
  # * **AllowedRegions**: List of Amazon Web Services Regions exempted
@@ -196,6 +291,13 @@ module Aws::ControlCatalog
196
291
  # The Amazon Resource Name (ARN) of the control.
197
292
  # @return [String]
198
293
  #
294
+ # @!attribute [rw] aliases
295
+ # A list of alternative identifiers for the control. These are
296
+ # human-readable designators, such as `SH.S3.1`. Several aliases can
297
+ # refer to the same control across different Amazon Web Services
298
+ # services or compliance frameworks.
299
+ # @return [Array<String>]
300
+ #
199
301
  # @!attribute [rw] name
200
302
  # The display name of the control.
201
303
  # @return [String]
@@ -223,16 +325,29 @@ module Aws::ControlCatalog
223
325
  # of its life) as a governance capability in Amazon Web Services.
224
326
  # @return [Time]
225
327
  #
328
+ # @!attribute [rw] governed_resources
329
+ # A list of Amazon Web Services resource types that are governed by
330
+ # this control. This information helps you understand which controls
331
+ # can govern certain types of resources, and conversely, which
332
+ # resources are affected when the control is implemented. The
333
+ # resources are represented as Amazon Web Services CloudFormation
334
+ # resource types. If `GovernedResources` cannot be represented by
335
+ # available CloudFormation resource types, it’s returned as an empty
336
+ # list.
337
+ # @return [Array<String>]
338
+ #
226
339
  # @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ControlSummary AWS API Documentation
227
340
  #
228
341
  class ControlSummary < Struct.new(
229
342
  :arn,
343
+ :aliases,
230
344
  :name,
231
345
  :description,
232
346
  :behavior,
233
347
  :severity,
234
348
  :implementation,
235
- :create_time)
349
+ :create_time,
350
+ :governed_resources)
236
351
  SENSITIVE = []
237
352
  include Aws::Structure
238
353
  end
@@ -285,6 +400,28 @@ module Aws::ControlCatalog
285
400
  include Aws::Structure
286
401
  end
287
402
 
403
+ # A structure that contains details about a framework mapping, including
404
+ # the framework name and specific item within the framework that the
405
+ # control maps to.
406
+ #
407
+ # @!attribute [rw] name
408
+ # The name of the compliance framework that the control maps to.
409
+ # @return [String]
410
+ #
411
+ # @!attribute [rw] item
412
+ # The specific item or requirement within the framework that the
413
+ # control maps to.
414
+ # @return [String]
415
+ #
416
+ # @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/FrameworkMappingDetails AWS API Documentation
417
+ #
418
+ class FrameworkMappingDetails < Struct.new(
419
+ :name,
420
+ :item)
421
+ SENSITIVE = []
422
+ include Aws::Structure
423
+ end
424
+
288
425
  # @!attribute [rw] control_arn
289
426
  # The Amazon Resource Name (ARN) of the control. It has one of the
290
427
  # following formats:
@@ -315,6 +452,13 @@ module Aws::ControlCatalog
315
452
  # The Amazon Resource Name (ARN) of the control.
316
453
  # @return [String]
317
454
  #
455
+ # @!attribute [rw] aliases
456
+ # A list of alternative identifiers for the control. These are
457
+ # human-readable designators, such as `SH.S3.1`. Several aliases can
458
+ # refer to the same control across different Amazon Web Services
459
+ # services or compliance frameworks.
460
+ # @return [Array<String>]
461
+ #
318
462
  # @!attribute [rw] name
319
463
  # The display name of the control.
320
464
  # @return [String]
@@ -334,8 +478,8 @@ module Aws::ControlCatalog
334
478
  #
335
479
  # @!attribute [rw] region_configuration
336
480
  # Returns information about the control, including the scope of the
337
- # control, if enabled, and the Regions in which the control currently
338
- # is available for deployment. For more information about scope, see
481
+ # control, if enabled, and the Regions in which the control is
482
+ # available for deployment. For more information about scope, see
339
483
  # [Global services][1].
340
484
  #
341
485
  # If you are applying controls through an Amazon Web Services Control
@@ -370,10 +514,22 @@ module Aws::ControlCatalog
370
514
  # of its life) as a governance capability in Amazon Web Services.
371
515
  # @return [Time]
372
516
  #
517
+ # @!attribute [rw] governed_resources
518
+ # A list of Amazon Web Services resource types that are governed by
519
+ # this control. This information helps you understand which controls
520
+ # can govern certain types of resources, and conversely, which
521
+ # resources are affected when the control is implemented. The
522
+ # resources are represented as Amazon Web Services CloudFormation
523
+ # resource types. If `GovernedResources` cannot be represented by
524
+ # available CloudFormation resource types, it’s returned as an empty
525
+ # list.
526
+ # @return [Array<String>]
527
+ #
373
528
  # @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/GetControlResponse AWS API Documentation
374
529
  #
375
530
  class GetControlResponse < Struct.new(
376
531
  :arn,
532
+ :aliases,
377
533
  :name,
378
534
  :description,
379
535
  :behavior,
@@ -381,7 +537,8 @@ module Aws::ControlCatalog
381
537
  :region_configuration,
382
538
  :implementation,
383
539
  :parameters,
384
- :create_time)
540
+ :create_time,
541
+ :governed_resources)
385
542
  SENSITIVE = []
386
543
  include Aws::Structure
387
544
  end
@@ -433,6 +590,33 @@ module Aws::ControlCatalog
433
590
  include Aws::Structure
434
591
  end
435
592
 
593
+ # A structure that defines filtering criteria for control
594
+ # implementations. You can use this filter to find controls that are
595
+ # implemented by specific Amazon Web Services services or with specific
596
+ # service identifiers.
597
+ #
598
+ # @!attribute [rw] types
599
+ # A list of implementation types that can serve as filters. For
600
+ # example, you can filter for controls implemented as Amazon Web
601
+ # Services Config Rules by specifying AWS::Config::ConfigRule as a
602
+ # type.
603
+ # @return [Array<String>]
604
+ #
605
+ # @!attribute [rw] identifiers
606
+ # A list of service-specific identifiers that can serve as filters.
607
+ # For example, you can filter for controls with specific Amazon Web
608
+ # Services Config Rule IDs or Security Hub Control IDs.
609
+ # @return [Array<String>]
610
+ #
611
+ # @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ImplementationFilter AWS API Documentation
612
+ #
613
+ class ImplementationFilter < Struct.new(
614
+ :types,
615
+ :identifiers)
616
+ SENSITIVE = []
617
+ include Aws::Structure
618
+ end
619
+
436
620
  # A summary of how the control is implemented, including the Amazon Web
437
621
  # Services service that enforces the control and its service-specific
438
622
  # identifier. For example, the value of this field could indicate that
@@ -489,8 +673,7 @@ module Aws::ControlCatalog
489
673
  # An optional filter that narrows the results to a specific objective.
490
674
  #
491
675
  # This filter allows you to specify one objective ARN at a time.
492
- # Passing multiple ARNs in the `CommonControlFilter` isn’t currently
493
- # supported.
676
+ # Passing multiple ARNs in the `CommonControlFilter` isn’t supported.
494
677
  # @return [Types::CommonControlFilter]
495
678
  #
496
679
  # @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ListCommonControlsRequest AWS API Documentation
@@ -529,11 +712,60 @@ module Aws::ControlCatalog
529
712
  # The maximum number of results on a page or for an API request call.
530
713
  # @return [Integer]
531
714
  #
715
+ # @!attribute [rw] filter
716
+ # An optional filter that narrows the results to specific control
717
+ # mappings based on control ARNs, common control ARNs, or mapping
718
+ # types.
719
+ # @return [Types::ControlMappingFilter]
720
+ #
721
+ # @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ListControlMappingsRequest AWS API Documentation
722
+ #
723
+ class ListControlMappingsRequest < Struct.new(
724
+ :next_token,
725
+ :max_results,
726
+ :filter)
727
+ SENSITIVE = []
728
+ include Aws::Structure
729
+ end
730
+
731
+ # @!attribute [rw] control_mappings
732
+ # The list of control mappings that the ListControlMappings API
733
+ # returns.
734
+ # @return [Array<Types::ControlMapping>]
735
+ #
736
+ # @!attribute [rw] next_token
737
+ # The pagination token that's used to fetch the next set of results.
738
+ # @return [String]
739
+ #
740
+ # @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ListControlMappingsResponse AWS API Documentation
741
+ #
742
+ class ListControlMappingsResponse < Struct.new(
743
+ :control_mappings,
744
+ :next_token)
745
+ SENSITIVE = []
746
+ include Aws::Structure
747
+ end
748
+
749
+ # @!attribute [rw] next_token
750
+ # The pagination token that's used to fetch the next set of results.
751
+ # @return [String]
752
+ #
753
+ # @!attribute [rw] max_results
754
+ # The maximum number of results on a page or for an API request call.
755
+ # @return [Integer]
756
+ #
757
+ # @!attribute [rw] filter
758
+ # An optional filter that narrows the results to controls with
759
+ # specific implementation types or identifiers. If you don't provide
760
+ # a filter, the operation returns all available controls.
761
+ # @return [Types::ControlFilter]
762
+ #
532
763
  # @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ListControlsRequest AWS API Documentation
533
764
  #
534
765
  class ListControlsRequest < Struct.new(
535
766
  :next_token,
536
- :max_results)
767
+ :max_results,
768
+ :filter)
537
769
  SENSITIVE = []
538
770
  include Aws::Structure
539
771
  end
@@ -602,7 +834,7 @@ module Aws::ControlCatalog
602
834
  # An optional filter that narrows the results to a specific domain.
603
835
  #
604
836
  # This filter allows you to specify one domain ARN at a time. Passing
605
- # multiple ARNs in the `ObjectiveFilter` isn’t currently supported.
837
+ # multiple ARNs in the `ObjectiveFilter` isn’t supported.
606
838
  # @return [Types::ObjectiveFilter]
607
839
  #
608
840
  # @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ListObjectivesRequest AWS API Documentation
@@ -632,6 +864,36 @@ module Aws::ControlCatalog
632
864
  include Aws::Structure
633
865
  end
634
866
 
867
+ # A structure that contains the details of a mapping relationship, which
868
+ # can be either to a framework or to a common control.
869
+ #
870
+ # @note Mapping is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of Mapping corresponding to the set member.
871
+ #
872
+ # @!attribute [rw] framework
873
+ # The framework mapping details when the mapping type relates to a
874
+ # compliance framework.
875
+ # @return [Types::FrameworkMappingDetails]
876
+ #
877
+ # @!attribute [rw] common_control
878
+ # The common control mapping details when the mapping type relates to
879
+ # a common control.
880
+ # @return [Types::CommonControlMappingDetails]
881
+ #
882
+ # @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/Mapping AWS API Documentation
883
+ #
884
+ class Mapping < Struct.new(
885
+ :framework,
886
+ :common_control,
887
+ :unknown)
888
+ SENSITIVE = []
889
+ include Aws::Structure
890
+ include Aws::Structure::Union
891
+
892
+ class Framework < Mapping; end
893
+ class CommonControl < Mapping; end
894
+ class Unknown < Mapping; end
895
+ end
896
+
635
897
  # An optional filter that narrows the list of objectives to a specific
636
898
  # domain.
637
899
  #
@@ -639,8 +901,7 @@ module Aws::ControlCatalog
639
901
  # The domain that's used as filter criteria.
640
902
  #
641
903
  # You can use this parameter to specify one domain ARN at a time.
642
- # Passing multiple ARNs in the `ObjectiveFilter` isn’t currently
643
- # supported.
904
+ # Passing multiple ARNs in the `ObjectiveFilter` isn’t supported.
644
905
  # @return [Array<Types::DomainResourceFilter>]
645
906
  #
646
907
  # @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ObjectiveFilter AWS API Documentation
@@ -705,9 +966,9 @@ module Aws::ControlCatalog
705
966
  end
706
967
 
707
968
  # Returns information about the control, including the scope of the
708
- # control, if enabled, and the Regions in which the control currently is
709
- # available for deployment. For more information about scope, see
710
- # [Global services][1].
969
+ # control, if enabled, and the Regions in which the control is available
970
+ # for deployment. For more information about scope, see [Global
971
+ # services][1].
711
972
  #
712
973
  # If you are applying controls through an Amazon Web Services Control
713
974
  # Tower landing zone environment, remember that the values returned in
@@ -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.25.0'
58
+ GEM_VERSION = '1.26.0'
59
59
 
60
60
  end
61
61
 
data/sig/client.rbs CHANGED
@@ -80,6 +80,7 @@ module Aws
80
80
  interface _GetControlResponseSuccess
81
81
  include ::Seahorse::Client::_ResponseSuccess[Types::GetControlResponse]
82
82
  def arn: () -> ::String
83
+ def aliases: () -> ::Array[::String]
83
84
  def name: () -> ::String
84
85
  def description: () -> ::String
85
86
  def behavior: () -> ("PREVENTIVE" | "PROACTIVE" | "DETECTIVE")
@@ -88,6 +89,7 @@ module Aws
88
89
  def implementation: () -> Types::ImplementationDetails
89
90
  def parameters: () -> ::Array[Types::ControlParameter]
90
91
  def create_time: () -> ::Time
92
+ def governed_resources: () -> ::Array[::String]
91
93
  end
92
94
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ControlCatalog/Client.html#get_control-instance_method
93
95
  def get_control: (
@@ -114,6 +116,23 @@ module Aws
114
116
  ) -> _ListCommonControlsResponseSuccess
115
117
  | (?Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _ListCommonControlsResponseSuccess
116
118
 
119
+ interface _ListControlMappingsResponseSuccess
120
+ include ::Seahorse::Client::_ResponseSuccess[Types::ListControlMappingsResponse]
121
+ def control_mappings: () -> ::Array[Types::ControlMapping]
122
+ def next_token: () -> ::String
123
+ end
124
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ControlCatalog/Client.html#list_control_mappings-instance_method
125
+ def list_control_mappings: (
126
+ ?next_token: ::String,
127
+ ?max_results: ::Integer,
128
+ ?filter: {
129
+ control_arns: Array[::String]?,
130
+ common_control_arns: Array[::String]?,
131
+ mapping_types: Array[("FRAMEWORK" | "COMMON_CONTROL")]?
132
+ }
133
+ ) -> _ListControlMappingsResponseSuccess
134
+ | (?Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _ListControlMappingsResponseSuccess
135
+
117
136
  interface _ListControlsResponseSuccess
118
137
  include ::Seahorse::Client::_ResponseSuccess[Types::ListControlsResponse]
119
138
  def controls: () -> ::Array[Types::ControlSummary]
@@ -122,7 +141,13 @@ module Aws
122
141
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ControlCatalog/Client.html#list_controls-instance_method
123
142
  def list_controls: (
124
143
  ?next_token: ::String,
125
- ?max_results: ::Integer
144
+ ?max_results: ::Integer,
145
+ ?filter: {
146
+ implementations: {
147
+ types: Array[::String]?,
148
+ identifiers: Array[::String]?
149
+ }?
150
+ }
126
151
  ) -> _ListControlsResponseSuccess
127
152
  | (?Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _ListControlsResponseSuccess
128
153
 
data/sig/types.rbs CHANGED
@@ -30,6 +30,11 @@ module Aws::ControlCatalog
30
30
  SENSITIVE: []
31
31
  end
32
32
 
33
+ class CommonControlMappingDetails
34
+ attr_accessor common_control_arn: ::String
35
+ SENSITIVE: []
36
+ end
37
+
33
38
  class CommonControlSummary
34
39
  attr_accessor arn: ::String
35
40
  attr_accessor name: ::String
@@ -41,6 +46,25 @@ module Aws::ControlCatalog
41
46
  SENSITIVE: []
42
47
  end
43
48
 
49
+ class ControlFilter
50
+ attr_accessor implementations: Types::ImplementationFilter
51
+ SENSITIVE: []
52
+ end
53
+
54
+ class ControlMapping
55
+ attr_accessor control_arn: ::String
56
+ attr_accessor mapping_type: ("FRAMEWORK" | "COMMON_CONTROL")
57
+ attr_accessor mapping: Types::Mapping
58
+ SENSITIVE: []
59
+ end
60
+
61
+ class ControlMappingFilter
62
+ attr_accessor control_arns: ::Array[::String]
63
+ attr_accessor common_control_arns: ::Array[::String]
64
+ attr_accessor mapping_types: ::Array[("FRAMEWORK" | "COMMON_CONTROL")]
65
+ SENSITIVE: []
66
+ end
67
+
44
68
  class ControlParameter
45
69
  attr_accessor name: ::String
46
70
  SENSITIVE: []
@@ -48,12 +72,14 @@ module Aws::ControlCatalog
48
72
 
49
73
  class ControlSummary
50
74
  attr_accessor arn: ::String
75
+ attr_accessor aliases: ::Array[::String]
51
76
  attr_accessor name: ::String
52
77
  attr_accessor description: ::String
53
78
  attr_accessor behavior: ("PREVENTIVE" | "PROACTIVE" | "DETECTIVE")
54
79
  attr_accessor severity: ("LOW" | "MEDIUM" | "HIGH" | "CRITICAL")
55
80
  attr_accessor implementation: Types::ImplementationSummary
56
81
  attr_accessor create_time: ::Time
82
+ attr_accessor governed_resources: ::Array[::String]
57
83
  SENSITIVE: []
58
84
  end
59
85
 
@@ -71,6 +97,12 @@ module Aws::ControlCatalog
71
97
  SENSITIVE: []
72
98
  end
73
99
 
100
+ class FrameworkMappingDetails
101
+ attr_accessor name: ::String
102
+ attr_accessor item: ::String
103
+ SENSITIVE: []
104
+ end
105
+
74
106
  class GetControlRequest
75
107
  attr_accessor control_arn: ::String
76
108
  SENSITIVE: []
@@ -78,6 +110,7 @@ module Aws::ControlCatalog
78
110
 
79
111
  class GetControlResponse
80
112
  attr_accessor arn: ::String
113
+ attr_accessor aliases: ::Array[::String]
81
114
  attr_accessor name: ::String
82
115
  attr_accessor description: ::String
83
116
  attr_accessor behavior: ("PREVENTIVE" | "PROACTIVE" | "DETECTIVE")
@@ -86,6 +119,7 @@ module Aws::ControlCatalog
86
119
  attr_accessor implementation: Types::ImplementationDetails
87
120
  attr_accessor parameters: ::Array[Types::ControlParameter]
88
121
  attr_accessor create_time: ::Time
122
+ attr_accessor governed_resources: ::Array[::String]
89
123
  SENSITIVE: []
90
124
  end
91
125
 
@@ -95,6 +129,12 @@ module Aws::ControlCatalog
95
129
  SENSITIVE: []
96
130
  end
97
131
 
132
+ class ImplementationFilter
133
+ attr_accessor types: ::Array[::String]
134
+ attr_accessor identifiers: ::Array[::String]
135
+ SENSITIVE: []
136
+ end
137
+
98
138
  class ImplementationSummary
99
139
  attr_accessor type: ::String
100
140
  attr_accessor identifier: ::String
@@ -119,9 +159,23 @@ module Aws::ControlCatalog
119
159
  SENSITIVE: []
120
160
  end
121
161
 
162
+ class ListControlMappingsRequest
163
+ attr_accessor next_token: ::String
164
+ attr_accessor max_results: ::Integer
165
+ attr_accessor filter: Types::ControlMappingFilter
166
+ SENSITIVE: []
167
+ end
168
+
169
+ class ListControlMappingsResponse
170
+ attr_accessor control_mappings: ::Array[Types::ControlMapping]
171
+ attr_accessor next_token: ::String
172
+ SENSITIVE: []
173
+ end
174
+
122
175
  class ListControlsRequest
123
176
  attr_accessor next_token: ::String
124
177
  attr_accessor max_results: ::Integer
178
+ attr_accessor filter: Types::ControlFilter
125
179
  SENSITIVE: []
126
180
  end
127
181
 
@@ -156,6 +210,20 @@ module Aws::ControlCatalog
156
210
  SENSITIVE: []
157
211
  end
158
212
 
213
+ class Mapping
214
+ attr_accessor framework: Types::FrameworkMappingDetails
215
+ attr_accessor common_control: Types::CommonControlMappingDetails
216
+ attr_accessor unknown: untyped
217
+ SENSITIVE: []
218
+
219
+ class Framework < Mapping
220
+ end
221
+ class CommonControl < Mapping
222
+ end
223
+ class Unknown < Mapping
224
+ end
225
+ end
226
+
159
227
  class ObjectiveFilter
160
228
  attr_accessor domains: ::Array[Types::DomainResourceFilter]
161
229
  SENSITIVE: []
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-controlcatalog
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.25.0
4
+ version: 1.26.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services