aws-sdk-configservice 1.21.0 → 1.22.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
  SHA1:
3
- metadata.gz: 015202d34ae9e25497e99175134bd6721d6545dc
4
- data.tar.gz: 1403158567ef64cabddcea1d7bfdd54c5f911a8d
3
+ metadata.gz: bc42be04a037c07c4350df37e6019331254b269e
4
+ data.tar.gz: cb768780375ff4c0c0e96ac10e8de6cc7feb4069
5
5
  SHA512:
6
- metadata.gz: c812e88c39a60dcbaedeb02f5bf127392c738ec3655d3c95275b97f0c30d3d6d3d6cd0b80c46093023d49ecf28508d9260197bc3628e86ad73bd777295d5321a
7
- data.tar.gz: b9e05d901728bd152d1763753369fec0b92db709214cab073081bdc0970d32c5a3b366ab1e606aef00245fd41583eae14a208b7fef4573c26c67e00d753556a0
6
+ metadata.gz: 9504088d569a6b295131e588a8a4274d1400764d8608dcf20bab9bc2d518c2f71c1de7b1e26386960bef2b69bc766cb8315b57a5277251841bdefe7fc8c704ca
7
+ data.tar.gz: c99004bbc1dbf4b6ccfcd0f6d98c217c4a489bbaef40d087578ad50d74976d0fe91c79e448a7715fbc1d646cb2efc0e6e6969e27b5b940e8bf5d5d18002e5fec
@@ -42,6 +42,6 @@ require_relative 'aws-sdk-configservice/customizations'
42
42
  # @service
43
43
  module Aws::ConfigService
44
44
 
45
- GEM_VERSION = '1.21.0'
45
+ GEM_VERSION = '1.22.0'
46
46
 
47
47
  end
@@ -544,6 +544,33 @@ module Aws::ConfigService
544
544
  req.send_request(options)
545
545
  end
546
546
 
547
+ # Deletes the remediation configuration.
548
+ #
549
+ # @option params [required, String] :config_rule_name
550
+ # The name of the AWS Config rule for which you want to delete
551
+ # remediation configuration for.
552
+ #
553
+ # @option params [String] :resource_type
554
+ # The type of a resource.
555
+ #
556
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
557
+ #
558
+ # @example Request syntax with placeholder values
559
+ #
560
+ # resp = client.delete_remediation_configuration({
561
+ # config_rule_name: "StringWithCharLimit64", # required
562
+ # resource_type: "String",
563
+ # })
564
+ #
565
+ # @see http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/DeleteRemediationConfiguration AWS API Documentation
566
+ #
567
+ # @overload delete_remediation_configuration(params = {})
568
+ # @param [Hash] params ({})
569
+ def delete_remediation_configuration(params = {}, options = {})
570
+ req = build_request(:delete_remediation_configuration, params)
571
+ req.send_request(options)
572
+ end
573
+
547
574
  # Deletes the retention configuration.
548
575
  #
549
576
  # @option params [required, String] :retention_configuration_name
@@ -740,8 +767,7 @@ module Aws::ConfigService
740
767
  # @option params [Array<String>] :compliance_types
741
768
  # Filters the results by compliance.
742
769
  #
743
- # The allowed values are `COMPLIANT`, `NON_COMPLIANT`, and
744
- # `INSUFFICIENT_DATA`.
770
+ # The allowed values are `COMPLIANT` and `NON_COMPLIANT`.
745
771
  #
746
772
  # @option params [String] :next_token
747
773
  # The `nextToken` string returned on a previous page that you use to get
@@ -819,7 +845,8 @@ module Aws::ConfigService
819
845
  # @option params [Array<String>] :compliance_types
820
846
  # Filters the results by compliance.
821
847
  #
822
- # The allowed values are `COMPLIANT` and `NON_COMPLIANT`.
848
+ # The allowed values are `COMPLIANT`, `NON_COMPLIANT`, and
849
+ # `INSUFFICIENT_DATA`.
823
850
  #
824
851
  # @option params [Integer] :limit
825
852
  # The maximum number of evaluation results returned on each page. The
@@ -986,9 +1013,10 @@ module Aws::ConfigService
986
1013
  end
987
1014
 
988
1015
  # Returns status information for sources within an aggregator. The
989
- # status includes information about the last time AWS Config aggregated
990
- # data from source accounts or AWS Config failed to aggregate data from
991
- # source accounts with the related error code or message.
1016
+ # status includes information about the last time AWS Config verified
1017
+ # authorization between the source account and an aggregator account. In
1018
+ # case of a failure, the status contains the related error code or
1019
+ # message.
992
1020
  #
993
1021
  # @option params [required, String] :configuration_aggregator_name
994
1022
  # The name of the configuration aggregator.
@@ -1318,6 +1346,109 @@ module Aws::ConfigService
1318
1346
  req.send_request(options)
1319
1347
  end
1320
1348
 
1349
+ # Returns the details of one or more remediation configuration.
1350
+ #
1351
+ # @option params [required, Array<String>] :config_rule_names
1352
+ # A list of AWS Config rule names of remediation configurations for
1353
+ # which you want details.
1354
+ #
1355
+ # @return [Types::DescribeRemediationConfigurationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1356
+ #
1357
+ # * {Types::DescribeRemediationConfigurationsResponse#remediation_configurations #remediation_configurations} => Array&lt;Types::RemediationConfiguration&gt;
1358
+ #
1359
+ # @example Request syntax with placeholder values
1360
+ #
1361
+ # resp = client.describe_remediation_configurations({
1362
+ # config_rule_names: ["StringWithCharLimit64"], # required
1363
+ # })
1364
+ #
1365
+ # @example Response structure
1366
+ #
1367
+ # resp.remediation_configurations #=> Array
1368
+ # resp.remediation_configurations[0].config_rule_name #=> String
1369
+ # resp.remediation_configurations[0].target_type #=> String, one of "SSM_DOCUMENT"
1370
+ # resp.remediation_configurations[0].target_id #=> String
1371
+ # resp.remediation_configurations[0].target_version #=> String
1372
+ # resp.remediation_configurations[0].parameters #=> Hash
1373
+ # resp.remediation_configurations[0].parameters["StringWithCharLimit256"].resource_value.value #=> String, one of "RESOURCE_ID"
1374
+ # resp.remediation_configurations[0].parameters["StringWithCharLimit256"].static_value.values #=> Array
1375
+ # resp.remediation_configurations[0].parameters["StringWithCharLimit256"].static_value.values[0] #=> String
1376
+ # resp.remediation_configurations[0].resource_type #=> String
1377
+ #
1378
+ # @see http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/DescribeRemediationConfigurations AWS API Documentation
1379
+ #
1380
+ # @overload describe_remediation_configurations(params = {})
1381
+ # @param [Hash] params ({})
1382
+ def describe_remediation_configurations(params = {}, options = {})
1383
+ req = build_request(:describe_remediation_configurations, params)
1384
+ req.send_request(options)
1385
+ end
1386
+
1387
+ # Provides a detailed view of a Remediation Execution for a set of
1388
+ # resources including state, timestamps for when steps for the
1389
+ # remediation execution happen, and any error messages for steps that
1390
+ # have failed. When you specify the limit and the next token, you
1391
+ # receive a paginated response.
1392
+ #
1393
+ # @option params [required, String] :config_rule_name
1394
+ # A list of config rule names.
1395
+ #
1396
+ # @option params [Array<Types::ResourceKey>] :resource_keys
1397
+ # A list of resource keys object.
1398
+ #
1399
+ # @option params [Integer] :limit
1400
+ # The maximum number of RemediationExecutionStatuses returned on each
1401
+ # page. The default is maximum. If you specify 0, AWS Config uses the
1402
+ # default.
1403
+ #
1404
+ # @option params [String] :next_token
1405
+ # The `nextToken` string returned on a previous page that you use to get
1406
+ # the next page of results in a paginated response.
1407
+ #
1408
+ # @return [Types::DescribeRemediationExecutionStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1409
+ #
1410
+ # * {Types::DescribeRemediationExecutionStatusResponse#remediation_execution_statuses #remediation_execution_statuses} => Array&lt;Types::RemediationExecutionStatus&gt;
1411
+ # * {Types::DescribeRemediationExecutionStatusResponse#next_token #next_token} => String
1412
+ #
1413
+ # @example Request syntax with placeholder values
1414
+ #
1415
+ # resp = client.describe_remediation_execution_status({
1416
+ # config_rule_name: "StringWithCharLimit64", # required
1417
+ # resource_keys: [
1418
+ # {
1419
+ # resource_type: "AWS::EC2::CustomerGateway", # required, accepts AWS::EC2::CustomerGateway, AWS::EC2::EIP, AWS::EC2::Host, AWS::EC2::Instance, AWS::EC2::InternetGateway, AWS::EC2::NetworkAcl, AWS::EC2::NetworkInterface, AWS::EC2::RouteTable, AWS::EC2::SecurityGroup, AWS::EC2::Subnet, AWS::CloudTrail::Trail, AWS::EC2::Volume, AWS::EC2::VPC, AWS::EC2::VPNConnection, AWS::EC2::VPNGateway, AWS::IAM::Group, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, AWS::ACM::Certificate, AWS::RDS::DBInstance, AWS::RDS::DBSubnetGroup, AWS::RDS::DBSecurityGroup, AWS::RDS::DBSnapshot, AWS::RDS::EventSubscription, AWS::ElasticLoadBalancingV2::LoadBalancer, AWS::S3::Bucket, AWS::SSM::ManagedInstanceInventory, AWS::Redshift::Cluster, AWS::Redshift::ClusterSnapshot, AWS::Redshift::ClusterParameterGroup, AWS::Redshift::ClusterSecurityGroup, AWS::Redshift::ClusterSubnetGroup, AWS::Redshift::EventSubscription, AWS::CloudWatch::Alarm, AWS::CloudFormation::Stack, AWS::DynamoDB::Table, AWS::AutoScaling::AutoScalingGroup, AWS::AutoScaling::LaunchConfiguration, AWS::AutoScaling::ScalingPolicy, AWS::AutoScaling::ScheduledAction, AWS::CodeBuild::Project, AWS::WAF::RateBasedRule, AWS::WAF::Rule, AWS::WAF::WebACL, AWS::WAFRegional::RateBasedRule, AWS::WAFRegional::Rule, AWS::WAFRegional::WebACL, AWS::CloudFront::Distribution, AWS::CloudFront::StreamingDistribution, AWS::WAF::RuleGroup, AWS::WAFRegional::RuleGroup, AWS::Lambda::Function, AWS::ElasticBeanstalk::Application, AWS::ElasticBeanstalk::ApplicationVersion, AWS::ElasticBeanstalk::Environment, AWS::ElasticLoadBalancing::LoadBalancer, AWS::XRay::EncryptionConfig, AWS::SSM::AssociationCompliance, AWS::SSM::PatchCompliance, AWS::Shield::Protection, AWS::ShieldRegional::Protection, AWS::Config::ResourceCompliance, AWS::CodePipeline::Pipeline
1420
+ # resource_id: "ResourceId", # required
1421
+ # },
1422
+ # ],
1423
+ # limit: 1,
1424
+ # next_token: "StringWithCharLimit256",
1425
+ # })
1426
+ #
1427
+ # @example Response structure
1428
+ #
1429
+ # resp.remediation_execution_statuses #=> Array
1430
+ # resp.remediation_execution_statuses[0].resource_key.resource_type #=> String, one of "AWS::EC2::CustomerGateway", "AWS::EC2::EIP", "AWS::EC2::Host", "AWS::EC2::Instance", "AWS::EC2::InternetGateway", "AWS::EC2::NetworkAcl", "AWS::EC2::NetworkInterface", "AWS::EC2::RouteTable", "AWS::EC2::SecurityGroup", "AWS::EC2::Subnet", "AWS::CloudTrail::Trail", "AWS::EC2::Volume", "AWS::EC2::VPC", "AWS::EC2::VPNConnection", "AWS::EC2::VPNGateway", "AWS::IAM::Group", "AWS::IAM::Policy", "AWS::IAM::Role", "AWS::IAM::User", "AWS::ACM::Certificate", "AWS::RDS::DBInstance", "AWS::RDS::DBSubnetGroup", "AWS::RDS::DBSecurityGroup", "AWS::RDS::DBSnapshot", "AWS::RDS::EventSubscription", "AWS::ElasticLoadBalancingV2::LoadBalancer", "AWS::S3::Bucket", "AWS::SSM::ManagedInstanceInventory", "AWS::Redshift::Cluster", "AWS::Redshift::ClusterSnapshot", "AWS::Redshift::ClusterParameterGroup", "AWS::Redshift::ClusterSecurityGroup", "AWS::Redshift::ClusterSubnetGroup", "AWS::Redshift::EventSubscription", "AWS::CloudWatch::Alarm", "AWS::CloudFormation::Stack", "AWS::DynamoDB::Table", "AWS::AutoScaling::AutoScalingGroup", "AWS::AutoScaling::LaunchConfiguration", "AWS::AutoScaling::ScalingPolicy", "AWS::AutoScaling::ScheduledAction", "AWS::CodeBuild::Project", "AWS::WAF::RateBasedRule", "AWS::WAF::Rule", "AWS::WAF::WebACL", "AWS::WAFRegional::RateBasedRule", "AWS::WAFRegional::Rule", "AWS::WAFRegional::WebACL", "AWS::CloudFront::Distribution", "AWS::CloudFront::StreamingDistribution", "AWS::WAF::RuleGroup", "AWS::WAFRegional::RuleGroup", "AWS::Lambda::Function", "AWS::ElasticBeanstalk::Application", "AWS::ElasticBeanstalk::ApplicationVersion", "AWS::ElasticBeanstalk::Environment", "AWS::ElasticLoadBalancing::LoadBalancer", "AWS::XRay::EncryptionConfig", "AWS::SSM::AssociationCompliance", "AWS::SSM::PatchCompliance", "AWS::Shield::Protection", "AWS::ShieldRegional::Protection", "AWS::Config::ResourceCompliance", "AWS::CodePipeline::Pipeline"
1431
+ # resp.remediation_execution_statuses[0].resource_key.resource_id #=> String
1432
+ # resp.remediation_execution_statuses[0].state #=> String, one of "QUEUED", "IN_PROGRESS", "SUCCEEDED", "FAILED"
1433
+ # resp.remediation_execution_statuses[0].step_details #=> Array
1434
+ # resp.remediation_execution_statuses[0].step_details[0].name #=> String
1435
+ # resp.remediation_execution_statuses[0].step_details[0].state #=> String, one of "SUCCEEDED", "PENDING", "FAILED"
1436
+ # resp.remediation_execution_statuses[0].step_details[0].error_message #=> String
1437
+ # resp.remediation_execution_statuses[0].step_details[0].start_time #=> Time
1438
+ # resp.remediation_execution_statuses[0].step_details[0].stop_time #=> Time
1439
+ # resp.remediation_execution_statuses[0].invocation_time #=> Time
1440
+ # resp.remediation_execution_statuses[0].last_updated_time #=> Time
1441
+ # resp.next_token #=> String
1442
+ #
1443
+ # @see http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/DescribeRemediationExecutionStatus AWS API Documentation
1444
+ #
1445
+ # @overload describe_remediation_execution_status(params = {})
1446
+ # @param [Hash] params ({})
1447
+ def describe_remediation_execution_status(params = {}, options = {})
1448
+ req = build_request(:describe_remediation_execution_status, params)
1449
+ req.send_request(options)
1450
+ end
1451
+
1321
1452
  # Returns the details of one or more retention configurations. If the
