aws-sdk-controlcatalog 1.6.0 → 1.7.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-controlcatalog/client.rb +123 -18
- data/lib/aws-sdk-controlcatalog/client_api.rb +90 -10
- data/lib/aws-sdk-controlcatalog/endpoints.rb +28 -0
- data/lib/aws-sdk-controlcatalog/errors.rb +16 -0
- data/lib/aws-sdk-controlcatalog/plugins/endpoints.rb +4 -0
- data/lib/aws-sdk-controlcatalog/types.rb +234 -49
- data/lib/aws-sdk-controlcatalog/waiters.rb +15 -0
- data/lib/aws-sdk-controlcatalog.rb +3 -2
- data/sig/client.rbs +30 -4
- data/sig/errors.rbs +3 -0
- data/sig/types.rbs +51 -7
- metadata +5 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4adf62891e016d196a915a043344cd01d4d340b826067265f1c74ecbe1e13425
|
4
|
+
data.tar.gz: bdc5f61f1bb6dd08c7f0ad0178b4f1ac41e78ecca19661bd8db7e310374b318b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0a3df13f823fac2d935b536172cceb591402012d7027b5cd53b6c96087b2d36e08d999597f258d864f543a7d9fe3f5c934c781e8c59924dbc99b91e8868c5bc9
|
7
|
+
data.tar.gz: 4afd3291addf59a48ab7229ac22dfad001f7350f457326f166cbc7448ce2af58cc28641c25ec2b701eec9b168a318b46e3835bdaec84452ead6fb03cbf97dc72
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,11 @@
|
|
1
1
|
Unreleased Changes
|
2
2
|
------------------
|
3
3
|
|
4
|
+
1.7.0 (2024-08-01)
|
5
|
+
------------------
|
6
|
+
|
7
|
+
* Feature - AWS Control Tower provides two new public APIs controlcatalog:ListControls and controlcatalog:GetControl under controlcatalog service namespace, which enable customers to programmatically retrieve control metadata of available controls.
|
8
|
+
|
4
9
|
1.6.0 (2024-07-02)
|
5
10
|
------------------
|
6
11
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.7.0
|
@@ -425,6 +425,68 @@ module Aws::ControlCatalog
|
|
425
425
|
|
426
426
|
# @!group API Operations
|
427
427
|
|
428
|
+
# Returns details about a specific control, most notably a list of
|
429
|
+
# Amazon Web Services Regions where this control is supported. Input a
|
430
|
+
# value for the *ControlArn* parameter, in ARN form. `GetControl`
|
431
|
+
# accepts *controltower* or *controlcatalog* control ARNs as input.
|
432
|
+
# Returns a *controlcatalog* ARN format.
|
433
|
+
#
|
434
|
+
# In the API response, controls that have the value `GLOBAL` in the
|
435
|
+
# `Scope` field do not show the `DeployableRegions` field, because it
|
436
|
+
# does not apply. Controls that have the value `REGIONAL` in the `Scope`
|
437
|
+
# field return a value for the `DeployableRegions` field, as shown in
|
438
|
+
# the example.
|
439
|
+
#
|
440
|
+
# @option params [required, String] :control_arn
|
441
|
+
# The Amazon Resource Name (ARN) of the control. It has one of the
|
442
|
+
# following formats:
|
443
|
+
#
|
444
|
+
# *Global format*
|
445
|
+
#
|
446
|
+
# `arn:\{PARTITION\}:controlcatalog:::control/\{CONTROL_CATALOG_OPAQUE_ID\}`
|
447
|
+
#
|
448
|
+
# *Or Regional format*
|
449
|
+
#
|
450
|
+
# `arn:\{PARTITION\}:controltower:\{REGION\}::control/\{CONTROL_TOWER_OPAQUE_ID\}`
|
451
|
+
#
|
452
|
+
# Here is a more general pattern that covers Amazon Web Services Control
|
453
|
+
# Tower and Control Catalog ARNs:
|
454
|
+
#
|
455
|
+
# `^arn:(aws(?:[-a-z]*)?):(controlcatalog|controltower):[a-zA-Z0-9-]*::control/[0-9a-zA-Z_\\-]+$`
|
456
|
+
#
|
457
|
+
# @return [Types::GetControlResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
458
|
+
#
|
459
|
+
# * {Types::GetControlResponse#arn #arn} => String
|
460
|
+
# * {Types::GetControlResponse#name #name} => String
|
461
|
+
# * {Types::GetControlResponse#description #description} => String
|
462
|
+
# * {Types::GetControlResponse#behavior #behavior} => String
|
463
|
+
# * {Types::GetControlResponse#region_configuration #region_configuration} => Types::RegionConfiguration
|
464
|
+
#
|
465
|
+
# @example Request syntax with placeholder values
|
466
|
+
#
|
467
|
+
# resp = client.get_control({
|
468
|
+
# control_arn: "ControlArn", # required
|
469
|
+
# })
|
470
|
+
#
|
471
|
+
# @example Response structure
|
472
|
+
#
|
473
|
+
# resp.arn #=> String
|
474
|
+
# resp.name #=> String
|
475
|
+
# resp.description #=> String
|
476
|
+
# resp.behavior #=> String, one of "PREVENTIVE", "PROACTIVE", "DETECTIVE"
|
477
|
+
# resp.region_configuration.scope #=> String, one of "GLOBAL", "REGIONAL"
|
478
|
+
# resp.region_configuration.deployable_regions #=> Array
|
479
|
+
# resp.region_configuration.deployable_regions[0] #=> String
|
480
|
+
#
|
481
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/GetControl AWS API Documentation
|
482
|
+
#
|
483
|
+
# @overload get_control(params = {})
|
484
|
+
# @param [Hash] params ({})
|
485
|
+
def get_control(params = {}, options = {})
|
486
|
+
req = build_request(:get_control, params)
|
487
|
+
req.send_request(options)
|
488
|
+
end
|
489
|
+
|
428
490
|
# Returns a paginated list of common controls from the Amazon Web
|
429
491
|
# Services Control Catalog.
|
430
492
|
#
|
@@ -432,18 +494,18 @@ module Aws::ControlCatalog
|
|
432
494
|
# specific objective. If you don’t provide a filter, the operation
|
433
495
|
# returns all common controls.
|
434
496
|
#
|
435
|
-
# @option params [Types::CommonControlFilter] :common_control_filter
|
436
|
-
# An optional filter that narrows the results to a specific objective.
|
437
|
-
#
|
438
|
-
# This filter allows you to specify one objective ARN at a time. Passing
|
439
|
-
# multiple ARNs in the `CommonControlFilter` isn’t currently supported.
|
440
|
-
#
|
441
497
|
# @option params [Integer] :max_results
|
442
498
|
# The maximum number of results on a page or for an API request call.
|
443
499
|
#
|
444
500
|
# @option params [String] :next_token
|
445
501
|
# The pagination token that's used to fetch the next set of results.
|
446
502
|
#
|
503
|
+
# @option params [Types::CommonControlFilter] :common_control_filter
|
504
|
+
# An optional filter that narrows the results to a specific objective.
|
505
|
+
#
|
506
|
+
# This filter allows you to specify one objective ARN at a time. Passing
|
507
|
+
# multiple ARNs in the `CommonControlFilter` isn’t currently supported.
|
508
|
+
#
|
447
509
|
# @return [Types::ListCommonControlsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
448
510
|
#
|
449
511
|
# * {Types::ListCommonControlsResponse#common_controls #common_controls} => Array<Types::CommonControlSummary>
|
@@ -454,6 +516,8 @@ module Aws::ControlCatalog
|
|
454
516
|
# @example Request syntax with placeholder values
|
455
517
|
#
|
456
518
|
# resp = client.list_common_controls({
|
519
|
+
# max_results: 1,
|
520
|
+
# next_token: "PaginationToken",
|
457
521
|
# common_control_filter: {
|
458
522
|
# objectives: [
|
459
523
|
# {
|
@@ -461,22 +525,20 @@ module Aws::ControlCatalog
|
|
461
525
|
# },
|
462
526
|
# ],
|
463
527
|
# },
|
464
|
-
# max_results: 1,
|
465
|
-
# next_token: "PaginationToken",
|
466
528
|
# })
|
467
529
|
#
|
468
530
|
# @example Response structure
|
469
531
|
#
|
470
532
|
# resp.common_controls #=> Array
|
471
533
|
# resp.common_controls[0].arn #=> String
|
472
|
-
# resp.common_controls[0].
|
534
|
+
# resp.common_controls[0].name #=> String
|
473
535
|
# resp.common_controls[0].description #=> String
|
474
536
|
# resp.common_controls[0].domain.arn #=> String
|
475
537
|
# resp.common_controls[0].domain.name #=> String
|
476
|
-
# resp.common_controls[0].last_update_time #=> Time
|
477
|
-
# resp.common_controls[0].name #=> String
|
478
538
|
# resp.common_controls[0].objective.arn #=> String
|
479
539
|
# resp.common_controls[0].objective.name #=> String
|
540
|
+
# resp.common_controls[0].create_time #=> Time
|
541
|
+
# resp.common_controls[0].last_update_time #=> Time
|
480
542
|
# resp.next_token #=> String
|
481
543
|
#
|
482
544
|
# @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ListCommonControls AWS API Documentation
|
@@ -488,6 +550,49 @@ module Aws::ControlCatalog
|
|
488
550
|
req.send_request(options)
|
489
551
|
end
|
490
552
|
|
553
|
+
# Returns a paginated list of all available controls in the Amazon Web
|
554
|
+
# Services Control Catalog library. Allows you to discover available
|
555
|
+
# controls. The list of controls is given as structures of type
|
556
|
+
# *controlSummary*. The ARN is returned in the global *controlcatalog*
|
557
|
+
# format, as shown in the examples.
|
558
|
+
#
|
559
|
+
# @option params [String] :next_token
|
560
|
+
# The pagination token that's used to fetch the next set of results.
|
561
|
+
#
|
562
|
+
# @option params [Integer] :max_results
|
563
|
+
# The maximum number of results on a page or for an API request call.
|
564
|
+
#
|
565
|
+
# @return [Types::ListControlsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
566
|
+
#
|
567
|
+
# * {Types::ListControlsResponse#controls #controls} => Array<Types::ControlSummary>
|
568
|
+
# * {Types::ListControlsResponse#next_token #next_token} => String
|
569
|
+
#
|
570
|
+
# The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
|
571
|
+
#
|
572
|
+
# @example Request syntax with placeholder values
|
573
|
+
#
|
574
|
+
# resp = client.list_controls({
|
575
|
+
# next_token: "PaginationToken",
|
576
|
+
# max_results: 1,
|
577
|
+
# })
|
578
|
+
#
|
579
|
+
# @example Response structure
|
580
|
+
#
|
581
|
+
# resp.controls #=> Array
|
582
|
+
# resp.controls[0].arn #=> String
|
583
|
+
# resp.controls[0].name #=> String
|
584
|
+
# resp.controls[0].description #=> String
|
585
|
+
# resp.next_token #=> String
|
586
|
+
#
|
587
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ListControls AWS API Documentation
|
588
|
+
#
|
589
|
+
# @overload list_controls(params = {})
|
590
|
+
# @param [Hash] params ({})
|
591
|
+
def list_controls(params = {}, options = {})
|
592
|
+
req = build_request(:list_controls, params)
|
593
|
+
req.send_request(options)
|
594
|
+
end
|
595
|
+
|
491
596
|
# Returns a paginated list of domains from the Amazon Web Services
|
492
597
|
# Control Catalog.
|
493
598
|
#
|
@@ -515,10 +620,10 @@ module Aws::ControlCatalog
|
|
515
620
|
#
|
516
621
|
# resp.domains #=> Array
|
517
622
|
# resp.domains[0].arn #=> String
|
518
|
-
# resp.domains[0].
|
623
|
+
# resp.domains[0].name #=> String
|
519
624
|
# resp.domains[0].description #=> String
|
625
|
+
# resp.domains[0].create_time #=> Time
|
520
626
|
# resp.domains[0].last_update_time #=> Time
|
521
|
-
# resp.domains[0].name #=> String
|
522
627
|
# resp.next_token #=> String
|
523
628
|
#
|
524
629
|
# @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ListDomains AWS API Documentation
|
@@ -551,8 +656,8 @@ module Aws::ControlCatalog
|
|
551
656
|
#
|
552
657
|
# @return [Types::ListObjectivesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
553
658
|
#
|
554
|
-
# * {Types::ListObjectivesResponse#next_token #next_token} => String
|
555
659
|
# * {Types::ListObjectivesResponse#objectives #objectives} => Array<Types::ObjectiveSummary>
|
660
|
+
# * {Types::ListObjectivesResponse#next_token #next_token} => String
|
556
661
|
#
|
557
662
|
# The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
|
558
663
|
#
|
@@ -572,15 +677,15 @@ module Aws::ControlCatalog
|
|
572
677
|
#
|
573
678
|
# @example Response structure
|
574
679
|
#
|
575
|
-
# resp.next_token #=> String
|
576
680
|
# resp.objectives #=> Array
|
577
681
|
# resp.objectives[0].arn #=> String
|
578
|
-
# resp.objectives[0].
|
682
|
+
# resp.objectives[0].name #=> String
|
579
683
|
# resp.objectives[0].description #=> String
|
580
684
|
# resp.objectives[0].domain.arn #=> String
|
581
685
|
# resp.objectives[0].domain.name #=> String
|
686
|
+
# resp.objectives[0].create_time #=> Time
|
582
687
|
# resp.objectives[0].last_update_time #=> Time
|
583
|
-
# resp.
|
688
|
+
# resp.next_token #=> String
|
584
689
|
#
|
585
690
|
# @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ListObjectives AWS API Documentation
|
586
691
|
#
|
@@ -604,7 +709,7 @@ module Aws::ControlCatalog
|
|
604
709
|
params: params,
|
605
710
|
config: config)
|
606
711
|
context[:gem_name] = 'aws-sdk-controlcatalog'
|
607
|
-
context[:gem_version] = '1.
|
712
|
+
context[:gem_version] = '1.7.0'
|
608
713
|
Seahorse::Client::Request.new(handlers, context)
|
609
714
|
end
|
610
715
|
|
@@ -20,19 +20,30 @@ module Aws::ControlCatalog
|
|
20
20
|
CommonControlFilter = Shapes::StructureShape.new(name: 'CommonControlFilter')
|
21
21
|
CommonControlSummary = Shapes::StructureShape.new(name: 'CommonControlSummary')
|
22
22
|
CommonControlSummaryList = Shapes::ListShape.new(name: 'CommonControlSummaryList')
|
23
|
+
ControlArn = Shapes::StringShape.new(name: 'ControlArn')
|
24
|
+
ControlBehavior = Shapes::StringShape.new(name: 'ControlBehavior')
|
25
|
+
ControlScope = Shapes::StringShape.new(name: 'ControlScope')
|
26
|
+
ControlSummary = Shapes::StructureShape.new(name: 'ControlSummary')
|
27
|
+
Controls = Shapes::ListShape.new(name: 'Controls')
|
28
|
+
DeployableRegions = Shapes::ListShape.new(name: 'DeployableRegions')
|
23
29
|
DomainArn = Shapes::StringShape.new(name: 'DomainArn')
|
24
30
|
DomainResourceFilter = Shapes::StructureShape.new(name: 'DomainResourceFilter')
|
25
31
|
DomainResourceFilterList = Shapes::ListShape.new(name: 'DomainResourceFilterList')
|
26
32
|
DomainSummary = Shapes::StructureShape.new(name: 'DomainSummary')
|
27
33
|
DomainSummaryList = Shapes::ListShape.new(name: 'DomainSummaryList')
|
34
|
+
GetControlRequest = Shapes::StructureShape.new(name: 'GetControlRequest')
|
35
|
+
GetControlResponse = Shapes::StructureShape.new(name: 'GetControlResponse')
|
28
36
|
InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
|
29
37
|
ListCommonControlsRequest = Shapes::StructureShape.new(name: 'ListCommonControlsRequest')
|
30
38
|
ListCommonControlsResponse = Shapes::StructureShape.new(name: 'ListCommonControlsResponse')
|
39
|
+
ListControlsRequest = Shapes::StructureShape.new(name: 'ListControlsRequest')
|
40
|
+
ListControlsResponse = Shapes::StructureShape.new(name: 'ListControlsResponse')
|
31
41
|
ListDomainsRequest = Shapes::StructureShape.new(name: 'ListDomainsRequest')
|
32
42
|
ListDomainsResponse = Shapes::StructureShape.new(name: 'ListDomainsResponse')
|
33
43
|
ListObjectivesRequest = Shapes::StructureShape.new(name: 'ListObjectivesRequest')
|
34
44
|
ListObjectivesResponse = Shapes::StructureShape.new(name: 'ListObjectivesResponse')
|
35
45
|
MaxListCommonControlsResults = Shapes::IntegerShape.new(name: 'MaxListCommonControlsResults')
|
46
|
+
MaxListControlsResults = Shapes::IntegerShape.new(name: 'MaxListControlsResults')
|
36
47
|
MaxListDomainsResults = Shapes::IntegerShape.new(name: 'MaxListDomainsResults')
|
37
48
|
MaxListObjectivesResults = Shapes::IntegerShape.new(name: 'MaxListObjectivesResults')
|
38
49
|
ObjectiveArn = Shapes::StringShape.new(name: 'ObjectiveArn')
|
@@ -42,6 +53,9 @@ module Aws::ControlCatalog
|
|
42
53
|
ObjectiveSummary = Shapes::StructureShape.new(name: 'ObjectiveSummary')
|
43
54
|
ObjectiveSummaryList = Shapes::ListShape.new(name: 'ObjectiveSummaryList')
|
44
55
|
PaginationToken = Shapes::StringShape.new(name: 'PaginationToken')
|
56
|
+
RegionCode = Shapes::StringShape.new(name: 'RegionCode')
|
57
|
+
RegionConfiguration = Shapes::StructureShape.new(name: 'RegionConfiguration')
|
58
|
+
ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
|
45
59
|
String = Shapes::StringShape.new(name: 'String')
|
46
60
|
ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
|
47
61
|
Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
|
@@ -62,42 +76,69 @@ module Aws::ControlCatalog
|
|
62
76
|
CommonControlFilter.struct_class = Types::CommonControlFilter
|
63
77
|
|
64
78
|
CommonControlSummary.add_member(:arn, Shapes::ShapeRef.new(shape: CommonControlArn, required: true, location_name: "Arn"))
|
65
|
-
CommonControlSummary.add_member(:
|
79
|
+
CommonControlSummary.add_member(:name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Name"))
|
66
80
|
CommonControlSummary.add_member(:description, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Description"))
|
67
81
|
CommonControlSummary.add_member(:domain, Shapes::ShapeRef.new(shape: AssociatedDomainSummary, required: true, location_name: "Domain"))
|
68
|
-
CommonControlSummary.add_member(:last_update_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "LastUpdateTime"))
|
69
|
-
CommonControlSummary.add_member(:name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Name"))
|
70
82
|
CommonControlSummary.add_member(:objective, Shapes::ShapeRef.new(shape: AssociatedObjectiveSummary, required: true, location_name: "Objective"))
|
83
|
+
CommonControlSummary.add_member(:create_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "CreateTime"))
|
84
|
+
CommonControlSummary.add_member(:last_update_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "LastUpdateTime"))
|
71
85
|
CommonControlSummary.struct_class = Types::CommonControlSummary
|
72
86
|
|
73
87
|
CommonControlSummaryList.member = Shapes::ShapeRef.new(shape: CommonControlSummary)
|
74
88
|
|
89
|
+
ControlSummary.add_member(:arn, Shapes::ShapeRef.new(shape: ControlArn, required: true, location_name: "Arn"))
|
90
|
+
ControlSummary.add_member(:name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Name"))
|
91
|
+
ControlSummary.add_member(:description, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Description"))
|
92
|
+
ControlSummary.struct_class = Types::ControlSummary
|
93
|
+
|
94
|
+
Controls.member = Shapes::ShapeRef.new(shape: ControlSummary)
|
95
|
+
|
96
|
+
DeployableRegions.member = Shapes::ShapeRef.new(shape: RegionCode)
|
97
|
+
|
75
98
|
DomainResourceFilter.add_member(:arn, Shapes::ShapeRef.new(shape: DomainArn, location_name: "Arn"))
|
76
99
|
DomainResourceFilter.struct_class = Types::DomainResourceFilter
|
77
100
|
|
78
101
|
DomainResourceFilterList.member = Shapes::ShapeRef.new(shape: DomainResourceFilter)
|
79
102
|
|
80
103
|
DomainSummary.add_member(:arn, Shapes::ShapeRef.new(shape: DomainArn, required: true, location_name: "Arn"))
|
81
|
-
DomainSummary.add_member(:
|
104
|
+
DomainSummary.add_member(:name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Name"))
|
82
105
|
DomainSummary.add_member(:description, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Description"))
|
106
|
+
DomainSummary.add_member(:create_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "CreateTime"))
|
83
107
|
DomainSummary.add_member(:last_update_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "LastUpdateTime"))
|
84
|
-
DomainSummary.add_member(:name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Name"))
|
85
108
|
DomainSummary.struct_class = Types::DomainSummary
|
86
109
|
|
87
110
|
DomainSummaryList.member = Shapes::ShapeRef.new(shape: DomainSummary)
|
88
111
|
|
112
|
+
GetControlRequest.add_member(:control_arn, Shapes::ShapeRef.new(shape: ControlArn, required: true, location_name: "ControlArn"))
|
113
|
+
GetControlRequest.struct_class = Types::GetControlRequest
|
114
|
+
|
115
|
+
GetControlResponse.add_member(:arn, Shapes::ShapeRef.new(shape: ControlArn, required: true, location_name: "Arn"))
|
116
|
+
GetControlResponse.add_member(:name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Name"))
|
117
|
+
GetControlResponse.add_member(:description, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Description"))
|
118
|
+
GetControlResponse.add_member(:behavior, Shapes::ShapeRef.new(shape: ControlBehavior, required: true, location_name: "Behavior"))
|
119
|
+
GetControlResponse.add_member(:region_configuration, Shapes::ShapeRef.new(shape: RegionConfiguration, required: true, location_name: "RegionConfiguration"))
|
120
|
+
GetControlResponse.struct_class = Types::GetControlResponse
|
121
|
+
|
89
122
|
InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
|
90
123
|
InternalServerException.struct_class = Types::InternalServerException
|
91
124
|
|
92
|
-
ListCommonControlsRequest.add_member(:common_control_filter, Shapes::ShapeRef.new(shape: CommonControlFilter, location_name: "CommonControlFilter"))
|
93
125
|
ListCommonControlsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxListCommonControlsResults, location: "querystring", location_name: "maxResults"))
|
94
126
|
ListCommonControlsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location: "querystring", location_name: "nextToken"))
|
127
|
+
ListCommonControlsRequest.add_member(:common_control_filter, Shapes::ShapeRef.new(shape: CommonControlFilter, location_name: "CommonControlFilter"))
|
95
128
|
ListCommonControlsRequest.struct_class = Types::ListCommonControlsRequest
|
96
129
|
|
97
130
|
ListCommonControlsResponse.add_member(:common_controls, Shapes::ShapeRef.new(shape: CommonControlSummaryList, required: true, location_name: "CommonControls"))
|
98
131
|
ListCommonControlsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "NextToken"))
|
99
132
|
ListCommonControlsResponse.struct_class = Types::ListCommonControlsResponse
|
100
133
|
|
134
|
+
ListControlsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location: "querystring", location_name: "nextToken"))
|
135
|
+
ListControlsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxListControlsResults, location: "querystring", location_name: "maxResults"))
|
136
|
+
ListControlsRequest.struct_class = Types::ListControlsRequest
|
137
|
+
|
138
|
+
ListControlsResponse.add_member(:controls, Shapes::ShapeRef.new(shape: Controls, required: true, location_name: "Controls"))
|
139
|
+
ListControlsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "NextToken"))
|
140
|
+
ListControlsResponse.struct_class = Types::ListControlsResponse
|
141
|
+
|
101
142
|
ListDomainsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxListDomainsResults, location: "querystring", location_name: "maxResults"))
|
102
143
|
ListDomainsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location: "querystring", location_name: "nextToken"))
|
103
144
|
ListDomainsRequest.struct_class = Types::ListDomainsRequest
|
@@ -111,8 +152,8 @@ module Aws::ControlCatalog
|
|
111
152
|
ListObjectivesRequest.add_member(:objective_filter, Shapes::ShapeRef.new(shape: ObjectiveFilter, location_name: "ObjectiveFilter"))
|
112
153
|
ListObjectivesRequest.struct_class = Types::ListObjectivesRequest
|
113
154
|
|
114
|
-
ListObjectivesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "NextToken"))
|
115
155
|
ListObjectivesResponse.add_member(:objectives, Shapes::ShapeRef.new(shape: ObjectiveSummaryList, required: true, location_name: "Objectives"))
|
156
|
+
ListObjectivesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "NextToken"))
|
116
157
|
ListObjectivesResponse.struct_class = Types::ListObjectivesResponse
|
117
158
|
|
118
159
|
ObjectiveFilter.add_member(:domains, Shapes::ShapeRef.new(shape: DomainResourceFilterList, location_name: "Domains"))
|
@@ -124,15 +165,22 @@ module Aws::ControlCatalog
|
|
124
165
|
ObjectiveResourceFilterList.member = Shapes::ShapeRef.new(shape: ObjectiveResourceFilter)
|
125
166
|
|
126
167
|
ObjectiveSummary.add_member(:arn, Shapes::ShapeRef.new(shape: ObjectiveArn, required: true, location_name: "Arn"))
|
127
|
-
ObjectiveSummary.add_member(:
|
168
|
+
ObjectiveSummary.add_member(:name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Name"))
|
128
169
|
ObjectiveSummary.add_member(:description, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Description"))
|
129
170
|
ObjectiveSummary.add_member(:domain, Shapes::ShapeRef.new(shape: AssociatedDomainSummary, required: true, location_name: "Domain"))
|
171
|
+
ObjectiveSummary.add_member(:create_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "CreateTime"))
|
130
172
|
ObjectiveSummary.add_member(:last_update_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "LastUpdateTime"))
|
131
|
-
ObjectiveSummary.add_member(:name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Name"))
|
132
173
|
ObjectiveSummary.struct_class = Types::ObjectiveSummary
|
133
174
|
|
134
175
|
ObjectiveSummaryList.member = Shapes::ShapeRef.new(shape: ObjectiveSummary)
|
135
176
|
|
177
|
+
RegionConfiguration.add_member(:scope, Shapes::ShapeRef.new(shape: ControlScope, required: true, location_name: "Scope"))
|
178
|
+
RegionConfiguration.add_member(:deployable_regions, Shapes::ShapeRef.new(shape: DeployableRegions, location_name: "DeployableRegions"))
|
179
|
+
RegionConfiguration.struct_class = Types::RegionConfiguration
|
180
|
+
|
181
|
+
ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
|
182
|
+
ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
|
183
|
+
|
136
184
|
ThrottlingException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
|
137
185
|
ThrottlingException.struct_class = Types::ThrottlingException
|
138
186
|
|
@@ -147,9 +195,10 @@ module Aws::ControlCatalog
|
|
147
195
|
|
148
196
|
api.metadata = {
|
149
197
|
"apiVersion" => "2018-05-10",
|
198
|
+
"auth" => ["aws.auth#sigv4"],
|
150
199
|
"endpointPrefix" => "controlcatalog",
|
151
|
-
"jsonVersion" => "1.1",
|
152
200
|
"protocol" => "rest-json",
|
201
|
+
"protocols" => ["rest-json"],
|
153
202
|
"serviceFullName" => "AWS Control Catalog",
|
154
203
|
"serviceId" => "ControlCatalog",
|
155
204
|
"signatureVersion" => "v4",
|
@@ -157,6 +206,19 @@ module Aws::ControlCatalog
|
|
157
206
|
"uid" => "controlcatalog-2018-05-10",
|
158
207
|
}
|
159
208
|
|
209
|
+
api.add_operation(:get_control, Seahorse::Model::Operation.new.tap do |o|
|
210
|
+
o.name = "GetControl"
|
211
|
+
o.http_method = "POST"
|
212
|
+
o.http_request_uri = "/get-control"
|
213
|
+
o.input = Shapes::ShapeRef.new(shape: GetControlRequest)
|
214
|
+
o.output = Shapes::ShapeRef.new(shape: GetControlResponse)
|
215
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
216
|
+
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
|
217
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
|
218
|
+
o.errors << Shapes::ShapeRef.new(shape: ValidationException)
|
219
|
+
o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
|
220
|
+
end)
|
221
|
+
|
160
222
|
api.add_operation(:list_common_controls, Seahorse::Model::Operation.new.tap do |o|
|
161
223
|
o.name = "ListCommonControls"
|
162
224
|
o.http_method = "POST"
|
@@ -175,6 +237,24 @@ module Aws::ControlCatalog
|
|
175
237
|
)
|
176
238
|
end)
|
177
239
|
|
240
|
+
api.add_operation(:list_controls, Seahorse::Model::Operation.new.tap do |o|
|
241
|
+
o.name = "ListControls"
|
242
|
+
o.http_method = "POST"
|
243
|
+
o.http_request_uri = "/list-controls"
|
244
|
+
o.input = Shapes::ShapeRef.new(shape: ListControlsRequest)
|
245
|
+
o.output = Shapes::ShapeRef.new(shape: ListControlsResponse)
|
246
|
+
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
|
247
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
|
248
|
+
o.errors << Shapes::ShapeRef.new(shape: ValidationException)
|
249
|
+
o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
|
250
|
+
o[:pager] = Aws::Pager.new(
|
251
|
+
limit_key: "max_results",
|
252
|
+
tokens: {
|
253
|
+
"next_token" => "next_token"
|
254
|
+
}
|
255
|
+
)
|
256
|
+
end)
|
257
|
+
|
178
258
|
api.add_operation(:list_domains, Seahorse::Model::Operation.new.tap do |o|
|
179
259
|
o.name = "ListDomains"
|
180
260
|
o.http_method = "POST"
|
@@ -12,6 +12,20 @@ module Aws::ControlCatalog
|
|
12
12
|
# @api private
|
13
13
|
module Endpoints
|
14
14
|
|
15
|
+
class GetControl
|
16
|
+
def self.build(context)
|
17
|
+
unless context.config.regional_endpoint
|
18
|
+
endpoint = context.config.endpoint.to_s
|
19
|
+
end
|
20
|
+
Aws::ControlCatalog::EndpointParameters.new(
|
21
|
+
region: context.config.region,
|
22
|
+
use_dual_stack: context.config.use_dualstack_endpoint,
|
23
|
+
use_fips: context.config.use_fips_endpoint,
|
24
|
+
endpoint: endpoint,
|
25
|
+
)
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
15
29
|
class ListCommonControls
|
16
30
|
def self.build(context)
|
17
31
|
unless context.config.regional_endpoint
|
@@ -26,6 +40,20 @@ module Aws::ControlCatalog
|
|
26
40
|
end
|
27
41
|
end
|
28
42
|
|
43
|
+
class ListControls
|
44
|
+
def self.build(context)
|
45
|
+
unless context.config.regional_endpoint
|
46
|
+
endpoint = context.config.endpoint.to_s
|
47
|
+
end
|
48
|
+
Aws::ControlCatalog::EndpointParameters.new(
|
49
|
+
region: context.config.region,
|
50
|
+
use_dual_stack: context.config.use_dualstack_endpoint,
|
51
|
+
use_fips: context.config.use_fips_endpoint,
|
52
|
+
endpoint: endpoint,
|
53
|
+
)
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
29
57
|
class ListDomains
|
30
58
|
def self.build(context)
|
31
59
|
unless context.config.regional_endpoint
|
@@ -29,6 +29,7 @@ module Aws::ControlCatalog
|
|
29
29
|
# ## Error Classes
|
30
30
|
# * {AccessDeniedException}
|
31
31
|
# * {InternalServerException}
|
32
|
+
# * {ResourceNotFoundException}
|
32
33
|
# * {ThrottlingException}
|
33
34
|
# * {ValidationException}
|
34
35
|
#
|
@@ -72,6 +73,21 @@ module Aws::ControlCatalog
|
|
72
73
|
end
|
73
74
|
end
|
74
75
|
|
76
|
+
class ResourceNotFoundException < ServiceError
|
77
|
+
|
78
|
+
# @param [Seahorse::Client::RequestContext] context
|
79
|
+
# @param [String] message
|
80
|
+
# @param [Aws::ControlCatalog::Types::ResourceNotFoundException] data
|
81
|
+
def initialize(context, message, data = Aws::EmptyStructure.new)
|
82
|
+
super(context, message, data)
|
83
|
+
end
|
84
|
+
|
85
|
+
# @return [String]
|
86
|
+
def message
|
87
|
+
@message || @data[:message]
|
88
|
+
end
|
89
|
+
end
|
90
|
+
|
75
91
|
class ThrottlingException < ServiceError
|
76
92
|
|
77
93
|
# @param [Seahorse::Client::RequestContext] context
|
@@ -58,8 +58,12 @@ module Aws::ControlCatalog
|
|
58
58
|
|
59
59
|
def parameters_for_operation(context)
|
60
60
|
case context.operation_name
|
61
|
+
when :get_control
|
62
|
+
Aws::ControlCatalog::Endpoints::GetControl.build(context)
|
61
63
|
when :list_common_controls
|
62
64
|
Aws::ControlCatalog::Endpoints::ListCommonControls.build(context)
|
65
|
+
when :list_controls
|
66
|
+
Aws::ControlCatalog::Endpoints::ListControls.build(context)
|
63
67
|
when :list_domains
|
64
68
|
Aws::ControlCatalog::Endpoints::ListDomains.build(context)
|
65
69
|
when :list_objectives
|
@@ -86,9 +86,9 @@ module Aws::ControlCatalog
|
|
86
86
|
# The Amazon Resource Name (ARN) that identifies the common control.
|
87
87
|
# @return [String]
|
88
88
|
#
|
89
|
-
# @!attribute [rw]
|
90
|
-
# The
|
91
|
-
# @return [
|
89
|
+
# @!attribute [rw] name
|
90
|
+
# The name of the common control.
|
91
|
+
# @return [String]
|
92
92
|
#
|
93
93
|
# @!attribute [rw] description
|
94
94
|
# The description of the common control.
|
@@ -98,28 +98,53 @@ module Aws::ControlCatalog
|
|
98
98
|
# The domain that the common control belongs to.
|
99
99
|
# @return [Types::AssociatedDomainSummary]
|
100
100
|
#
|
101
|
-
# @!attribute [rw] last_update_time
|
102
|
-
# The time when the common control was most recently updated.
|
103
|
-
# @return [Time]
|
104
|
-
#
|
105
|
-
# @!attribute [rw] name
|
106
|
-
# The name of the common control.
|
107
|
-
# @return [String]
|
108
|
-
#
|
109
101
|
# @!attribute [rw] objective
|
110
102
|
# The objective that the common control belongs to.
|
111
103
|
# @return [Types::AssociatedObjectiveSummary]
|
112
104
|
#
|
105
|
+
# @!attribute [rw] create_time
|
106
|
+
# The time when the common control was created.
|
107
|
+
# @return [Time]
|
108
|
+
#
|
109
|
+
# @!attribute [rw] last_update_time
|
110
|
+
# The time when the common control was most recently updated.
|
111
|
+
# @return [Time]
|
112
|
+
#
|
113
113
|
# @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/CommonControlSummary AWS API Documentation
|
114
114
|
#
|
115
115
|
class CommonControlSummary < Struct.new(
|
116
116
|
:arn,
|
117
|
-
:
|
117
|
+
:name,
|
118
118
|
:description,
|
119
119
|
:domain,
|
120
|
-
:
|
120
|
+
:objective,
|
121
|
+
:create_time,
|
122
|
+
:last_update_time)
|
123
|
+
SENSITIVE = []
|
124
|
+
include Aws::Structure
|
125
|
+
end
|
126
|
+
|
127
|
+
# Overview of information about a control.
|
128
|
+
#
|
129
|
+
# @!attribute [rw] arn
|
130
|
+
# The Amazon Resource Name (ARN) of the control.
|
131
|
+
# @return [String]
|
132
|
+
#
|
133
|
+
# @!attribute [rw] name
|
134
|
+
# The display name of the control.
|
135
|
+
# @return [String]
|
136
|
+
#
|
137
|
+
# @!attribute [rw] description
|
138
|
+
# A description of the control, as it may appear in the console.
|
139
|
+
# Describes the functionality of the control.
|
140
|
+
# @return [String]
|
141
|
+
#
|
142
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ControlSummary AWS API Documentation
|
143
|
+
#
|
144
|
+
class ControlSummary < Struct.new(
|
145
|
+
:arn,
|
121
146
|
:name,
|
122
|
-
:
|
147
|
+
:description)
|
123
148
|
SENSITIVE = []
|
124
149
|
include Aws::Structure
|
125
150
|
end
|
@@ -144,30 +169,102 @@ module Aws::ControlCatalog
|
|
144
169
|
# The Amazon Resource Name (ARN) that identifies the domain.
|
145
170
|
# @return [String]
|
146
171
|
#
|
147
|
-
# @!attribute [rw]
|
148
|
-
# The
|
149
|
-
# @return [
|
172
|
+
# @!attribute [rw] name
|
173
|
+
# The name of the domain.
|
174
|
+
# @return [String]
|
150
175
|
#
|
151
176
|
# @!attribute [rw] description
|
152
177
|
# The description of the domain.
|
153
178
|
# @return [String]
|
154
179
|
#
|
180
|
+
# @!attribute [rw] create_time
|
181
|
+
# The time when the domain was created.
|
182
|
+
# @return [Time]
|
183
|
+
#
|
155
184
|
# @!attribute [rw] last_update_time
|
156
185
|
# The time when the domain was most recently updated.
|
157
186
|
# @return [Time]
|
158
187
|
#
|
159
|
-
# @!attribute [rw] name
|
160
|
-
# The name of the domain.
|
161
|
-
# @return [String]
|
162
|
-
#
|
163
188
|
# @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/DomainSummary AWS API Documentation
|
164
189
|
#
|
165
190
|
class DomainSummary < Struct.new(
|
166
191
|
:arn,
|
192
|
+
:name,
|
193
|
+
:description,
|
167
194
|
:create_time,
|
195
|
+
:last_update_time)
|
196
|
+
SENSITIVE = []
|
197
|
+
include Aws::Structure
|
198
|
+
end
|
199
|
+
|
200
|
+
# @!attribute [rw] control_arn
|
201
|
+
# The Amazon Resource Name (ARN) of the control. It has one of the
|
202
|
+
# following formats:
|
203
|
+
#
|
204
|
+
# *Global format*
|
205
|
+
#
|
206
|
+
# `arn:\{PARTITION\}:controlcatalog:::control/\{CONTROL_CATALOG_OPAQUE_ID\}`
|
207
|
+
#
|
208
|
+
# *Or Regional format*
|
209
|
+
#
|
210
|
+
# `arn:\{PARTITION\}:controltower:\{REGION\}::control/\{CONTROL_TOWER_OPAQUE_ID\}`
|
211
|
+
#
|
212
|
+
# Here is a more general pattern that covers Amazon Web Services
|
213
|
+
# Control Tower and Control Catalog ARNs:
|
214
|
+
#
|
215
|
+
# `^arn:(aws(?:[-a-z]*)?):(controlcatalog|controltower):[a-zA-Z0-9-]*::control/[0-9a-zA-Z_\\-]+$`
|
216
|
+
# @return [String]
|
217
|
+
#
|
218
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/GetControlRequest AWS API Documentation
|
219
|
+
#
|
220
|
+
class GetControlRequest < Struct.new(
|
221
|
+
:control_arn)
|
222
|
+
SENSITIVE = []
|
223
|
+
include Aws::Structure
|
224
|
+
end
|
225
|
+
|
226
|
+
# @!attribute [rw] arn
|
227
|
+
# The Amazon Resource Name (ARN) of the control.
|
228
|
+
# @return [String]
|
229
|
+
#
|
230
|
+
# @!attribute [rw] name
|
231
|
+
# The display name of the control.
|
232
|
+
# @return [String]
|
233
|
+
#
|
234
|
+
# @!attribute [rw] description
|
235
|
+
# A description of what the control does.
|
236
|
+
# @return [String]
|
237
|
+
#
|
238
|
+
# @!attribute [rw] behavior
|
239
|
+
# A term that identifies the control's functional behavior. One of
|
240
|
+
# `Preventive`, `Deteictive`, `Proactive`
|
241
|
+
# @return [String]
|
242
|
+
#
|
243
|
+
# @!attribute [rw] region_configuration
|
244
|
+
# Returns information about the control, including the scope of the
|
245
|
+
# control, if enabled, and the Regions in which the control currently
|
246
|
+
# is available for deployment.
|
247
|
+
#
|
248
|
+
# If you are applying controls through an Amazon Web Services Control
|
249
|
+
# Tower landing zone environment, remember that the values returned in
|
250
|
+
# the `RegionConfiguration` API operation are not related to the
|
251
|
+
# governed Regions in your landing zone. For example, if you are
|
252
|
+
# governing Regions `A`,`B`,and `C` while the control is available in
|
253
|
+
# Regions `A`, `B`, C`,` and `D`, you'd see a response with
|
254
|
+
# `DeployableRegions` of `A`, `B`, `C`, and `D` for a control with
|
255
|
+
# `REGIONAL` scope, even though you may not intend to deploy the
|
256
|
+
# control in Region `D`, because you do not govern it through your
|
257
|
+
# landing zone.
|
258
|
+
# @return [Types::RegionConfiguration]
|
259
|
+
#
|
260
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/GetControlResponse AWS API Documentation
|
261
|
+
#
|
262
|
+
class GetControlResponse < Struct.new(
|
263
|
+
:arn,
|
264
|
+
:name,
|
168
265
|
:description,
|
169
|
-
:
|
170
|
-
:
|
266
|
+
:behavior,
|
267
|
+
:region_configuration)
|
171
268
|
SENSITIVE = []
|
172
269
|
include Aws::Structure
|
173
270
|
end
|
@@ -186,14 +283,6 @@ module Aws::ControlCatalog
|
|
186
283
|
include Aws::Structure
|
187
284
|
end
|
188
285
|
|
189
|
-
# @!attribute [rw] common_control_filter
|
190
|
-
# An optional filter that narrows the results to a specific objective.
|
191
|
-
#
|
192
|
-
# This filter allows you to specify one objective ARN at a time.
|
193
|
-
# Passing multiple ARNs in the `CommonControlFilter` isn’t currently
|
194
|
-
# supported.
|
195
|
-
# @return [Types::CommonControlFilter]
|
196
|
-
#
|
197
286
|
# @!attribute [rw] max_results
|
198
287
|
# The maximum number of results on a page or for an API request call.
|
199
288
|
# @return [Integer]
|
@@ -202,12 +291,20 @@ module Aws::ControlCatalog
|
|
202
291
|
# The pagination token that's used to fetch the next set of results.
|
203
292
|
# @return [String]
|
204
293
|
#
|
294
|
+
# @!attribute [rw] common_control_filter
|
295
|
+
# An optional filter that narrows the results to a specific objective.
|
296
|
+
#
|
297
|
+
# This filter allows you to specify one objective ARN at a time.
|
298
|
+
# Passing multiple ARNs in the `CommonControlFilter` isn’t currently
|
299
|
+
# supported.
|
300
|
+
# @return [Types::CommonControlFilter]
|
301
|
+
#
|
205
302
|
# @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ListCommonControlsRequest AWS API Documentation
|
206
303
|
#
|
207
304
|
class ListCommonControlsRequest < Struct.new(
|
208
|
-
:common_control_filter,
|
209
305
|
:max_results,
|
210
|
-
:next_token
|
306
|
+
:next_token,
|
307
|
+
:common_control_filter)
|
211
308
|
SENSITIVE = []
|
212
309
|
include Aws::Structure
|
213
310
|
end
|
@@ -230,6 +327,41 @@ module Aws::ControlCatalog
|
|
230
327
|
include Aws::Structure
|
231
328
|
end
|
232
329
|
|
330
|
+
# @!attribute [rw] next_token
|
331
|
+
# The pagination token that's used to fetch the next set of results.
|
332
|
+
# @return [String]
|
333
|
+
#
|
334
|
+
# @!attribute [rw] max_results
|
335
|
+
# The maximum number of results on a page or for an API request call.
|
336
|
+
# @return [Integer]
|
337
|
+
#
|
338
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ListControlsRequest AWS API Documentation
|
339
|
+
#
|
340
|
+
class ListControlsRequest < Struct.new(
|
341
|
+
:next_token,
|
342
|
+
:max_results)
|
343
|
+
SENSITIVE = []
|
344
|
+
include Aws::Structure
|
345
|
+
end
|
346
|
+
|
347
|
+
# @!attribute [rw] controls
|
348
|
+
# Returns a list of controls, given as structures of type
|
349
|
+
# *controlSummary*.
|
350
|
+
# @return [Array<Types::ControlSummary>]
|
351
|
+
#
|
352
|
+
# @!attribute [rw] next_token
|
353
|
+
# The pagination token that's used to fetch the next set of results.
|
354
|
+
# @return [String]
|
355
|
+
#
|
356
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ListControlsResponse AWS API Documentation
|
357
|
+
#
|
358
|
+
class ListControlsResponse < Struct.new(
|
359
|
+
:controls,
|
360
|
+
:next_token)
|
361
|
+
SENSITIVE = []
|
362
|
+
include Aws::Structure
|
363
|
+
end
|
364
|
+
|
233
365
|
# @!attribute [rw] max_results
|
234
366
|
# The maximum number of results on a page or for an API request call.
|
235
367
|
# @return [Integer]
|
@@ -289,19 +421,19 @@ module Aws::ControlCatalog
|
|
289
421
|
include Aws::Structure
|
290
422
|
end
|
291
423
|
|
292
|
-
# @!attribute [rw] next_token
|
293
|
-
# The pagination token that's used to fetch the next set of results.
|
294
|
-
# @return [String]
|
295
|
-
#
|
296
424
|
# @!attribute [rw] objectives
|
297
425
|
# The list of objectives that the `ListObjectives` API returns.
|
298
426
|
# @return [Array<Types::ObjectiveSummary>]
|
299
427
|
#
|
428
|
+
# @!attribute [rw] next_token
|
429
|
+
# The pagination token that's used to fetch the next set of results.
|
430
|
+
# @return [String]
|
431
|
+
#
|
300
432
|
# @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ListObjectivesResponse AWS API Documentation
|
301
433
|
#
|
302
434
|
class ListObjectivesResponse < Struct.new(
|
303
|
-
:
|
304
|
-
:
|
435
|
+
:objectives,
|
436
|
+
:next_token)
|
305
437
|
SENSITIVE = []
|
306
438
|
include Aws::Structure
|
307
439
|
end
|
@@ -345,9 +477,9 @@ module Aws::ControlCatalog
|
|
345
477
|
# The Amazon Resource Name (ARN) that identifies the objective.
|
346
478
|
# @return [String]
|
347
479
|
#
|
348
|
-
# @!attribute [rw]
|
349
|
-
# The
|
350
|
-
# @return [
|
480
|
+
# @!attribute [rw] name
|
481
|
+
# The name of the objective.
|
482
|
+
# @return [String]
|
351
483
|
#
|
352
484
|
# @!attribute [rw] description
|
353
485
|
# The description of the objective.
|
@@ -357,23 +489,76 @@ module Aws::ControlCatalog
|
|
357
489
|
# The domain that the objective belongs to.
|
358
490
|
# @return [Types::AssociatedDomainSummary]
|
359
491
|
#
|
492
|
+
# @!attribute [rw] create_time
|
493
|
+
# The time when the objective was created.
|
494
|
+
# @return [Time]
|
495
|
+
#
|
360
496
|
# @!attribute [rw] last_update_time
|
361
497
|
# The time when the objective was most recently updated.
|
362
498
|
# @return [Time]
|
363
499
|
#
|
364
|
-
# @!attribute [rw] name
|
365
|
-
# The name of the objective.
|
366
|
-
# @return [String]
|
367
|
-
#
|
368
500
|
# @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ObjectiveSummary AWS API Documentation
|
369
501
|
#
|
370
502
|
class ObjectiveSummary < Struct.new(
|
371
503
|
:arn,
|
372
|
-
:
|
504
|
+
:name,
|
373
505
|
:description,
|
374
506
|
:domain,
|
375
|
-
:
|
376
|
-
:
|
507
|
+
:create_time,
|
508
|
+
:last_update_time)
|
509
|
+
SENSITIVE = []
|
510
|
+
include Aws::Structure
|
511
|
+
end
|
512
|
+
|
513
|
+
# Returns information about the control, including the scope of the
|
514
|
+
# control, if enabled, and the Regions in which the control currently is
|
515
|
+
# available for deployment.
|
516
|
+
#
|
517
|
+
# If you are applying controls through an Amazon Web Services Control
|
518
|
+
# Tower landing zone environment, remember that the values returned in
|
519
|
+
# the `RegionConfiguration` API operation are not related to the
|
520
|
+
# governed Regions in your landing zone. For example, if you are
|
521
|
+
# governing Regions `A`,`B`,and `C` while the control is available in
|
522
|
+
# Regions `A`, `B`, C`,` and `D`, you'd see a response with
|
523
|
+
# `DeployableRegions` of `A`, `B`, `C`, and `D` for a control with
|
524
|
+
# `REGIONAL` scope, even though you may not intend to deploy the control
|
525
|
+
# in Region `D`, because you do not govern it through your landing zone.
|
526
|
+
#
|
527
|
+
# @!attribute [rw] scope
|
528
|
+
# The coverage of the control, if deployed. Scope is an enumerated
|
529
|
+
# type, with value `Regional`, or `Global`. A control with Global
|
530
|
+
# scope is effective in all Amazon Web Services Regions, regardless of
|
531
|
+
# the Region from which it is enabled, or to which it is deployed. A
|
532
|
+
# control implemented by an SCP is usually Global in scope. A control
|
533
|
+
# with Regional scope has operations that are restricted specifically
|
534
|
+
# to the Region from which it is enabled and to which it is deployed.
|
535
|
+
# Controls implemented by Config rules and CloudFormation hooks
|
536
|
+
# usually are Regional in scope. Security Hub controls usually are
|
537
|
+
# Regional in scope.
|
538
|
+
# @return [String]
|
539
|
+
#
|
540
|
+
# @!attribute [rw] deployable_regions
|
541
|
+
# Regions in which the control is available to be deployed.
|
542
|
+
# @return [Array<String>]
|
543
|
+
#
|
544
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/RegionConfiguration AWS API Documentation
|
545
|
+
#
|
546
|
+
class RegionConfiguration < Struct.new(
|
547
|
+
:scope,
|
548
|
+
:deployable_regions)
|
549
|
+
SENSITIVE = []
|
550
|
+
include Aws::Structure
|
551
|
+
end
|
552
|
+
|
553
|
+
# The requested resource does not exist.
|
554
|
+
#
|
555
|
+
# @!attribute [rw] message
|
556
|
+
# @return [String]
|
557
|
+
#
|
558
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/controlcatalog-2018-05-10/ResourceNotFoundException AWS API Documentation
|
559
|
+
#
|
560
|
+
class ResourceNotFoundException < Struct.new(
|
561
|
+
:message)
|
377
562
|
SENSITIVE = []
|
378
563
|
include Aws::Structure
|
379
564
|
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# WARNING ABOUT GENERATED CODE
|
4
|
+
#
|
5
|
+
# This file is generated. See the contributing guide for more information:
|
6
|
+
# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
|
7
|
+
#
|
8
|
+
# WARNING ABOUT GENERATED CODE
|
9
|
+
|
10
|
+
require 'aws-sdk-core/waiters'
|
11
|
+
|
12
|
+
module Aws::ControlCatalog
|
13
|
+
module Waiters
|
14
|
+
end
|
15
|
+
end
|
@@ -16,6 +16,7 @@ require_relative 'aws-sdk-controlcatalog/client_api'
|
|
16
16
|
require_relative 'aws-sdk-controlcatalog/plugins/endpoints.rb'
|
17
17
|
require_relative 'aws-sdk-controlcatalog/client'
|
18
18
|
require_relative 'aws-sdk-controlcatalog/errors'
|
19
|
+
require_relative 'aws-sdk-controlcatalog/waiters'
|
19
20
|
require_relative 'aws-sdk-controlcatalog/resource'
|
20
21
|
require_relative 'aws-sdk-controlcatalog/endpoint_parameters'
|
21
22
|
require_relative 'aws-sdk-controlcatalog/endpoint_provider'
|
@@ -32,7 +33,7 @@ require_relative 'aws-sdk-controlcatalog/customizations'
|
|
32
33
|
# structure.
|
33
34
|
#
|
34
35
|
# control_catalog = Aws::ControlCatalog::Client.new
|
35
|
-
# resp = control_catalog.
|
36
|
+
# resp = control_catalog.get_control(params)
|
36
37
|
#
|
37
38
|
# See {Client} for more information.
|
38
39
|
#
|
@@ -52,6 +53,6 @@ require_relative 'aws-sdk-controlcatalog/customizations'
|
|
52
53
|
# @!group service
|
53
54
|
module Aws::ControlCatalog
|
54
55
|
|
55
|
-
GEM_VERSION = '1.
|
56
|
+
GEM_VERSION = '1.7.0'
|
56
57
|
|
57
58
|
end
|
data/sig/client.rbs
CHANGED
@@ -73,6 +73,20 @@ module Aws
|
|
73
73
|
| (?Hash[Symbol, untyped]) -> instance
|
74
74
|
|
75
75
|
|
76
|
+
interface _GetControlResponseSuccess
|
77
|
+
include ::Seahorse::Client::_ResponseSuccess[Types::GetControlResponse]
|
78
|
+
def arn: () -> ::String
|
79
|
+
def name: () -> ::String
|
80
|
+
def description: () -> ::String
|
81
|
+
def behavior: () -> ("PREVENTIVE" | "PROACTIVE" | "DETECTIVE")
|
82
|
+
def region_configuration: () -> Types::RegionConfiguration
|
83
|
+
end
|
84
|
+
# https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ControlCatalog/Client.html#get_control-instance_method
|
85
|
+
def get_control: (
|
86
|
+
control_arn: ::String
|
87
|
+
) -> _GetControlResponseSuccess
|
88
|
+
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GetControlResponseSuccess
|
89
|
+
|
76
90
|
interface _ListCommonControlsResponseSuccess
|
77
91
|
include ::Seahorse::Client::_ResponseSuccess[Types::ListCommonControlsResponse]
|
78
92
|
def common_controls: () -> ::Array[Types::CommonControlSummary]
|
@@ -80,18 +94,30 @@ module Aws
|
|
80
94
|
end
|
81
95
|
# https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ControlCatalog/Client.html#list_common_controls-instance_method
|
82
96
|
def list_common_controls: (
|
97
|
+
?max_results: ::Integer,
|
98
|
+
?next_token: ::String,
|
83
99
|
?common_control_filter: {
|
84
100
|
objectives: Array[
|
85
101
|
{
|
86
102
|
arn: ::String?
|
87
103
|
},
|
88
104
|
]?
|
89
|
-
}
|
90
|
-
?max_results: ::Integer,
|
91
|
-
?next_token: ::String
|
105
|
+
}
|
92
106
|
) -> _ListCommonControlsResponseSuccess
|
93
107
|
| (?Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _ListCommonControlsResponseSuccess
|
94
108
|
|
109
|
+
interface _ListControlsResponseSuccess
|
110
|
+
include ::Seahorse::Client::_ResponseSuccess[Types::ListControlsResponse]
|
111
|
+
def controls: () -> ::Array[Types::ControlSummary]
|
112
|
+
def next_token: () -> ::String
|
113
|
+
end
|
114
|
+
# https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ControlCatalog/Client.html#list_controls-instance_method
|
115
|
+
def list_controls: (
|
116
|
+
?next_token: ::String,
|
117
|
+
?max_results: ::Integer
|
118
|
+
) -> _ListControlsResponseSuccess
|
119
|
+
| (?Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _ListControlsResponseSuccess
|
120
|
+
|
95
121
|
interface _ListDomainsResponseSuccess
|
96
122
|
include ::Seahorse::Client::_ResponseSuccess[Types::ListDomainsResponse]
|
97
123
|
def domains: () -> ::Array[Types::DomainSummary]
|
@@ -106,8 +132,8 @@ module Aws
|
|
106
132
|
|
107
133
|
interface _ListObjectivesResponseSuccess
|
108
134
|
include ::Seahorse::Client::_ResponseSuccess[Types::ListObjectivesResponse]
|
109
|
-
def next_token: () -> ::String
|
110
135
|
def objectives: () -> ::Array[Types::ObjectiveSummary]
|
136
|
+
def next_token: () -> ::String
|
111
137
|
end
|
112
138
|
# https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ControlCatalog/Client.html#list_objectives-instance_method
|
113
139
|
def list_objectives: (
|
data/sig/errors.rbs
CHANGED
@@ -17,6 +17,9 @@ module Aws
|
|
17
17
|
class InternalServerException < ::Aws::Errors::ServiceError
|
18
18
|
def message: () -> ::String
|
19
19
|
end
|
20
|
+
class ResourceNotFoundException < ::Aws::Errors::ServiceError
|
21
|
+
def message: () -> ::String
|
22
|
+
end
|
20
23
|
class ThrottlingException < ::Aws::Errors::ServiceError
|
21
24
|
def message: () -> ::String
|
22
25
|
end
|
data/sig/types.rbs
CHANGED
@@ -32,12 +32,19 @@ module Aws::ControlCatalog
|
|
32
32
|
|
33
33
|
class CommonControlSummary
|
34
34
|
attr_accessor arn: ::String
|
35
|
-
attr_accessor
|
35
|
+
attr_accessor name: ::String
|
36
36
|
attr_accessor description: ::String
|
37
37
|
attr_accessor domain: Types::AssociatedDomainSummary
|
38
|
+
attr_accessor objective: Types::AssociatedObjectiveSummary
|
39
|
+
attr_accessor create_time: ::Time
|
38
40
|
attr_accessor last_update_time: ::Time
|
41
|
+
SENSITIVE: []
|
42
|
+
end
|
43
|
+
|
44
|
+
class ControlSummary
|
45
|
+
attr_accessor arn: ::String
|
39
46
|
attr_accessor name: ::String
|
40
|
-
attr_accessor
|
47
|
+
attr_accessor description: ::String
|
41
48
|
SENSITIVE: []
|
42
49
|
end
|
43
50
|
|
@@ -48,10 +55,24 @@ module Aws::ControlCatalog
|
|
48
55
|
|
49
56
|
class DomainSummary
|
50
57
|
attr_accessor arn: ::String
|
51
|
-
attr_accessor
|
58
|
+
attr_accessor name: ::String
|
52
59
|
attr_accessor description: ::String
|
60
|
+
attr_accessor create_time: ::Time
|
53
61
|
attr_accessor last_update_time: ::Time
|
62
|
+
SENSITIVE: []
|
63
|
+
end
|
64
|
+
|
65
|
+
class GetControlRequest
|
66
|
+
attr_accessor control_arn: ::String
|
67
|
+
SENSITIVE: []
|
68
|
+
end
|
69
|
+
|
70
|
+
class GetControlResponse
|
71
|
+
attr_accessor arn: ::String
|
54
72
|
attr_accessor name: ::String
|
73
|
+
attr_accessor description: ::String
|
74
|
+
attr_accessor behavior: ("PREVENTIVE" | "PROACTIVE" | "DETECTIVE")
|
75
|
+
attr_accessor region_configuration: Types::RegionConfiguration
|
55
76
|
SENSITIVE: []
|
56
77
|
end
|
57
78
|
|
@@ -61,9 +82,9 @@ module Aws::ControlCatalog
|
|
61
82
|
end
|
62
83
|
|
63
84
|
class ListCommonControlsRequest
|
64
|
-
attr_accessor common_control_filter: Types::CommonControlFilter
|
65
85
|
attr_accessor max_results: ::Integer
|
66
86
|
attr_accessor next_token: ::String
|
87
|
+
attr_accessor common_control_filter: Types::CommonControlFilter
|
67
88
|
SENSITIVE: []
|
68
89
|
end
|
69
90
|
|
@@ -73,6 +94,18 @@ module Aws::ControlCatalog
|
|
73
94
|
SENSITIVE: []
|
74
95
|
end
|
75
96
|
|
97
|
+
class ListControlsRequest
|
98
|
+
attr_accessor next_token: ::String
|
99
|
+
attr_accessor max_results: ::Integer
|
100
|
+
SENSITIVE: []
|
101
|
+
end
|
102
|
+
|
103
|
+
class ListControlsResponse
|
104
|
+
attr_accessor controls: ::Array[Types::ControlSummary]
|
105
|
+
attr_accessor next_token: ::String
|
106
|
+
SENSITIVE: []
|
107
|
+
end
|
108
|
+
|
76
109
|
class ListDomainsRequest
|
77
110
|
attr_accessor max_results: ::Integer
|
78
111
|
attr_accessor next_token: ::String
|
@@ -93,8 +126,8 @@ module Aws::ControlCatalog
|
|
93
126
|
end
|
94
127
|
|
95
128
|
class ListObjectivesResponse
|
96
|
-
attr_accessor next_token: ::String
|
97
129
|
attr_accessor objectives: ::Array[Types::ObjectiveSummary]
|
130
|
+
attr_accessor next_token: ::String
|
98
131
|
SENSITIVE: []
|
99
132
|
end
|
100
133
|
|
@@ -110,11 +143,22 @@ module Aws::ControlCatalog
|
|
110
143
|
|
111
144
|
class ObjectiveSummary
|
112
145
|
attr_accessor arn: ::String
|
113
|
-
attr_accessor
|
146
|
+
attr_accessor name: ::String
|
114
147
|
attr_accessor description: ::String
|
115
148
|
attr_accessor domain: Types::AssociatedDomainSummary
|
149
|
+
attr_accessor create_time: ::Time
|
116
150
|
attr_accessor last_update_time: ::Time
|
117
|
-
|
151
|
+
SENSITIVE: []
|
152
|
+
end
|
153
|
+
|
154
|
+
class RegionConfiguration
|
155
|
+
attr_accessor scope: ("GLOBAL" | "REGIONAL")
|
156
|
+
attr_accessor deployable_regions: ::Array[::String]
|
157
|
+
SENSITIVE: []
|
158
|
+
end
|
159
|
+
|
160
|
+
class ResourceNotFoundException
|
161
|
+
attr_accessor message: ::String
|
118
162
|
SENSITIVE: []
|
119
163
|
end
|
120
164
|
|
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.
|
4
|
+
version: 1.7.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-
|
11
|
+
date: 2024-08-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk-core
|
@@ -36,14 +36,14 @@ dependencies:
|
|
36
36
|
requirements:
|
37
37
|
- - "~>"
|
38
38
|
- !ruby/object:Gem::Version
|
39
|
-
version: '1.
|
39
|
+
version: '1.5'
|
40
40
|
type: :runtime
|
41
41
|
prerelease: false
|
42
42
|
version_requirements: !ruby/object:Gem::Requirement
|
43
43
|
requirements:
|
44
44
|
- - "~>"
|
45
45
|
- !ruby/object:Gem::Version
|
46
|
-
version: '1.
|
46
|
+
version: '1.5'
|
47
47
|
description: Official AWS Ruby gem for AWS Control Catalog. This gem is part of the
|
48
48
|
AWS SDK for Ruby.
|
49
49
|
email:
|
@@ -66,6 +66,7 @@ files:
|
|
66
66
|
- lib/aws-sdk-controlcatalog/plugins/endpoints.rb
|
67
67
|
- lib/aws-sdk-controlcatalog/resource.rb
|
68
68
|
- lib/aws-sdk-controlcatalog/types.rb
|
69
|
+
- lib/aws-sdk-controlcatalog/waiters.rb
|
69
70
|
- sig/client.rbs
|
70
71
|
- sig/errors.rbs
|
71
72
|
- sig/resource.rbs
|