aws-sdk-configservice 1.21.0 → 1.22.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  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