1322
1453
  # retention configuration name is not specified, this action returns the
1323
1454
  # details for all the retention configurations for that account.
@@ -2253,7 +2384,7 @@ module Aws::ConfigService
2253
2384
  # the rule by `ConfigRuleName`, `ConfigRuleId`, or `ConfigRuleArn` in
2254
2385
  # the `ConfigRule` data type that you use in this request.
2255
2386
  #
2256
- # The maximum number of rules that AWS Config supports is 50.
2387
+ # The maximum number of rules that AWS Config supports is 150.
2257
2388
  #
2258
2389
  # For information about requesting a rule limit increase, see [AWS
2259
2390
  # Config Limits][2] in the *AWS General Reference Guide*.
@@ -2264,9 +2395,9 @@ module Aws::ConfigService
2264
2395
  #
2265
2396
  #
2266
2397
  #
2267
- # [1]: http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_use-managed-rules.html
2398
+ # [1]: https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_use-managed-rules.html
2268
2399
  # [2]: http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_config
2269
- # [3]: http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html
2400
+ # [3]: https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html
2270
2401
  #
2271
2402
  # @option params [required, Types::ConfigRule] :config_rule
2272
2403
  # The rule that you want to add to your account.
@@ -2539,6 +2670,68 @@ module Aws::ConfigService
2539
2670
  req.send_request(options)
2540
2671
  end
2541
2672
 
2673
+ # Adds or updates the remediation configuration with a specific AWS
2674
+ # Config rule with the selected target or action. The API creates the
2675
+ # `RemediationConfiguration` object for the AWS Config rule. AWS Config
2676
+ # rule must already exist for you to add a remeduation configuration.
2677
+ # The target (SSM document) must exist and have permissions to use the
2678
+ # target.
2679
+ #
2680
+ # @option params [required, Array<Types::RemediationConfiguration>] :remediation_configurations
2681
+ # A list of remediation configuration objects.
2682
+ #
2683
+ # @return [Types::PutRemediationConfigurationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2684
+ #
2685
+ # * {Types::PutRemediationConfigurationsResponse#failed_batches #failed_batches} => Array&lt;Types::FailedRemediationBatch&gt;
2686
+ #
2687
+ # @example Request syntax with placeholder values
2688
+ #
2689
+ # resp = client.put_remediation_configurations({
2690
+ # remediation_configurations: [ # required
2691
+ # {
2692
+ # config_rule_name: "StringWithCharLimit64", # required
2693
+ # target_type: "SSM_DOCUMENT", # required, accepts SSM_DOCUMENT
2694
+ # target_id: "StringWithCharLimit256", # required
2695
+ # target_version: "String",
2696
+ # parameters: {
2697
+ # "StringWithCharLimit256" => {
2698
+ # resource_value: {
2699
+ # value: "RESOURCE_ID", # accepts RESOURCE_ID
2700
+ # },
2701
+ # static_value: {
2702
+ # values: ["StringWithCharLimit256"],
2703
+ # },
2704
+ # },
2705
+ # },
2706
+ # resource_type: "String",
2707
+ # },
2708
+ # ],
2709
+ # })
2710
+ #
2711
+ # @example Response structure
2712
+ #
2713
+ # resp.failed_batches #=> Array
2714
+ # resp.failed_batches[0].failure_message #=> String
2715
+ # resp.failed_batches[0].failed_items #=> Array
2716
+ # resp.failed_batches[0].failed_items[0].config_rule_name #=> String
2717
+ # resp.failed_batches[0].failed_items[0].target_type #=> String, one of "SSM_DOCUMENT"
2718
+ # resp.failed_batches[0].failed_items[0].target_id #=> String
2719
+ # resp.failed_batches[0].failed_items[0].target_version #=> String
2720
+ # resp.failed_batches[0].failed_items[0].parameters #=> Hash
2721
+ # resp.failed_batches[0].failed_items[0].parameters["StringWithCharLimit256"].resource_value.value #=> String, one of "RESOURCE_ID"
2722
+ # resp.failed_batches[0].failed_items[0].parameters["StringWithCharLimit256"].static_value.values #=> Array
2723
+ # resp.failed_batches[0].failed_items[0].parameters["StringWithCharLimit256"].static_value.values[0] #=> String
2724
+ # resp.failed_batches[0].failed_items[0].resource_type #=> String
2725
+ #
2726
+ # @see http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/PutRemediationConfigurations AWS API Documentation
2727
+ #
2728
+ # @overload put_remediation_configurations(params = {})
2729
+ # @param [Hash] params ({})
2730
+ def put_remediation_configurations(params = {}, options = {})
2731
+ req = build_request(:put_remediation_configurations, params)
2732
+ req.send_request(options)
2733
+ end
2734
+
2542
2735
  # Creates and updates the retention configuration with details about
2543
2736
  # retention period (number of days) that AWS Config stores your
2544
2737
  # historical information. The API creates the `RetentionConfiguration`
@@ -2668,6 +2861,55 @@ module Aws::ConfigService
2668
2861
  req.send_request(options)
2669
2862
  end
2670
2863
 
2864
+ # Runs an on-demand remediation for the specified AWS Config rules
2865
+ # against the last known remediation configuration. It runs an execution
2866
+ # against the current state of your resources. Remediation execution is
2867
+ # asynchronous.
2868
+ #
2869
+ # You can specify up to 100 resource keys per request. An existing
2870
+ # StartRemediationExecution call for the specified resource keys must
2871
+ # complete before you can call the API again.
2872
+ #
2873
+ # @option params [required, String] :config_rule_name
2874
+ # The list of names of AWS Config rules that you want to run remediation
2875
+ # execution for.
2876
+ #
2877
+ # @option params [required, Array<Types::ResourceKey>] :resource_keys
2878
+ # A list of resource key object.
2879
+ #
2880
+ # @return [Types::StartRemediationExecutionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2881
+ #
2882
+ # * {Types::StartRemediationExecutionResponse#failure_message #failure_message} => String
2883
+ # * {Types::StartRemediationExecutionResponse#failed_items #failed_items} => Array&lt;Types::ResourceKey&gt;
2884
+ #
2885
+ # @example Request syntax with placeholder values
2886
+ #
2887
+ # resp = client.start_remediation_execution({
2888
+ # config_rule_name: "StringWithCharLimit64", # required
2889
+ # resource_keys: [ # required
2890
+ # {
2891
+ # resource_type: "AWS::EC2::CustomerGateway", # required, accepts AWS::EC2::CustomerGateway, AWS::EC2::EIP, AWS::EC2::Host, AWS::EC2::Instance, AWS::EC2::InternetGateway, AWS::EC2::NetworkAcl, AWS::EC2::NetworkInterface, AWS::EC2::RouteTable, AWS::EC2::SecurityGroup, AWS::EC2::Subnet, AWS::CloudTrail::Trail, AWS::EC2::Volume, AWS::EC2::VPC, AWS::EC2::VPNConnection, AWS::EC2::VPNGateway, AWS::IAM::Group, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, AWS::ACM::Certificate, AWS::RDS::DBInstance, AWS::RDS::DBSubnetGroup, AWS::RDS::DBSecurityGroup, AWS::RDS::DBSnapshot, AWS::RDS::EventSubscription, AWS::ElasticLoadBalancingV2::LoadBalancer, AWS::S3::Bucket, AWS::SSM::ManagedInstanceInventory, AWS::Redshift::Cluster, AWS::Redshift::ClusterSnapshot, AWS::Redshift::ClusterParameterGroup, AWS::Redshift::ClusterSecurityGroup, AWS::Redshift::ClusterSubnetGroup, AWS::Redshift::EventSubscription, AWS::CloudWatch::Alarm, AWS::CloudFormation::Stack, AWS::DynamoDB::Table, AWS::AutoScaling::AutoScalingGroup, AWS::AutoScaling::LaunchConfiguration, AWS::AutoScaling::ScalingPolicy, AWS::AutoScaling::ScheduledAction, AWS::CodeBuild::Project, AWS::WAF::RateBasedRule, AWS::WAF::Rule, AWS::WAF::WebACL, AWS::WAFRegional::RateBasedRule, AWS::WAFRegional::Rule, AWS::WAFRegional::WebACL, AWS::CloudFront::Distribution, AWS::CloudFront::StreamingDistribution, AWS::WAF::RuleGroup, AWS::WAFRegional::RuleGroup, AWS::Lambda::Function, AWS::ElasticBeanstalk::Application, AWS::ElasticBeanstalk::ApplicationVersion, AWS::ElasticBeanstalk::Environment, AWS::ElasticLoadBalancing::LoadBalancer, AWS::XRay::EncryptionConfig, AWS::SSM::AssociationCompliance, AWS::SSM::PatchCompliance, AWS::Shield::Protection, AWS::ShieldRegional::Protection, AWS::Config::ResourceCompliance, AWS::CodePipeline::Pipeline
2892
+ # resource_id: "ResourceId", # required
2893
+ # },
2894
+ # ],
2895
+ # })
2896
+ #
2897
+ # @example Response structure
2898
+ #
2899
+ # resp.failure_message #=> String
2900
+ # resp.failed_items #=> Array
2901
+ # resp.failed_items[0].resource_type #=> String, one of "AWS::EC2::CustomerGateway", "AWS::EC2::EIP", "AWS::EC2::Host", "AWS::EC2::Instance", "AWS::EC2::InternetGateway", "AWS::EC2::NetworkAcl", "AWS::EC2::NetworkInterface", "AWS::EC2::RouteTable", "AWS::EC2::SecurityGroup", "AWS::EC2::Subnet", "AWS::CloudTrail::Trail", "AWS::EC2::Volume", "AWS::EC2::VPC", "AWS::EC2::VPNConnection", "AWS::EC2::VPNGateway", "AWS::IAM::Group", "AWS::IAM::Policy", "AWS::IAM::Role", "AWS::IAM::User", "AWS::ACM::Certificate", "AWS::RDS::DBInstance", "AWS::RDS::DBSubnetGroup", "AWS::RDS::DBSecurityGroup", "AWS::RDS::DBSnapshot", "AWS::RDS::EventSubscription", "AWS::ElasticLoadBalancingV2::LoadBalancer", "AWS::S3::Bucket", "AWS::SSM::ManagedInstanceInventory", "AWS::Redshift::Cluster", "AWS::Redshift::ClusterSnapshot", "AWS::Redshift::ClusterParameterGroup", "AWS::Redshift::ClusterSecurityGroup", "AWS::Redshift::ClusterSubnetGroup", "AWS::Redshift::EventSubscription", "AWS::CloudWatch::Alarm", "AWS::CloudFormation::Stack", "AWS::DynamoDB::Table", "AWS::AutoScaling::AutoScalingGroup", "AWS::AutoScaling::LaunchConfiguration", "AWS::AutoScaling::ScalingPolicy", "AWS::AutoScaling::ScheduledAction", "AWS::CodeBuild::Project", "AWS::WAF::RateBasedRule", "AWS::WAF::Rule", "AWS::WAF::WebACL", "AWS::WAFRegional::RateBasedRule", "AWS::WAFRegional::Rule", "AWS::WAFRegional::WebACL", "AWS::CloudFront::Distribution", "AWS::CloudFront::StreamingDistribution", "AWS::WAF::RuleGroup", "AWS::WAFRegional::RuleGroup", "AWS::Lambda::Function", "AWS::ElasticBeanstalk::Application", "AWS::ElasticBeanstalk::ApplicationVersion", "AWS::ElasticBeanstalk::Environment", "AWS::ElasticLoadBalancing::LoadBalancer", "AWS::XRay::EncryptionConfig", "AWS::SSM::AssociationCompliance", "AWS::SSM::PatchCompliance", "AWS::Shield::Protection", "AWS::ShieldRegional::Protection", "AWS::Config::ResourceCompliance", "AWS::CodePipeline::Pipeline"
2902
+ # resp.failed_items[0].resource_id #=> String
2903
+ #
2904
+ # @see http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/StartRemediationExecution AWS API Documentation
2905
+ #
2906
+ # @overload start_remediation_execution(params = {})
2907
+ # @param [Hash] params ({})
2908
+ def start_remediation_execution(params = {}, options = {})
2909
+ req = build_request(:start_remediation_execution, params)
2910
+ req.send_request(options)
2911
+ end
2912
+
2671
2913
  # Stops recording configurations of the AWS resources you have selected
2672
2914
  # to record in your AWS account.
2673
2915
  #
@@ -2705,7 +2947,7 @@ module Aws::ConfigService
2705
2947
  params: params,
2706
2948
  config: config)
2707
2949
  context[:gem_name] = 'aws-sdk-configservice'
2708
- context[:gem_version] = '1.21.0'
2950
+ context[:gem_version] = '1.22.0'
2709
2951
  Seahorse::Client::Request.new(handlers, context)
2710
2952
  end
2711
2953
 
@@ -95,6 +95,8 @@ module Aws::ConfigService
95
95
  DeleteEvaluationResultsRequest = Shapes::StructureShape.new(name: 'DeleteEvaluationResultsRequest')
96
96
  DeleteEvaluationResultsResponse = Shapes::StructureShape.new(name: 'DeleteEvaluationResultsResponse')
97
97
  DeletePendingAggregationRequestRequest = Shapes::StructureShape.new(name: 'DeletePendingAggregationRequestRequest')
98
+ DeleteRemediationConfigurationRequest = Shapes::StructureShape.new(name: 'DeleteRemediationConfigurationRequest')
99
+ DeleteRemediationConfigurationResponse = Shapes::StructureShape.new(name: 'DeleteRemediationConfigurationResponse')
98
100
  DeleteRetentionConfigurationRequest = Shapes::StructureShape.new(name: 'DeleteRetentionConfigurationRequest')
99
101
  DeliverConfigSnapshotRequest = Shapes::StructureShape.new(name: 'DeliverConfigSnapshotRequest')
100
102
  DeliverConfigSnapshotResponse = Shapes::StructureShape.new(name: 'DeliverConfigSnapshotResponse')
@@ -131,6 +133,10 @@ module Aws::ConfigService
131
133
  DescribePendingAggregationRequestsLimit = Shapes::IntegerShape.new(name: 'DescribePendingAggregationRequestsLimit')
132
134
  DescribePendingAggregationRequestsRequest = Shapes::StructureShape.new(name: 'DescribePendingAggregationRequestsRequest')
133
135
  DescribePendingAggregationRequestsResponse = Shapes::StructureShape.new(name: 'DescribePendingAggregationRequestsResponse')
136
+ DescribeRemediationConfigurationsRequest = Shapes::StructureShape.new(name: 'DescribeRemediationConfigurationsRequest')
137
+ DescribeRemediationConfigurationsResponse = Shapes::StructureShape.new(name: 'DescribeRemediationConfigurationsResponse')
138
+ DescribeRemediationExecutionStatusRequest = Shapes::StructureShape.new(name: 'DescribeRemediationExecutionStatusRequest')
139
+ DescribeRemediationExecutionStatusResponse = Shapes::StructureShape.new(name: 'DescribeRemediationExecutionStatusResponse')
134
140
  DescribeRetentionConfigurationsRequest = Shapes::StructureShape.new(name: 'DescribeRetentionConfigurationsRequest')
135
141
  DescribeRetentionConfigurationsResponse = Shapes::StructureShape.new(name: 'DescribeRetentionConfigurationsResponse')
136
142
  DiscoveredResourceIdentifierList = Shapes::ListShape.new(name: 'DiscoveredResourceIdentifierList')
@@ -143,6 +149,8 @@ module Aws::ConfigService
143
149
  EvaluationResults = Shapes::ListShape.new(name: 'EvaluationResults')
144
150
  Evaluations = Shapes::ListShape.new(name: 'Evaluations')
145
151
  EventSource = Shapes::StringShape.new(name: 'EventSource')
152
+ FailedRemediationBatch = Shapes::StructureShape.new(name: 'FailedRemediationBatch')
153
+ FailedRemediationBatches = Shapes::ListShape.new(name: 'FailedRemediationBatches')
146
154
  GetAggregateComplianceDetailsByConfigRuleRequest = Shapes::StructureShape.new(name: 'GetAggregateComplianceDetailsByConfigRuleRequest')
147
155
  GetAggregateComplianceDetailsByConfigRuleResponse = Shapes::StructureShape.new(name: 'GetAggregateComplianceDetailsByConfigRuleResponse')
148
156
  GetAggregateConfigRuleComplianceSummaryRequest = Shapes::StructureShape.new(name: 'GetAggregateConfigRuleComplianceSummaryRequest')
@@ -206,6 +214,7 @@ module Aws::ConfigService
206
214
  NoSuchConfigurationAggregatorException = Shapes::StructureShape.new(name: 'NoSuchConfigurationAggregatorException')
207
215
  NoSuchConfigurationRecorderException = Shapes::StructureShape.new(name: 'NoSuchConfigurationRecorderException')
208
216
  NoSuchDeliveryChannelException = Shapes::StructureShape.new(name: 'NoSuchDeliveryChannelException')
217
+ NoSuchRemediationConfigurationException = Shapes::StructureShape.new(name: 'NoSuchRemediationConfigurationException')
209
218
  NoSuchRetentionConfigurationException = Shapes::StructureShape.new(name: 'NoSuchRetentionConfigurationException')
210
219
  OrderingTimestamp = Shapes::TimestampShape.new(name: 'OrderingTimestamp')
211
220
  OrganizationAccessDeniedException = Shapes::StructureShape.new(name: 'OrganizationAccessDeniedException')
@@ -224,6 +233,8 @@ module Aws::ConfigService
224
233
  PutDeliveryChannelRequest = Shapes::StructureShape.new(name: 'PutDeliveryChannelRequest')
225
234
  PutEvaluationsRequest = Shapes::StructureShape.new(name: 'PutEvaluationsRequest')
226
235
  PutEvaluationsResponse = Shapes::StructureShape.new(name: 'PutEvaluationsResponse')
236
+ PutRemediationConfigurationsRequest = Shapes::StructureShape.new(name: 'PutRemediationConfigurationsRequest')
237
+ PutRemediationConfigurationsResponse = Shapes::StructureShape.new(name: 'PutRemediationConfigurationsResponse')
227
238
  PutRetentionConfigurationRequest = Shapes::StructureShape.new(name: 'PutRetentionConfigurationRequest')
228
239
  PutRetentionConfigurationResponse = Shapes::StructureShape.new(name: 'PutRetentionConfigurationResponse')
229
240
  RecorderName = Shapes::StringShape.new(name: 'RecorderName')
@@ -235,6 +246,17 @@ module Aws::ConfigService
235
246
  Relationship = Shapes::StructureShape.new(name: 'Relationship')
236
247
  RelationshipList = Shapes::ListShape.new(name: 'RelationshipList')
237
248
  RelationshipName = Shapes::StringShape.new(name: 'RelationshipName')
249
+ RemediationConfiguration = Shapes::StructureShape.new(name: 'RemediationConfiguration')
250
+ RemediationConfigurations = Shapes::ListShape.new(name: 'RemediationConfigurations')
251
+ RemediationExecutionState = Shapes::StringShape.new(name: 'RemediationExecutionState')
252
+ RemediationExecutionStatus = Shapes::StructureShape.new(name: 'RemediationExecutionStatus')
253
+ RemediationExecutionStatuses = Shapes::ListShape.new(name: 'RemediationExecutionStatuses')
254
+ RemediationExecutionStep = Shapes::StructureShape.new(name: 'RemediationExecutionStep')
255
+ RemediationExecutionStepState = Shapes::StringShape.new(name: 'RemediationExecutionStepState')
256
+ RemediationExecutionSteps = Shapes::ListShape.new(name: 'RemediationExecutionSteps')
257
+ RemediationParameterValue = Shapes::StructureShape.new(name: 'RemediationParameterValue')
258
+ RemediationParameters = Shapes::MapShape.new(name: 'RemediationParameters')
259
+ RemediationTargetType = Shapes::StringShape.new(name: 'RemediationTargetType')
238
260
  ResourceCount = Shapes::StructureShape.new(name: 'ResourceCount')
239
261
  ResourceCountFilters = Shapes::StructureShape.new(name: 'ResourceCountFilters')
240
262
  ResourceCountGroupKey = Shapes::StringShape.new(name: 'ResourceCountGroupKey')
@@ -255,6 +277,8 @@ module Aws::ConfigService
255
277
  ResourceType = Shapes::StringShape.new(name: 'ResourceType')
256
278
  ResourceTypeList = Shapes::ListShape.new(name: 'ResourceTypeList')
257
279
  ResourceTypes = Shapes::ListShape.new(name: 'ResourceTypes')
280
+ ResourceValue = Shapes::StructureShape.new(name: 'ResourceValue')
281
+ ResourceValueType = Shapes::StringShape.new(name: 'ResourceValueType')
258
282
  RetentionConfiguration = Shapes::StructureShape.new(name: 'RetentionConfiguration')
259
283
  RetentionConfigurationList = Shapes::ListShape.new(name: 'RetentionConfigurationList')
260
284
  RetentionConfigurationName = Shapes::StringShape.new(name: 'RetentionConfigurationName')
@@ -268,6 +292,10 @@ module Aws::ConfigService
268
292
  StartConfigRulesEvaluationRequest = Shapes::StructureShape.new(name: 'StartConfigRulesEvaluationRequest')
269
293
  StartConfigRulesEvaluationResponse = Shapes::StructureShape.new(name: 'StartConfigRulesEvaluationResponse')
270
294
  StartConfigurationRecorderRequest = Shapes::StructureShape.new(name: 'StartConfigurationRecorderRequest')
295
+ StartRemediationExecutionRequest = Shapes::StructureShape.new(name: 'StartRemediationExecutionRequest')
296
+ StartRemediationExecutionResponse = Shapes::StructureShape.new(name: 'StartRemediationExecutionResponse')
297
+ StaticParameterValues = Shapes::ListShape.new(name: 'StaticParameterValues')
298
+ StaticValue = Shapes::StructureShape.new(name: 'StaticValue')
271
299
  StopConfigurationRecorderRequest = Shapes::StructureShape.new(name: 'StopConfigurationRecorderRequest')
272
300
  String = Shapes::StringShape.new(name: 'String')
273
301
  StringWithCharLimit1024 = Shapes::StringShape.new(name: 'StringWithCharLimit1024')
@@ -554,6 +582,12 @@ module Aws::ConfigService
554
582
  DeletePendingAggregationRequestRequest.add_member(:requester_aws_region, Shapes::ShapeRef.new(shape: AwsRegion, required: true, location_name: "RequesterAwsRegion"))
555
583
  DeletePendingAggregationRequestRequest.struct_class = Types::DeletePendingAggregationRequestRequest
556
584
 
585
+ DeleteRemediationConfigurationRequest.add_member(:config_rule_name, Shapes::ShapeRef.new(shape: StringWithCharLimit64, required: true, location_name: "ConfigRuleName"))
586
+ DeleteRemediationConfigurationRequest.add_member(:resource_type, Shapes::ShapeRef.new(shape: String, location_name: "ResourceType"))
587
+ DeleteRemediationConfigurationRequest.struct_class = Types::DeleteRemediationConfigurationRequest
588
+
589
+ DeleteRemediationConfigurationResponse.struct_class = Types::DeleteRemediationConfigurationResponse
590
+
557
591
  DeleteRetentionConfigurationRequest.add_member(:retention_configuration_name, Shapes::ShapeRef.new(shape: RetentionConfigurationName, required: true, location_name: "RetentionConfigurationName"))
558
592
  DeleteRetentionConfigurationRequest.struct_class = Types::DeleteRetentionConfigurationRequest
559
593
 
@@ -688,6 +722,22 @@ module Aws::ConfigService
688
722
  DescribePendingAggregationRequestsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "NextToken"))
689
723
  DescribePendingAggregationRequestsResponse.struct_class = Types::DescribePendingAggregationRequestsResponse
690
724
 
725
+ DescribeRemediationConfigurationsRequest.add_member(:config_rule_names, Shapes::ShapeRef.new(shape: ConfigRuleNames, required: true, location_name: "ConfigRuleNames"))
726
+ DescribeRemediationConfigurationsRequest.struct_class = Types::DescribeRemediationConfigurationsRequest
727
+
728
+ DescribeRemediationConfigurationsResponse.add_member(:remediation_configurations, Shapes::ShapeRef.new(shape: RemediationConfigurations, location_name: "RemediationConfigurations"))
729
+ DescribeRemediationConfigurationsResponse.struct_class = Types::DescribeRemediationConfigurationsResponse
730
+
731
+ DescribeRemediationExecutionStatusRequest.add_member(:config_rule_name, Shapes::ShapeRef.new(shape: StringWithCharLimit64, required: true, location_name: "ConfigRuleName"))
732
+ DescribeRemediationExecutionStatusRequest.add_member(:resource_keys, Shapes::ShapeRef.new(shape: ResourceKeys, location_name: "ResourceKeys"))
733
+ DescribeRemediationExecutionStatusRequest.add_member(:limit, Shapes::ShapeRef.new(shape: Limit, location_name: "Limit"))
734
+ DescribeRemediationExecutionStatusRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: StringWithCharLimit256, location_name: "NextToken"))
735
+ DescribeRemediationExecutionStatusRequest.struct_class = Types::DescribeRemediationExecutionStatusRequest
736
+
737
+ DescribeRemediationExecutionStatusResponse.add_member(:remediation_execution_statuses, Shapes::ShapeRef.new(shape: RemediationExecutionStatuses, location_name: "RemediationExecutionStatuses"))
738
+ DescribeRemediationExecutionStatusResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: StringWithCharLimit256, location_name: "NextToken"))
739
+ DescribeRemediationExecutionStatusResponse.struct_class = Types::DescribeRemediationExecutionStatusResponse
740
+
691
741
  DescribeRetentionConfigurationsRequest.add_member(:retention_configuration_names, Shapes::ShapeRef.new(shape: RetentionConfigurationNameList, location_name: "RetentionConfigurationNames"))
692
742
  DescribeRetentionConfigurationsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
693
743
  DescribeRetentionConfigurationsRequest.struct_class = Types::DescribeRetentionConfigurationsRequest
@@ -726,6 +776,12 @@ module Aws::ConfigService
726
776
 
727
777
  Evaluations.member = Shapes::ShapeRef.new(shape: Evaluation)
728
778
 
779
+ FailedRemediationBatch.add_member(:failure_message, Shapes::ShapeRef.new(shape: String, location_name: "FailureMessage"))
780
+ FailedRemediationBatch.add_member(:failed_items, Shapes::ShapeRef.new(shape: RemediationConfigurations, location_name: "FailedItems"))
781
+ FailedRemediationBatch.struct_class = Types::FailedRemediationBatch
782
+
783
+ FailedRemediationBatches.member = Shapes::ShapeRef.new(shape: FailedRemediationBatch)
784
+
729
785
  GetAggregateComplianceDetailsByConfigRuleRequest.add_member(:configuration_aggregator_name, Shapes::ShapeRef.new(shape: ConfigurationAggregatorName, required: true, location_name: "ConfigurationAggregatorName"))
730
786
  GetAggregateComplianceDetailsByConfigRuleRequest.add_member(:config_rule_name, Shapes::ShapeRef.new(shape: ConfigRuleName, required: true, location_name: "ConfigRuleName"))
731
787
  GetAggregateComplianceDetailsByConfigRuleRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location_name: "AccountId"))
@@ -895,6 +951,12 @@ module Aws::ConfigService
895
951
  PutEvaluationsResponse.add_member(:failed_evaluations, Shapes::ShapeRef.new(shape: Evaluations, location_name: "FailedEvaluations"))
896
952
  PutEvaluationsResponse.struct_class = Types::PutEvaluationsResponse
897
953
 
954
+ PutRemediationConfigurationsRequest.add_member(:remediation_configurations, Shapes::ShapeRef.new(shape: RemediationConfigurations, required: true, location_name: "RemediationConfigurations"))
955
+ PutRemediationConfigurationsRequest.struct_class = Types::PutRemediationConfigurationsRequest
956
+
957
+ PutRemediationConfigurationsResponse.add_member(:failed_batches, Shapes::ShapeRef.new(shape: FailedRemediationBatches, location_name: "FailedBatches"))
958
+ PutRemediationConfigurationsResponse.struct_class = Types::PutRemediationConfigurationsResponse
959
+
898
960
  PutRetentionConfigurationRequest.add_member(:retention_period_in_days, Shapes::ShapeRef.new(shape: RetentionPeriodInDays, required: true, location_name: "RetentionPeriodInDays"))
899
961
  PutRetentionConfigurationRequest.struct_class = Types::PutRetentionConfigurationRequest
900
962
 
@@ -918,6 +980,41 @@ module Aws::ConfigService
918
980
 
919
981
  RelationshipList.member = Shapes::ShapeRef.new(shape: Relationship)
920
982
 
983
+ RemediationConfiguration.add_member(:config_rule_name, Shapes::ShapeRef.new(shape: StringWithCharLimit64, required: true, location_name: "ConfigRuleName"))
984
+ RemediationConfiguration.add_member(:target_type, Shapes::ShapeRef.new(shape: RemediationTargetType, required: true, location_name: "TargetType"))
985
+ RemediationConfiguration.add_member(:target_id, Shapes::ShapeRef.new(shape: StringWithCharLimit256, required: true, location_name: "TargetId"))
986
+ RemediationConfiguration.add_member(:target_version, Shapes::ShapeRef.new(shape: String, location_name: "TargetVersion"))
987
+ RemediationConfiguration.add_member(:parameters, Shapes::ShapeRef.new(shape: RemediationParameters, location_name: "Parameters"))
988
+ RemediationConfiguration.add_member(:resource_type, Shapes::ShapeRef.new(shape: String, location_name: "ResourceType"))
989
+ RemediationConfiguration.struct_class = Types::RemediationConfiguration
990
+
991
+ RemediationConfigurations.member = Shapes::ShapeRef.new(shape: RemediationConfiguration)
992
+
993
+ RemediationExecutionStatus.add_member(:resource_key, Shapes::ShapeRef.new(shape: ResourceKey, location_name: "ResourceKey"))
994
+ RemediationExecutionStatus.add_member(:state, Shapes::ShapeRef.new(shape: RemediationExecutionState, location_name: "State"))
995
+ RemediationExecutionStatus.add_member(:step_details, Shapes::ShapeRef.new(shape: RemediationExecutionSteps, location_name: "StepDetails"))
996
+ RemediationExecutionStatus.add_member(:invocation_time, Shapes::ShapeRef.new(shape: Date, location_name: "InvocationTime"))
997
+ RemediationExecutionStatus.add_member(:last_updated_time, Shapes::ShapeRef.new(shape: Date, location_name: "LastUpdatedTime"))
998
+ RemediationExecutionStatus.struct_class = Types::RemediationExecutionStatus
999
+
1000
+ RemediationExecutionStatuses.member = Shapes::ShapeRef.new(shape: RemediationExecutionStatus)
1001
+
1002
+ RemediationExecutionStep.add_member(:name, Shapes::ShapeRef.new(shape: String, location_name: "Name"))
1003
+ RemediationExecutionStep.add_member(:state, Shapes::ShapeRef.new(shape: RemediationExecutionStepState, location_name: "State"))
1004
+ RemediationExecutionStep.add_member(:error_message, Shapes::ShapeRef.new(shape: String, location_name: "ErrorMessage"))
1005
+ RemediationExecutionStep.add_member(:start_time, Shapes::ShapeRef.new(shape: Date, location_name: "StartTime"))
1006
+ RemediationExecutionStep.add_member(:stop_time, Shapes::ShapeRef.new(shape: Date, location_name: "StopTime"))
1007
+ RemediationExecutionStep.struct_class = Types::RemediationExecutionStep
1008
+
1009
+ RemediationExecutionSteps.member = Shapes::ShapeRef.new(shape: RemediationExecutionStep)
1010
+
1011
+ RemediationParameterValue.add_member(:resource_value, Shapes::ShapeRef.new(shape: ResourceValue, location_name: "ResourceValue"))
1012
+ RemediationParameterValue.add_member(:static_value, Shapes::ShapeRef.new(shape: StaticValue, location_name: "StaticValue"))
1013
+ RemediationParameterValue.struct_class = Types::RemediationParameterValue
1014
+
1015
+ RemediationParameters.key = Shapes::ShapeRef.new(shape: StringWithCharLimit256)
1016
+ RemediationParameters.value = Shapes::ShapeRef.new(shape: RemediationParameterValue)
1017
+
921
1018
  ResourceCount.add_member(:resource_type, Shapes::ShapeRef.new(shape: ResourceType, location_name: "resourceType"))
922
1019
  ResourceCount.add_member(:count, Shapes::ShapeRef.new(shape: Long, location_name: "count"))
923
1020
  ResourceCount.struct_class = Types::ResourceCount
@@ -957,6 +1054,9 @@ module Aws::ConfigService
957
1054
 
958
1055
  ResourceTypes.member = Shapes::ShapeRef.new(shape: StringWithCharLimit256)
959
1056
 
1057
+ ResourceValue.add_member(:value, Shapes::ShapeRef.new(shape: ResourceValueType, location_name: "Value"))
1058
+ ResourceValue.struct_class = Types::ResourceValue
1059
+
960
1060
  RetentionConfiguration.add_member(:name, Shapes::ShapeRef.new(shape: RetentionConfigurationName, required: true, location_name: "Name"))
961
1061
  RetentionConfiguration.add_member(:retention_period_in_days, Shapes::ShapeRef.new(shape: RetentionPeriodInDays, required: true, location_name: "RetentionPeriodInDays"))
962
1062
  RetentionConfiguration.struct_class = Types::RetentionConfiguration
@@ -991,6 +1091,19 @@ module Aws::ConfigService
991
1091
  StartConfigurationRecorderRequest.add_member(:configuration_recorder_name, Shapes::ShapeRef.new(shape: RecorderName, required: true, location_name: "ConfigurationRecorderName"))
992
1092
  StartConfigurationRecorderRequest.struct_class = Types::StartConfigurationRecorderRequest
993
1093
 
1094
+ StartRemediationExecutionRequest.add_member(:config_rule_name, Shapes::ShapeRef.new(shape: StringWithCharLimit64, required: true, location_name: "ConfigRuleName"))
1095
+ StartRemediationExecutionRequest.add_member(:resource_keys, Shapes::ShapeRef.new(shape: ResourceKeys, required: true, location_name: "ResourceKeys"))
1096
+ StartRemediationExecutionRequest.struct_class = Types::StartRemediationExecutionRequest
1097
+
1098
+ StartRemediationExecutionResponse.add_member(:failure_message, Shapes::ShapeRef.new(shape: String, location_name: "FailureMessage"))
1099
+ StartRemediationExecutionResponse.add_member(:failed_items, Shapes::ShapeRef.new(shape: ResourceKeys, location_name: "FailedItems"))
1100
+ StartRemediationExecutionResponse.struct_class = Types::StartRemediationExecutionResponse
1101
+
1102
+ StaticParameterValues.member = Shapes::ShapeRef.new(shape: StringWithCharLimit256)
1103
+
1104
+ StaticValue.add_member(:values, Shapes::ShapeRef.new(shape: StaticParameterValues, location_name: "Values"))
1105
+ StaticValue.struct_class = Types::StaticValue
1106
+
994
1107
  StopConfigurationRecorderRequest.add_member(:configuration_recorder_name, Shapes::ShapeRef.new(shape: RecorderName, required: true, location_name: "ConfigurationRecorderName"))
995
1108
  StopConfigurationRecorderRequest.struct_class = Types::StopConfigurationRecorderRequest
996
1109
 
@@ -1107,6 +1220,15 @@ module Aws::ConfigService
1107
1220
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
1108
1221
  end)
1109
1222
 
1223
+ api.add_operation(:delete_remediation_configuration, Seahorse::Model::Operation.new.tap do |o|
1224
+ o.name = "DeleteRemediationConfiguration"
1225
+ o.http_method = "POST"
1226
+ o.http_request_uri = "/"
1227
+ o.input = Shapes::ShapeRef.new(shape: DeleteRemediationConfigurationRequest)
1228
+ o.output = Shapes::ShapeRef.new(shape: DeleteRemediationConfigurationResponse)
1229
+ o.errors << Shapes::ShapeRef.new(shape: NoSuchRemediationConfigurationException)
1230
+ end)
1231
+
1110
1232
  api.add_operation(:delete_retention_configuration, Seahorse::Model::Operation.new.tap do |o|
1111
1233
  o.name = "DeleteRetentionConfiguration"
1112
1234
  o.http_method = "POST"
@@ -1264,6 +1386,29 @@ module Aws::ConfigService
1264
1386
  o.errors << Shapes::ShapeRef.new(shape: InvalidLimitException)
1265
1387
  end)
1266
1388
 
1389
+ api.add_operation(:describe_remediation_configurations, Seahorse::Model::Operation.new.tap do |o|
1390
+ o.name = "DescribeRemediationConfigurations"
1391
+ o.http_method = "POST"
1392
+ o.http_request_uri = "/"
1393
+ o.input = Shapes::ShapeRef.new(shape: DescribeRemediationConfigurationsRequest)
1394
+ o.output = Shapes::ShapeRef.new(shape: DescribeRemediationConfigurationsResponse)
1395
+ end)
1396
+
1397
+ api.add_operation(:describe_remediation_execution_status, Seahorse::Model::Operation.new.tap do |o|
1398
+ o.name = "DescribeRemediationExecutionStatus"
1399
+ o.http_method = "POST"
1400
+ o.http_request_uri = "/"
1401
+ o.input = Shapes::ShapeRef.new(shape: DescribeRemediationExecutionStatusRequest)
1402
+ o.output = Shapes::ShapeRef.new(shape: DescribeRemediationExecutionStatusResponse)
1403
+ o.errors << Shapes::ShapeRef.new(shape: NoSuchRemediationConfigurationException)
1404
+ o[:pager] = Aws::Pager.new(
1405
+ limit_key: "limit",
1406
+ tokens: {
1407
+ "next_token" => "next_token"
1408
+ }
1409
+ )
1410
+ end)
1411
+
1267
1412
  api.add_operation(:describe_retention_configurations, Seahorse::Model::Operation.new.tap do |o|
1268
1413
  o.name = "DescribeRetentionConfigurations"
1269
1414
  o.http_method = "POST"
@@ -1489,6 +1634,16 @@ module Aws::ConfigService
1489
1634
  o.errors << Shapes::ShapeRef.new(shape: NoSuchConfigRuleException)
1490
1635
  end)
1491
1636
 
1637
+ api.add_operation(:put_remediation_configurations, Seahorse::Model::Operation.new.tap do |o|
1638
+ o.name = "PutRemediationConfigurations"
1639
+ o.http_method = "POST"
1640
+ o.http_request_uri = "/"
1641
+ o.input = Shapes::ShapeRef.new(shape: PutRemediationConfigurationsRequest)
1642
+ o.output = Shapes::ShapeRef.new(shape: PutRemediationConfigurationsResponse)
1643
+ o.errors << Shapes::ShapeRef.new(shape: InsufficientPermissionsException)
1644
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
1645
+ end)
1646
+
1492
1647
  api.add_operation(:put_retention_configuration, Seahorse::Model::Operation.new.tap do |o|
1493
1648
  o.name = "PutRetentionConfiguration"
1494
1649
  o.http_method = "POST"
@@ -1521,6 +1676,16 @@ module Aws::ConfigService
1521
1676
  o.errors << Shapes::ShapeRef.new(shape: NoAvailableDeliveryChannelException)
1522
1677
  end)
1523
1678
 
1679
+ api.add_operation(:start_remediation_execution, Seahorse::Model::Operation.new.tap do |o|
1680
+ o.name = "StartRemediationExecution"
1681
+ o.http_method = "POST"
1682
+ o.http_request_uri = "/"
1683
+ o.input = Shapes::ShapeRef.new(shape: StartRemediationExecutionRequest)
1684
+ o.output = Shapes::ShapeRef.new(shape: StartRemediationExecutionResponse)
1685
+ o.errors << Shapes::ShapeRef.new(shape: InsufficientPermissionsException)
1686
+ o.errors << Shapes::ShapeRef.new(shape: NoSuchRemediationConfigurationException)
1687
+ end)
1688
+
1524
1689
  api.add_operation(:stop_configuration_recorder, Seahorse::Model::Operation.new.tap do |o|
1525
1690
  o.name = "StopConfigurationRecorder"
1526
1691
  o.http_method = "POST"
@@ -659,7 +659,7 @@ module Aws::ConfigService
659
659
  #
660
660
  #
661
661
  #
662
- # [1]: http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html
662
+ # [1]: https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html
663
663
  #
664
664
  # @note When making an API call, you may pass ConfigRule
665
665
  # data as a hash:
@@ -1018,7 +1018,7 @@ module Aws::ConfigService
1018
1018
  #
1019
1019
  #
1020
1020
  #
1021
- # [1]: http://docs.aws.amazon.com/config/latest/APIReference/API_DeliveryChannel.html
1021
+ # [1]: https://docs.aws.amazon.com/config/latest/APIReference/API_DeliveryChannel.html
1022
1022
  # @return [String]
1023
1023
  #
1024
1024
  # @!attribute [rw] last_error_code
@@ -1156,7 +1156,7 @@ module Aws::ConfigService
1156
1156
  #
1157
1157
  #
1158
1158
  #
1159
- # [1]: http://docs.aws.amazon.com/awscloudtrail/latest/userguide/what_is_cloud_trail_top_level.html
1159
+ # [1]: https://docs.aws.amazon.com/awscloudtrail/latest/userguide/what_is_cloud_trail_top_level.html
1160
1160
  # @return [Array<String>]
1161
1161
  #
1162
1162
  # @!attribute [rw] relationships
@@ -1439,6 +1439,35 @@ module Aws::ConfigService
1439
1439
  include Aws::Structure
1440
1440
  end
1441
1441
 
1442
+ # @note When making an API call, you may pass DeleteRemediationConfigurationRequest
1443
+ # data as a hash:
1444
+ #
1445
+ # {
1446
+ # config_rule_name: "StringWithCharLimit64", # required
1447
+ # resource_type: "String",
1448
+ # }
1449
+ #
1450
+ # @!attribute [rw] config_rule_name
1451
+ # The name of the AWS Config rule for which you want to delete
1452
+ # remediation configuration for.
1453
+ # @return [String]
1454
+ #
1455
+ # @!attribute [rw] resource_type
1456
+ # The type of a resource.
1457
+ # @return [String]
1458
+ #
1459
+ # @see http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/DeleteRemediationConfigurationRequest AWS API Documentation
1460
+ #
1461
+ class DeleteRemediationConfigurationRequest < Struct.new(
1462
+ :config_rule_name,
1463
+ :resource_type)
1464
+ include Aws::Structure
1465
+ end
1466
+
1467
+ # @see http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/DeleteRemediationConfigurationResponse AWS API Documentation
1468
+ #
1469
+ class DeleteRemediationConfigurationResponse < Aws::EmptyStructure; end
1470
+
1442
1471
  # @note When making an API call, you may pass DeleteRetentionConfigurationRequest
1443
1472
  # data as a hash:
1444
1473
  #
@@ -1527,7 +1556,7 @@ module Aws::ConfigService
1527
1556
  #
1528
1557
  #
1529
1558
  #
1530
- # [1]: http://docs.aws.amazon.com/config/latest/developerguide/s3-bucket-policy.html
1559
+ # [1]: https://docs.aws.amazon.com/config/latest/developerguide/s3-bucket-policy.html
1531
1560
  # @return [String]
1532
1561
  #
1533
1562
  # @!attribute [rw] s3_key_prefix
@@ -1545,7 +1574,7 @@ module Aws::ConfigService
1545
1574
  #
1546
1575
  #
1547
1576
  #
1548
- # [1]: http://docs.aws.amazon.com/config/latest/developerguide/sns-topic-policy.html
1577
+ # [1]: https://docs.aws.amazon.com/config/latest/developerguide/sns-topic-policy.html
1549
1578
  # @return [String]
1550
1579
  #
1551
1580
  # @!attribute [rw] config_snapshot_delivery_properties
@@ -1719,8 +1748,7 @@ module Aws::ConfigService
1719
1748
  # @!attribute [rw] compliance_types
1720
1749
  # Filters the results by compliance.
1721
1750
  #
1722
- # The allowed values are `COMPLIANT`, `NON_COMPLIANT`, and
1723
- # `INSUFFICIENT_DATA`.
1751
+ # The allowed values are `COMPLIANT` and `NON_COMPLIANT`.
1724
1752
  # @return [Array<String>]
1725
1753
  #
1726
1754
  # @!attribute [rw] next_token
@@ -1782,7 +1810,8 @@ module Aws::ConfigService
1782
1810
  # @!attribute [rw] compliance_types
1783
1811
  # Filters the results by compliance.
1784
1812
  #
1785
- # The allowed values are `COMPLIANT` and `NON_COMPLIANT`.
1813
+ # The allowed values are `COMPLIANT`, `NON_COMPLIANT`, and
1814
+ # `INSUFFICIENT_DATA`.
1786
1815
  # @return [Array<String>]
1787
1816
  #
1788
1817
  # @!attribute [rw] limit
@@ -2221,6 +2250,97 @@ module Aws::ConfigService
2221
2250
  include Aws::Structure
2222
2251
  end
2223
2252
 
2253
+ # @note When making an API call, you may pass DescribeRemediationConfigurationsRequest
2254
+ # data as a hash:
2255
+ #
2256
+ # {
2257
+ # config_rule_names: ["StringWithCharLimit64"], # required
2258
+ # }
2259
+ #
2260
+ # @!attribute [rw] config_rule_names
2261
+ # A list of AWS Config rule names of remediation configurations for
2262
+ # which you want details.
2263
+ # @return [Array<String>]
2264
+ #
2265
+ # @see http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/DescribeRemediationConfigurationsRequest AWS API Documentation
2266
+ #
2267
+ class DescribeRemediationConfigurationsRequest < Struct.new(
2268
+ :config_rule_names)
2269
+ include Aws::Structure
2270
+ end
2271
+
2272
+ # @!attribute [rw] remediation_configurations
2273
+ # Returns a remediation configuration object.
2274
+ # @return [Array<Types::RemediationConfiguration>]
2275
+ #
2276
+ # @see http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/DescribeRemediationConfigurationsResponse AWS API Documentation
2277
+ #
2278
+ class DescribeRemediationConfigurationsResponse < Struct.new(
2279
+ :remediation_configurations)
2280
+ include Aws::Structure
2281
+ end
2282
+
2283
+ # @note When making an API call, you may pass DescribeRemediationExecutionStatusRequest
2284
+ # data as a hash:
2285
+ #
2286
+ # {
2287
+ # config_rule_name: "StringWithCharLimit64", # required
2288
+ # resource_keys: [
2289
+ # {
2290
+ # resource_type: "AWS::EC2::CustomerGateway", # required, accepts AWS::EC2::CustomerGateway, AWS::EC2::EIP, AWS::EC2::Host, AWS::EC2::Instance, AWS::EC2::InternetGateway, AWS::EC2::NetworkAcl, AWS::EC2::NetworkInterface, AWS::EC2::RouteTable, AWS::EC2::SecurityGroup, AWS::EC2::Subnet, AWS::CloudTrail::Trail, AWS::EC2::Volume, AWS::EC2::VPC, AWS::EC2::VPNConnection, AWS::EC2::VPNGateway, AWS::IAM::Group, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, AWS::ACM::Certificate, AWS::RDS::DBInstance, AWS::RDS::DBSubnetGroup, AWS::RDS::DBSecurityGroup, AWS::RDS::DBSnapshot, AWS::RDS::EventSubscription, AWS::ElasticLoadBalancingV2::LoadBalancer, AWS::S3::Bucket, AWS::SSM::ManagedInstanceInventory, AWS::Redshift::Cluster, AWS::Redshift::ClusterSnapshot, AWS::Redshift::ClusterParameterGroup, AWS::Redshift::ClusterSecurityGroup, AWS::Redshift::ClusterSubnetGroup, AWS::Redshift::EventSubscription, AWS::CloudWatch::Alarm, AWS::CloudFormation::Stack, AWS::DynamoDB::Table, AWS::AutoScaling::AutoScalingGroup, AWS::AutoScaling::LaunchConfiguration, AWS::AutoScaling::ScalingPolicy, AWS::AutoScaling::ScheduledAction, AWS::CodeBuild::Project, AWS::WAF::RateBasedRule, AWS::WAF::Rule, AWS::WAF::WebACL, AWS::WAFRegional::RateBasedRule, AWS::WAFRegional::Rule, AWS::WAFRegional::WebACL, AWS::CloudFront::Distribution, AWS::CloudFront::StreamingDistribution, AWS::WAF::RuleGroup, AWS::WAFRegional::RuleGroup, AWS::Lambda::Function, AWS::ElasticBeanstalk::Application, AWS::ElasticBeanstalk::ApplicationVersion, AWS::ElasticBeanstalk::Environment, AWS::ElasticLoadBalancing::LoadBalancer, AWS::XRay::EncryptionConfig, AWS::SSM::AssociationCompliance, AWS::SSM::PatchCompliance, AWS::Shield::Protection, AWS::ShieldRegional::Protection, AWS::Config::ResourceCompliance, AWS::CodePipeline::Pipeline
2291
+ # resource_id: "ResourceId", # required
2292
+ # },
2293
+ # ],
2294
+ # limit: 1,
2295
+ # next_token: "StringWithCharLimit256",
2296
+ # }
2297
+ #
2298
+ # @!attribute [rw] config_rule_name
2299
+ # A list of config rule names.
2300
+ # @return [String]
2301
+ #
2302
+ # @!attribute [rw] resource_keys
2303
+ # A list of resource keys object.
2304
+ # @return [Array<Types::ResourceKey>]
2305
+ #
2306
+ # @!attribute [rw] limit
2307
+ # The maximum number of RemediationExecutionStatuses returned on each
2308
+ # page. The default is maximum. If you specify 0, AWS Config uses the
2309
+ # default.
2310
+ # @return [Integer]
2311
+ #
2312
+ # @!attribute [rw] next_token
2313
+ # The `nextToken` string returned on a previous page that you use to
2314
+ # get the next page of results in a paginated response.
2315
+ # @return [String]
2316
+ #
2317
+ # @see http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/DescribeRemediationExecutionStatusRequest AWS API Documentation
2318
+ #
2319
+ class DescribeRemediationExecutionStatusRequest < Struct.new(
2320
+ :config_rule_name,
2321
+ :resource_keys,
2322
+ :limit,
2323
+ :next_token)
2324
+ include Aws::Structure
2325
+ end
2326
+
2327
+ # @!attribute [rw] remediation_execution_statuses
2328
+ # Returns a list of remediation execution statuses object.
2329
+ # @return [Array<Types::RemediationExecutionStatus>]
2330
+ #
2331
+ # @!attribute [rw] next_token
2332
+ # The `nextToken` string returned on a previous page that you use to
2333
+ # get the next page of results in a paginated response.
2334
+ # @return [String]
2335
+ #
2336
+ # @see http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/DescribeRemediationExecutionStatusResponse AWS API Documentation
2337
+ #
2338
+ class DescribeRemediationExecutionStatusResponse < Struct.new(
2339
+ :remediation_execution_statuses,
2340
+ :next_token)
2341
+ include Aws::Structure
2342
+ end
2343
+
2224
2344
  # @note When making an API call, you may pass DescribeRetentionConfigurationsRequest
2225
2345
  # data as a hash:
2226
2346
  #
@@ -2428,6 +2548,24 @@ module Aws::ConfigService
2428
2548
  include Aws::Structure
2429
2549
  end
2430
2550
 
2551
+ # List of each of the failed remediation with specific reasons.
2552
+ #
2553
+ # @!attribute [rw] failure_message
2554
+ # Returns a failure message. For example, the resource is compliant.
2555
+ # @return [String]
2556
+ #
2557
+ # @!attribute [rw] failed_items
2558
+ # Returns remediation configurations of the failed items.
2559
+ # @return [Array<Types::RemediationConfiguration>]
2560
+ #
2561
+ # @see http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/FailedRemediationBatch AWS API Documentation
2562
+ #
2563
+ class FailedRemediationBatch < Struct.new(
2564
+ :failure_message,
2565
+ :failed_items)
2566
+ include Aws::Structure
2567
+ end
2568
+
2431
2569
  # @note When making an API call, you may pass GetAggregateComplianceDetailsByConfigRuleRequest
2432
2570
  # data as a hash:
2433
2571
  #
@@ -3508,6 +3646,53 @@ module Aws::ConfigService
3508
3646
  include Aws::Structure
3509
3647
  end
3510
3648
 
3649
+ # @note When making an API call, you may pass PutRemediationConfigurationsRequest
3650
+ # data as a hash:
3651
+ #
3652
+ # {
3653
+ # remediation_configurations: [ # required
3654
+ # {
3655
+ # config_rule_name: "StringWithCharLimit64", # required
3656
+ # target_type: "SSM_DOCUMENT", # required, accepts SSM_DOCUMENT
3657
+ # target_id: "StringWithCharLimit256", # required
3658
+ # target_version: "String",
3659
+ # parameters: {
3660
+ # "StringWithCharLimit256" => {
3661
+ # resource_value: {
3662
+ # value: "RESOURCE_ID", # accepts RESOURCE_ID
3663
+ # },
3664
+ # static_value: {
3665
+ # values: ["StringWithCharLimit256"],
3666
+ # },
3667
+ # },
3668
+ # },
3669
+ # resource_type: "String",
3670
+ # },
3671
+ # ],
3672
+ # }
3673
+ #
3674
+ # @!attribute [rw] remediation_configurations
3675
+ # A list of remediation configuration objects.
3676
+ # @return [Array<Types::RemediationConfiguration>]
3677
+ #
3678
+ # @see http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/PutRemediationConfigurationsRequest AWS API Documentation
3679
+ #
3680
+ class PutRemediationConfigurationsRequest < Struct.new(
3681
+ :remediation_configurations)
3682
+ include Aws::Structure
3683
+ end
3684
+
3685
+ # @!attribute [rw] failed_batches
3686
+ # Returns a list of failed remediation batch objects.
3687
+ # @return [Array<Types::FailedRemediationBatch>]
3688
+ #
3689
+ # @see http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/PutRemediationConfigurationsResponse AWS API Documentation
3690
+ #
3691
+ class PutRemediationConfigurationsResponse < Struct.new(
3692
+ :failed_batches)
3693
+ include Aws::Structure
3694
+ end
3695
+
3511
3696
  # @note When making an API call, you may pass PutRetentionConfigurationRequest
3512
3697
  # data as a hash:
3513
3698
  #
@@ -3579,8 +3764,8 @@ module Aws::ConfigService
3579
3764
  #
3580
3765
  #
3581
3766
  #
3582
- # [1]: http://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html#supported-resources
3583
- # [2]: http://docs.aws.amazon.com/config/latest/developerguide/select-resources.html
3767
+ # [1]: https://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html#supported-resources
3768
+ # [2]: https://docs.aws.amazon.com/config/latest/developerguide/select-resources.html
3584
3769
  #
3585
3770
  # @note When making an API call, you may pass RecordingGroup
3586
3771
  # data as a hash:
@@ -3638,7 +3823,7 @@ module Aws::ConfigService
3638
3823
  #
3639
3824
  #
3640
3825
  #
3641
- # [1]: http://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html#supported-resources
3826
+ # [1]: https://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html#supported-resources
3642
3827
  # @return [Array<String>]
3643
3828
  #
3644
3829
  # @see http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/RecordingGroup AWS API Documentation
@@ -3678,6 +3863,167 @@ module Aws::ConfigService
3678
3863
  include Aws::Structure
3679
3864
  end
3680
3865
 
3866
+ # An object that represents the details about the remediation
3867
+ # configuration that includes the remediation action, parameters, and
3868
+ # data to execute the action.
3869
+ #
3870
+ # @note When making an API call, you may pass RemediationConfiguration
3871
+ # data as a hash:
3872
+ #
3873
+ # {
3874
+ # config_rule_name: "StringWithCharLimit64", # required
3875
+ # target_type: "SSM_DOCUMENT", # required, accepts SSM_DOCUMENT
3876
+ # target_id: "StringWithCharLimit256", # required
3877
+ # target_version: "String",
3878
+ # parameters: {
3879
+ # "StringWithCharLimit256" => {
3880
+ # resource_value: {
3881
+ # value: "RESOURCE_ID", # accepts RESOURCE_ID
3882
+ # },
3883
+ # static_value: {
3884
+ # values: ["StringWithCharLimit256"],
3885
+ # },
3886
+ # },
3887
+ # },
3888
+ # resource_type: "String",
3889
+ # }
3890
+ #
3891
+ # @!attribute [rw] config_rule_name
3892
+ # The name of the AWS Config rule.
3893
+ # @return [String]
3894
+ #
3895
+ # @!attribute [rw] target_type
3896
+ # The type of the target. Target executes remediation. For example,
3897
+ # SSM document.
3898
+ # @return [String]
3899
+ #
3900
+ # @!attribute [rw] target_id
3901
+ # Public ID is document.
3902
+ # @return [String]
3903
+ #
3904
+ # @!attribute [rw] target_version
3905
+ # Version of the target. For example, version of the SSM document.
3906
+ # @return [String]
3907
+ #
3908
+ # @!attribute [rw] parameters
3909
+ # An object of the RemediationParameterValue.
3910
+ # @return [Hash<String,Types::RemediationParameterValue>]
3911
+ #
3912
+ # @!attribute [rw] resource_type
3913
+ # The type of a resource.
3914
+ # @return [String]
3915
+ #
3916
+ # @see http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/RemediationConfiguration AWS API Documentation
3917
+ #
3918
+ class RemediationConfiguration < Struct.new(
3919
+ :config_rule_name,
3920
+ :target_type,
3921
+ :target_id,
3922
+ :target_version,
3923
+ :parameters,
3924
+ :resource_type)
3925
+ include Aws::Structure
3926
+ end
3927
+
3928
+ # Provides details of the current status of the invoked remediation
3929
+ # action for that resource.
3930
+ #
3931
+ # @!attribute [rw] resource_key
3932
+ # The details that identify a resource within AWS Config, including
3933
+ # the resource type and resource ID.
3934
+ # @return [Types::ResourceKey]
3935
+ #
3936
+ # @!attribute [rw] state
3937
+ # ENUM of the values.
3938
+ # @return [String]
3939
+ #
3940
+ # @!attribute [rw] step_details
3941
+ # Details of every step.
3942
+ # @return [Array<Types::RemediationExecutionStep>]
3943
+ #
3944
+ # @!attribute [rw] invocation_time
3945
+ # Start time when the remediation was executed.
3946
+ # @return [Time]
3947
+ #
3948
+ # @!attribute [rw] last_updated_time
3949
+ # The time when the remediation execution was last updated.
3950
+ # @return [Time]
3951
+ #
3952
+ # @see http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/RemediationExecutionStatus AWS API Documentation
3953
+ #
3954
+ class RemediationExecutionStatus < Struct.new(
3955
+ :resource_key,
3956
+ :state,
3957
+ :step_details,
3958
+ :invocation_time,
3959
+ :last_updated_time)
3960
+ include Aws::Structure
3961
+ end
3962
+
3963
+ # Name of the step from the SSM document.
3964
+ #
3965
+ # @!attribute [rw] name
3966
+ # The details of the step.
3967
+ # @return [String]
3968
+ #
3969
+ # @!attribute [rw] state
3970
+ # The valid status of the step.
3971
+ # @return [String]
3972
+ #
3973
+ # @!attribute [rw] error_message
3974
+ # An error message if the step was interupted during execution.
3975
+ # @return [String]
3976
+ #
3977
+ # @!attribute [rw] start_time
3978
+ # The time when the step started.
3979
+ # @return [Time]
3980
+ #
3981
+ # @!attribute [rw] stop_time
3982
+ # The time when the step stopped.
3983
+ # @return [Time]
3984
+ #
3985
+ # @see http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/RemediationExecutionStep AWS API Documentation
3986
+ #
3987
+ class RemediationExecutionStep < Struct.new(
3988
+ :name,
3989
+ :state,
3990
+ :error_message,
3991
+ :start_time,
3992
+ :stop_time)
3993
+ include Aws::Structure
3994
+ end
3995
+
3996
+ # The value is either a dynamic (resource) value or a static value. You
3997
+ # must select either a dynamic value or a static value.
3998
+ #
3999
+ # @note When making an API call, you may pass RemediationParameterValue
4000
+ # data as a hash:
4001
+ #
4002
+ # {
4003
+ # resource_value: {
4004
+ # value: "RESOURCE_ID", # accepts RESOURCE_ID
4005
+ # },
4006
+ # static_value: {
4007
+ # values: ["StringWithCharLimit256"],
4008
+ # },
4009
+ # }
4010
+ #
4011
+ # @!attribute [rw] resource_value
4012
+ # The value is dynamic and changes at run-time.
4013
+ # @return [Types::ResourceValue]
4014
+ #
4015
+ # @!attribute [rw] static_value
4016
+ # The value is static and does not change at run-time.
4017
+ # @return [Types::StaticValue]
4018
+ #
4019
+ # @see http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/RemediationParameterValue AWS API Documentation
4020
+ #
4021
+ class RemediationParameterValue < Struct.new(
4022
+ :resource_value,
4023
+ :static_value)
4024
+ include Aws::Structure
4025
+ end
4026
+
3681
4027
  # An object that contains the resource type and the number of resources.
3682
4028
  #
3683
4029
  # @!attribute [rw] resource_type
@@ -3825,6 +4171,26 @@ module Aws::ConfigService
3825
4171
  include Aws::Structure
3826
4172
  end
3827
4173
 
4174
+ # The dynamic value of the resource.
4175
+ #
4176
+ # @note When making an API call, you may pass ResourceValue
4177
+ # data as a hash:
4178
+ #
4179
+ # {
4180
+ # value: "RESOURCE_ID", # accepts RESOURCE_ID
4181
+ # }
4182
+ #
4183
+ # @!attribute [rw] value
4184
+ # The value is a resource ID.
4185
+ # @return [String]
4186
+ #
4187
+ # @see http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/ResourceValue AWS API Documentation
4188
+ #
4189
+ class ResourceValue < Struct.new(
4190
+ :value)
4191
+ include Aws::Structure
4192
+ end
4193
+
3828
4194
  # An object with the name of the retention configuration and the
3829
4195
  # retention period in days. The object stores the configuration for data
3830
4196
  # retention in AWS Config.
@@ -3935,7 +4301,7 @@ module Aws::ConfigService
3935
4301
  #
3936
4302
  #
3937
4303
  #
3938
- # [1]: http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_use-managed-rules.html
4304
+ # [1]: https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_use-managed-rules.html
3939
4305
  # @return [String]
3940
4306
  #
3941
4307
  # @!attribute [rw] source_details
@@ -4073,6 +4439,73 @@ module Aws::ConfigService
4073
4439
  include Aws::Structure
4074
4440
  end
4075
4441
 
4442
+ # @note When making an API call, you may pass StartRemediationExecutionRequest
4443
+ # data as a hash:
4444
+ #
4445
+ # {
4446
+ # config_rule_name: "StringWithCharLimit64", # required
4447
+ # resource_keys: [ # required
4448
+ # {
4449
+ # resource_type: "AWS::EC2::CustomerGateway", # required, accepts AWS::EC2::CustomerGateway, AWS::EC2::EIP, AWS::EC2::Host, AWS::EC2::Instance, AWS::EC2::InternetGateway, AWS::EC2::NetworkAcl, AWS::EC2::NetworkInterface, AWS::EC2::RouteTable, AWS::EC2::SecurityGroup, AWS::EC2::Subnet, AWS::CloudTrail::Trail, AWS::EC2::Volume, AWS::EC2::VPC, AWS::EC2::VPNConnection, AWS::EC2::VPNGateway, AWS::IAM::Group, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, AWS::ACM::Certificate, AWS::RDS::DBInstance, AWS::RDS::DBSubnetGroup, AWS::RDS::DBSecurityGroup, AWS::RDS::DBSnapshot, AWS::RDS::EventSubscription, AWS::ElasticLoadBalancingV2::LoadBalancer, AWS::S3::Bucket, AWS::SSM::ManagedInstanceInventory, AWS::Redshift::Cluster, AWS::Redshift::ClusterSnapshot, AWS::Redshift::ClusterParameterGroup, AWS::Redshift::ClusterSecurityGroup, AWS::Redshift::ClusterSubnetGroup, AWS::Redshift::EventSubscription, AWS::CloudWatch::Alarm, AWS::CloudFormation::Stack, AWS::DynamoDB::Table, AWS::AutoScaling::AutoScalingGroup, AWS::AutoScaling::LaunchConfiguration, AWS::AutoScaling::ScalingPolicy, AWS::AutoScaling::ScheduledAction, AWS::CodeBuild::Project, AWS::WAF::RateBasedRule, AWS::WAF::Rule, AWS::WAF::WebACL, AWS::WAFRegional::RateBasedRule, AWS::WAFRegional::Rule, AWS::WAFRegional::WebACL, AWS::CloudFront::Distribution, AWS::CloudFront::StreamingDistribution, AWS::WAF::RuleGroup, AWS::WAFRegional::RuleGroup, AWS::Lambda::Function, AWS::ElasticBeanstalk::Application, AWS::ElasticBeanstalk::ApplicationVersion, AWS::ElasticBeanstalk::Environment, AWS::ElasticLoadBalancing::LoadBalancer, AWS::XRay::EncryptionConfig, AWS::SSM::AssociationCompliance, AWS::SSM::PatchCompliance, AWS::Shield::Protection, AWS::ShieldRegional::Protection, AWS::Config::ResourceCompliance, AWS::CodePipeline::Pipeline
4450
+ # resource_id: "ResourceId", # required
4451
+ # },
4452
+ # ],
4453
+ # }
4454
+ #
4455
+ # @!attribute [rw] config_rule_name
4456
+ # The list of names of AWS Config rules that you want to run
4457
+ # remediation execution for.
4458
+ # @return [String]
4459
+ #
4460
+ # @!attribute [rw] resource_keys
4461
+ # A list of resource key object.
4462
+ # @return [Array<Types::ResourceKey>]
4463
+ #
4464
+ # @see http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/StartRemediationExecutionRequest AWS API Documentation
4465
+ #
4466
+ class StartRemediationExecutionRequest < Struct.new(
4467
+ :config_rule_name,
4468
+ :resource_keys)
4469
+ include Aws::Structure
4470
+ end
4471
+
4472
+ # @!attribute [rw] failure_message
4473
+ # Returns a failure message. For example, the resource is compliant.
4474
+ # @return [String]
4475
+ #
4476
+ # @!attribute [rw] failed_items
4477
+ # For resources that have failed to start execuition the API returns a
4478
+ # resource key object.
4479
+ # @return [Array<Types::ResourceKey>]
4480
+ #
4481
+ # @see http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/StartRemediationExecutionResponse AWS API Documentation
4482
+ #
4483
+ class StartRemediationExecutionResponse < Struct.new(
4484
+ :failure_message,
4485
+ :failed_items)
4486
+ include Aws::Structure
4487
+ end
4488
+
4489
+ # The static value of the resource.
4490
+ #
4491
+ # @note When making an API call, you may pass StaticValue
4492
+ # data as a hash:
4493
+ #
4494
+ # {
4495
+ # values: ["StringWithCharLimit256"],
4496
+ # }
4497
+ #
4498
+ # @!attribute [rw] values
4499
+ # A list of values. For example, the ARN of the assumed role.
4500
+ # @return [Array<String>]
4501
+ #
4502
+ # @see http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/StaticValue AWS API Documentation
4503
+ #
4504
+ class StaticValue < Struct.new(
4505
+ :values)
4506
+ include Aws::Structure
4507
+ end
4508
+
4076
4509
  # The input for the StopConfigurationRecorder action.
4077
4510
  #
4078
4511
  # @note When making an API call, you may pass StopConfigurationRecorderRequest
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-configservice
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.21.0
4
+ version: 1.22.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: 2018-11-20 00:00:00.000000000 Z
11
+ date: 2019-03-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core