aws-sdk-ec2 1.580.0 → 1.581.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.
@@ -4425,6 +4425,24 @@ module Aws::EC2
4425
4425
  # [1]: https://docs.aws.amazon.com/local-zones/latest/ug/how-local-zones-work.html
4426
4426
  # @return [String]
4427
4427
  #
4428
+ # @!attribute [rw] advertisement_type
4429
+ # Specifies the advertisement method for the BYOIP CIDR. Valid values
4430
+ # are:
4431
+ #
4432
+ # * `unicast`: IP is advertised from a single location (regional
4433
+ # services like EC2)
4434
+ #
4435
+ # * `anycast`: IP is advertised from multiple global locations
4436
+ # simultaneously (global services like CloudFront)
4437
+ #
4438
+ # For more information, see [Bring your own IP to CloudFront using
4439
+ # IPAM][1] in the *Amazon VPC IPAM User Guide*.
4440
+ #
4441
+ #
4442
+ #
4443
+ # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/tutorials-byoip-cloudfront.html
4444
+ # @return [String]
4445
+ #
4428
4446
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ByoipCidr AWS API Documentation
4429
4447
  #
4430
4448
  class ByoipCidr < Struct.new(
@@ -4433,7 +4451,8 @@ module Aws::EC2
4433
4451
  :asn_associations,
4434
4452
  :status_message,
4435
4453
  :state,
4436
- :network_border_group)
4454
+ :network_border_group,
4455
+ :advertisement_type)
4437
4456
  SENSITIVE = []
4438
4457
  include Aws::Structure
4439
4458
  end
@@ -7277,12 +7296,34 @@ module Aws::EC2
7277
7296
  # Valid values: `json` \| `text`
7278
7297
  # @return [String]
7279
7298
  #
7299
+ # @!attribute [rw] bgp_log_enabled
7300
+ # Indicates whether Border Gateway Protocol (BGP) logging is enabled
7301
+ # for the VPN connection. Default value is `False`.
7302
+ #
7303
+ # Valid values: `True` \| `False`
7304
+ # @return [Boolean]
7305
+ #
7306
+ # @!attribute [rw] bgp_log_group_arn
7307
+ # The Amazon Resource Name (ARN) of the CloudWatch log group for BGP
7308
+ # logs.
7309
+ # @return [String]
7310
+ #
7311
+ # @!attribute [rw] bgp_log_output_format
7312
+ # The output format for BGP logs sent to CloudWatch. Default format is
7313
+ # `json`.
7314
+ #
7315
+ # Valid values: `json` \| `text`
7316
+ # @return [String]
7317
+ #
7280
7318
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CloudWatchLogOptions AWS API Documentation
7281
7319
  #
7282
7320
  class CloudWatchLogOptions < Struct.new(
7283
7321
  :log_enabled,
7284
7322
  :log_group_arn,
7285
- :log_output_format)
7323
+ :log_output_format,
7324
+ :bgp_log_enabled,
7325
+ :bgp_log_group_arn,
7326
+ :bgp_log_output_format)
7286
7327
  SENSITIVE = []
7287
7328
  include Aws::Structure
7288
7329
  end
@@ -7307,12 +7348,34 @@ module Aws::EC2
7307
7348
  # Valid values: `json` \| `text`
7308
7349
  # @return [String]
7309
7350
  #
7351
+ # @!attribute [rw] bgp_log_enabled
7352
+ # Specifies whether to enable BGP logging for the VPN connection.
7353
+ # Default value is `False`.
7354
+ #
7355
+ # Valid values: `True` \| `False`
7356
+ # @return [Boolean]
7357
+ #
7358
+ # @!attribute [rw] bgp_log_group_arn
7359
+ # The Amazon Resource Name (ARN) of the CloudWatch log group where BGP
7360
+ # logs will be sent.
7361
+ # @return [String]
7362
+ #
7363
+ # @!attribute [rw] bgp_log_output_format
7364
+ # The desired output format for BGP logs to be sent to CloudWatch.
7365
+ # Default format is `json`.
7366
+ #
7367
+ # Valid values: `json` \| `text`
7368
+ # @return [String]
7369
+ #
7310
7370
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CloudWatchLogOptionsSpecification AWS API Documentation
7311
7371
  #
7312
7372
  class CloudWatchLogOptionsSpecification < Struct.new(
7313
7373
  :log_enabled,
7314
7374
  :log_group_arn,
7315
- :log_output_format)
7375
+ :log_output_format,
7376
+ :bgp_log_enabled,
7377
+ :bgp_log_group_arn,
7378
+ :bgp_log_output_format)
7316
7379
  SENSITIVE = []
7317
7380
  include Aws::Structure
7318
7381
  end
@@ -14519,6 +14582,147 @@ module Aws::EC2
14519
14582
  include Aws::Structure
14520
14583
  end
14521
14584
 
14585
+ # @!attribute [rw] transit_gateway_metering_policy_id
14586
+ # The ID of the transit gateway metering policy to add the entry to.
14587
+ # @return [String]
14588
+ #
14589
+ # @!attribute [rw] policy_rule_number
14590
+ # The rule number for the metering policy entry. Rules are processed
14591
+ # in order from lowest to highest number.
14592
+ # @return [Integer]
14593
+ #
14594
+ # @!attribute [rw] source_transit_gateway_attachment_id
14595
+ # The ID of the source transit gateway attachment for traffic
14596
+ # matching.
14597
+ # @return [String]
14598
+ #
14599
+ # @!attribute [rw] source_transit_gateway_attachment_type
14600
+ # The type of the source transit gateway attachment for traffic
14601
+ # matching. Note that the `tgw-peering` resource type has been
14602
+ # deprecated. To configure metering policies for Connect, use the
14603
+ # transport attachment type.
14604
+ # @return [String]
14605
+ #
14606
+ # @!attribute [rw] source_cidr_block
14607
+ # The source CIDR block for traffic matching.
14608
+ # @return [String]
14609
+ #
14610
+ # @!attribute [rw] source_port_range
14611
+ # The source port range for traffic matching.
14612
+ # @return [String]
14613
+ #
14614
+ # @!attribute [rw] destination_transit_gateway_attachment_id
14615
+ # The ID of the destination transit gateway attachment for traffic
14616
+ # matching.
14617
+ # @return [String]
14618
+ #
14619
+ # @!attribute [rw] destination_transit_gateway_attachment_type
14620
+ # The type of the destination transit gateway attachment for traffic
14621
+ # matching. Note that the `tgw-peering` resource type has been
14622
+ # deprecated. To configure metering policies for Connect, use the
14623
+ # transport attachment type.
14624
+ # @return [String]
14625
+ #
14626
+ # @!attribute [rw] destination_cidr_block
14627
+ # The destination CIDR block for traffic matching.
14628
+ # @return [String]
14629
+ #
14630
+ # @!attribute [rw] destination_port_range
14631
+ # The destination port range for traffic matching.
14632
+ # @return [String]
14633
+ #
14634
+ # @!attribute [rw] protocol
14635
+ # The protocol for traffic matching (1, 6, 17, etc.).
14636
+ # @return [String]
14637
+ #
14638
+ # @!attribute [rw] metered_account
14639
+ # The Amazon Web Services account ID to which the metered traffic
14640
+ # should be attributed.
14641
+ # @return [String]
14642
+ #
14643
+ # @!attribute [rw] dry_run
14644
+ # Checks whether you have the required permissions for the action,
14645
+ # without actually making the request, and provides an error response.
14646
+ # If you have the required permissions, the error response is
14647
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
14648
+ # @return [Boolean]
14649
+ #
14650
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayMeteringPolicyEntryRequest AWS API Documentation
14651
+ #
14652
+ class CreateTransitGatewayMeteringPolicyEntryRequest < Struct.new(
14653
+ :transit_gateway_metering_policy_id,
14654
+ :policy_rule_number,
14655
+ :source_transit_gateway_attachment_id,
14656
+ :source_transit_gateway_attachment_type,
14657
+ :source_cidr_block,
14658
+ :source_port_range,
14659
+ :destination_transit_gateway_attachment_id,
14660
+ :destination_transit_gateway_attachment_type,
14661
+ :destination_cidr_block,
14662
+ :destination_port_range,
14663
+ :protocol,
14664
+ :metered_account,
14665
+ :dry_run)
14666
+ SENSITIVE = []
14667
+ include Aws::Structure
14668
+ end
14669
+
14670
+ # @!attribute [rw] transit_gateway_metering_policy_entry
14671
+ # Information about the created transit gateway metering policy entry.
14672
+ # @return [Types::TransitGatewayMeteringPolicyEntry]
14673
+ #
14674
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayMeteringPolicyEntryResult AWS API Documentation
14675
+ #
14676
+ class CreateTransitGatewayMeteringPolicyEntryResult < Struct.new(
14677
+ :transit_gateway_metering_policy_entry)
14678
+ SENSITIVE = []
14679
+ include Aws::Structure
14680
+ end
14681
+
14682
+ # @!attribute [rw] transit_gateway_id
14683
+ # The ID of the transit gateway for which to create the metering
14684
+ # policy.
14685
+ # @return [String]
14686
+ #
14687
+ # @!attribute [rw] middlebox_attachment_ids
14688
+ # The IDs of the middlebox attachments to include in the metering
14689
+ # policy.
14690
+ # @return [Array<String>]
14691
+ #
14692
+ # @!attribute [rw] tag_specifications
14693
+ # The tags to assign to the metering policy.
14694
+ # @return [Array<Types::TagSpecification>]
14695
+ #
14696
+ # @!attribute [rw] dry_run
14697
+ # Checks whether you have the required permissions for the action,
14698
+ # without actually making the request, and provides an error response.
14699
+ # If you have the required permissions, the error response is
14700
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
14701
+ # @return [Boolean]
14702
+ #
14703
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayMeteringPolicyRequest AWS API Documentation
14704
+ #
14705
+ class CreateTransitGatewayMeteringPolicyRequest < Struct.new(
14706
+ :transit_gateway_id,
14707
+ :middlebox_attachment_ids,
14708
+ :tag_specifications,
14709
+ :dry_run)
14710
+ SENSITIVE = []
14711
+ include Aws::Structure
14712
+ end
14713
+
14714
+ # @!attribute [rw] transit_gateway_metering_policy
14715
+ # Information about the created transit gateway metering policy.
14716
+ # @return [Types::TransitGatewayMeteringPolicy]
14717
+ #
14718
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayMeteringPolicyResult AWS API Documentation
14719
+ #
14720
+ class CreateTransitGatewayMeteringPolicyResult < Struct.new(
14721
+ :transit_gateway_metering_policy)
14722
+ SENSITIVE = []
14723
+ include Aws::Structure
14724
+ end
14725
+
14522
14726
  # @!attribute [rw] transit_gateway_id
14523
14727
  # The ID of the transit gateway.
14524
14728
  # @return [String]
@@ -15992,6 +16196,44 @@ module Aws::EC2
15992
16196
  include Aws::Structure
15993
16197
  end
15994
16198
 
16199
+ # @!attribute [rw] dry_run
16200
+ # Checks whether you have the required permissions for the action,
16201
+ # without actually making the request, and provides an error response.
16202
+ # If you have the required permissions, the error response is
16203
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
16204
+ # @return [Boolean]
16205
+ #
16206
+ # @!attribute [rw] vpc_id
16207
+ # The ID of the VPC for which to create the encryption control
16208
+ # configuration.
16209
+ # @return [String]
16210
+ #
16211
+ # @!attribute [rw] tag_specifications
16212
+ # The tags to apply to the VPC Encryption Control resource.
16213
+ # @return [Array<Types::TagSpecification>]
16214
+ #
16215
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVpcEncryptionControlRequest AWS API Documentation
16216
+ #
16217
+ class CreateVpcEncryptionControlRequest < Struct.new(
16218
+ :dry_run,
16219
+ :vpc_id,
16220
+ :tag_specifications)
16221
+ SENSITIVE = []
16222
+ include Aws::Structure
16223
+ end
16224
+
16225
+ # @!attribute [rw] vpc_encryption_control
16226
+ # Information about the VPC Encryption Control configuration.
16227
+ # @return [Types::VpcEncryptionControl]
16228
+ #
16229
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVpcEncryptionControlResult AWS API Documentation
16230
+ #
16231
+ class CreateVpcEncryptionControlResult < Struct.new(
16232
+ :vpc_encryption_control)
16233
+ SENSITIVE = []
16234
+ include Aws::Structure
16235
+ end
16236
+
15995
16237
  # @!attribute [rw] dry_run
15996
16238
  # Checks whether you have the required permissions for the action,
15997
16239
  # without actually making the request, and provides an error response.
@@ -16414,6 +16656,20 @@ module Aws::EC2
16414
16656
  # parameter.
16415
16657
  # @return [String]
16416
16658
  #
16659
+ # @!attribute [rw] vpc_encryption_control
16660
+ # Specifies the encryption control configuration to apply to the VPC
16661
+ # during creation. VPC Encryption Control enables you to enforce
16662
+ # encryption for all data in transit within and between VPCs to meet
16663
+ # compliance requirements.
16664
+ #
16665
+ # For more information, see [Enforce VPC encryption in transit][1] in
16666
+ # the *Amazon VPC User Guide*.
16667
+ #
16668
+ #
16669
+ #
16670
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-encryption-controls.html
16671
+ # @return [Types::VpcEncryptionControlConfiguration]
16672
+ #
16417
16673
  # @!attribute [rw] tag_specifications
16418
16674
  # The tags to assign to the VPC.
16419
16675
  # @return [Array<Types::TagSpecification>]
@@ -16456,6 +16712,7 @@ module Aws::EC2
16456
16712
  :ipv_6_ipam_pool_id,
16457
16713
  :ipv_6_netmask_length,
16458
16714
  :ipv_6_cidr_block_network_border_group,
16715
+ :vpc_encryption_control,
16459
16716
  :tag_specifications,
16460
16717
  :dry_run,
16461
16718
  :instance_tenancy,
@@ -19234,6 +19491,76 @@ module Aws::EC2
19234
19491
  include Aws::Structure
19235
19492
  end
19236
19493
 
19494
+ # @!attribute [rw] transit_gateway_metering_policy_id
19495
+ # The ID of the transit gateway metering policy containing the entry
19496
+ # to delete.
19497
+ # @return [String]
19498
+ #
19499
+ # @!attribute [rw] policy_rule_number
19500
+ # The rule number of the metering policy entry to delete.
19501
+ # @return [Integer]
19502
+ #
19503
+ # @!attribute [rw] dry_run
19504
+ # Checks whether you have the required permissions for the action,
19505
+ # without actually making the request, and provides an error response.
19506
+ # If you have the required permissions, the error response is
19507
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
19508
+ # @return [Boolean]
19509
+ #
19510
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayMeteringPolicyEntryRequest AWS API Documentation
19511
+ #
19512
+ class DeleteTransitGatewayMeteringPolicyEntryRequest < Struct.new(
19513
+ :transit_gateway_metering_policy_id,
19514
+ :policy_rule_number,
19515
+ :dry_run)
19516
+ SENSITIVE = []
19517
+ include Aws::Structure
19518
+ end
19519
+
19520
+ # @!attribute [rw] transit_gateway_metering_policy_entry
19521
+ # Information about the deleted transit gateway metering policy entry.
19522
+ # @return [Types::TransitGatewayMeteringPolicyEntry]
19523
+ #
19524
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayMeteringPolicyEntryResult AWS API Documentation
19525
+ #
19526
+ class DeleteTransitGatewayMeteringPolicyEntryResult < Struct.new(
19527
+ :transit_gateway_metering_policy_entry)
19528
+ SENSITIVE = []
19529
+ include Aws::Structure
19530
+ end
19531
+
19532
+ # @!attribute [rw] transit_gateway_metering_policy_id
19533
+ # The ID of the transit gateway metering policy to delete.
19534
+ # @return [String]
19535
+ #
19536
+ # @!attribute [rw] dry_run
19537
+ # Checks whether you have the required permissions for the action,
19538
+ # without actually making the request, and provides an error response.
19539
+ # If you have the required permissions, the error response is
19540
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
19541
+ # @return [Boolean]
19542
+ #
19543
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayMeteringPolicyRequest AWS API Documentation
19544
+ #
19545
+ class DeleteTransitGatewayMeteringPolicyRequest < Struct.new(
19546
+ :transit_gateway_metering_policy_id,
19547
+ :dry_run)
19548
+ SENSITIVE = []
19549
+ include Aws::Structure
19550
+ end
19551
+
19552
+ # @!attribute [rw] transit_gateway_metering_policy
19553
+ # Information about the deleted transit gateway metering policy.
19554
+ # @return [Types::TransitGatewayMeteringPolicy]
19555
+ #
19556
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayMeteringPolicyResult AWS API Documentation
19557
+ #
19558
+ class DeleteTransitGatewayMeteringPolicyResult < Struct.new(
19559
+ :transit_gateway_metering_policy)
19560
+ SENSITIVE = []
19561
+ include Aws::Structure
19562
+ end
19563
+
19237
19564
  # @!attribute [rw] transit_gateway_multicast_domain_id
19238
19565
  # The ID of the transit gateway multicast domain.
19239
19566
  # @return [String]
@@ -19769,6 +20096,38 @@ module Aws::EC2
19769
20096
  include Aws::Structure
19770
20097
  end
19771
20098
 
20099
+ # @!attribute [rw] dry_run
20100
+ # Checks whether you have the required permissions for the action,
20101
+ # without actually making the request, and provides an error response.
20102
+ # If you have the required permissions, the error response is
20103
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
20104
+ # @return [Boolean]
20105
+ #
20106
+ # @!attribute [rw] vpc_encryption_control_id
20107
+ # The ID of the VPC Encryption Control resource to delete.
20108
+ # @return [String]
20109
+ #
20110
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVpcEncryptionControlRequest AWS API Documentation
20111
+ #
20112
+ class DeleteVpcEncryptionControlRequest < Struct.new(
20113
+ :dry_run,
20114
+ :vpc_encryption_control_id)
20115
+ SENSITIVE = []
20116
+ include Aws::Structure
20117
+ end
20118
+
20119
+ # @!attribute [rw] vpc_encryption_control
20120
+ # Information about the deleted VPC Encryption Control configuration.
20121
+ # @return [Types::VpcEncryptionControl]
20122
+ #
20123
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVpcEncryptionControlResult AWS API Documentation
20124
+ #
20125
+ class DeleteVpcEncryptionControlResult < Struct.new(
20126
+ :vpc_encryption_control)
20127
+ SENSITIVE = []
20128
+ include Aws::Structure
20129
+ end
20130
+
19772
20131
  # @!attribute [rw] dry_run
19773
20132
  # Checks whether you have the required permissions for the action,
19774
20133
  # without actually making the request, and provides an error response.
@@ -26029,7 +26388,7 @@ module Aws::EC2
26029
26388
  #
26030
26389
  # * `requester-id` - The ID of the entity that launched the instance
26031
26390
  # on your behalf (for example, Amazon Web Services Management
26032
- # Console, Auto Scaling, and so on).
26391
+ # Console, Amazon EC2 Auto Scaling, and so on).
26033
26392
  #
26034
26393
  # * `reservation-id` - The ID of the instance's reservation. A
26035
26394
  # reservation ID is created any time you launch an instance. A
@@ -32122,6 +32481,62 @@ module Aws::EC2
32122
32481
  include Aws::Structure
32123
32482
  end
32124
32483
 
32484
+ # @!attribute [rw] transit_gateway_metering_policy_ids
32485
+ # The IDs of the transit gateway metering policies to describe.
32486
+ # @return [Array<String>]
32487
+ #
32488
+ # @!attribute [rw] filters
32489
+ # One or more filters to apply when describing transit gateway
32490
+ # metering policies.
32491
+ # @return [Array<Types::Filter>]
32492
+ #
32493
+ # @!attribute [rw] max_results
32494
+ # The maximum number of results to return with a single call. To
32495
+ # retrieve the remaining results, make another call with the returned
32496
+ # `nextToken` value.
32497
+ # @return [Integer]
32498
+ #
32499
+ # @!attribute [rw] next_token
32500
+ # The token for the next page of results.
32501
+ # @return [String]
32502
+ #
32503
+ # @!attribute [rw] dry_run
32504
+ # Checks whether you have the required permissions for the action,
32505
+ # without actually making the request, and provides an error response.
32506
+ # If you have the required permissions, the error response is
32507
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
32508
+ # @return [Boolean]
32509
+ #
32510
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTransitGatewayMeteringPoliciesRequest AWS API Documentation
32511
+ #
32512
+ class DescribeTransitGatewayMeteringPoliciesRequest < Struct.new(
32513
+ :transit_gateway_metering_policy_ids,
32514
+ :filters,
32515
+ :max_results,
32516
+ :next_token,
32517
+ :dry_run)
32518
+ SENSITIVE = []
32519
+ include Aws::Structure
32520
+ end
32521
+
32522
+ # @!attribute [rw] transit_gateway_metering_policies
32523
+ # Information about the transit gateway metering policies.
32524
+ # @return [Array<Types::TransitGatewayMeteringPolicy>]
32525
+ #
32526
+ # @!attribute [rw] next_token
32527
+ # The token to use to retrieve the next page of results. This value is
32528
+ # `null` when there are no more results to return.
32529
+ # @return [String]
32530
+ #
32531
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTransitGatewayMeteringPoliciesResult AWS API Documentation
32532
+ #
32533
+ class DescribeTransitGatewayMeteringPoliciesResult < Struct.new(
32534
+ :transit_gateway_metering_policies,
32535
+ :next_token)
32536
+ SENSITIVE = []
32537
+ include Aws::Structure
32538
+ end
32539
+
32125
32540
  # @!attribute [rw] transit_gateway_multicast_domain_ids
32126
32541
  # The ID of the transit gateway multicast domain.
32127
32542
  # @return [Array<String>]
@@ -33577,6 +33992,73 @@ module Aws::EC2
33577
33992
  include Aws::Structure
33578
33993
  end
33579
33994
 
33995
+ # @!attribute [rw] dry_run
33996
+ # Checks whether you have the required permissions for the action,
33997
+ # without actually making the request, and provides an error response.
33998
+ # If you have the required permissions, the error response is
33999
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
34000
+ # @return [Boolean]
34001
+ #
34002
+ # @!attribute [rw] filters
34003
+ # The filters to apply to the request.
34004
+ # @return [Array<Types::Filter>]
34005
+ #
34006
+ # @!attribute [rw] vpc_encryption_control_ids
34007
+ # The IDs of the VPC Encryption Control configurations to describe.
34008
+ # @return [Array<String>]
34009
+ #
34010
+ # @!attribute [rw] vpc_ids
34011
+ # The IDs of the VPCs to describe encryption control configurations
34012
+ # for.
34013
+ # @return [Array<String>]
34014
+ #
34015
+ # @!attribute [rw] next_token
34016
+ # The token returned from a previous paginated request. Pagination
34017
+ # continues from the end of the items returned by the previous
34018
+ # request.
34019
+ # @return [String]
34020
+ #
34021
+ # @!attribute [rw] max_results
34022
+ # The maximum number of items to return for this request. To get the
34023
+ # next page of items, make another request with the token returned in
34024
+ # the output. For more information, see [Pagination][1].
34025
+ #
34026
+ #
34027
+ #
34028
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination
34029
+ # @return [Integer]
34030
+ #
34031
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcEncryptionControlsRequest AWS API Documentation
34032
+ #
34033
+ class DescribeVpcEncryptionControlsRequest < Struct.new(
34034
+ :dry_run,
34035
+ :filters,
34036
+ :vpc_encryption_control_ids,
34037
+ :vpc_ids,
34038
+ :next_token,
34039
+ :max_results)
34040
+ SENSITIVE = []
34041
+ include Aws::Structure
34042
+ end
34043
+
34044
+ # @!attribute [rw] vpc_encryption_controls
34045
+ # Information about the VPC Encryption Control configurations.
34046
+ # @return [Array<Types::VpcEncryptionControl>]
34047
+ #
34048
+ # @!attribute [rw] next_token
34049
+ # The token to include in another request to get the next page of
34050
+ # items. This value is `null` when there are no more items to return.
34051
+ # @return [String]
34052
+ #
34053
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcEncryptionControlsResult AWS API Documentation
34054
+ #
34055
+ class DescribeVpcEncryptionControlsResult < Struct.new(
34056
+ :vpc_encryption_controls,
34057
+ :next_token)
34058
+ SENSITIVE = []
34059
+ include Aws::Structure
34060
+ end
34061
+
33580
34062
  # @!attribute [rw] dry_run
33581
34063
  # Checks whether you have the required permissions for the action,
33582
34064
  # without actually making the request, and provides an error response.
@@ -38933,6 +39415,25 @@ module Aws::EC2
38933
39415
  include Aws::Structure
38934
39416
  end
38935
39417
 
39418
+ # Describes the encryption support status for a transit gateway.
39419
+ #
39420
+ # @!attribute [rw] encryption_state
39421
+ # The current encryption state of the resource.
39422
+ # @return [String]
39423
+ #
39424
+ # @!attribute [rw] state_message
39425
+ # A message describing the encryption state.
39426
+ # @return [String]
39427
+ #
39428
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EncryptionSupport AWS API Documentation
39429
+ #
39430
+ class EncryptionSupport < Struct.new(
39431
+ :encryption_state,
39432
+ :state_message)
39433
+ SENSITIVE = []
39434
+ include Aws::Structure
39435
+ end
39436
+
38936
39437
  # Describes an EC2 Fleet or Spot Fleet event.
38937
39438
  #
38938
39439
  # @!attribute [rw] event_description
@@ -44705,6 +45206,63 @@ module Aws::EC2
44705
45206
  include Aws::Structure
44706
45207
  end
44707
45208
 
45209
+ # @!attribute [rw] transit_gateway_metering_policy_id
45210
+ # The ID of the transit gateway metering policy to retrieve entries
45211
+ # for.
45212
+ # @return [String]
45213
+ #
45214
+ # @!attribute [rw] filters
45215
+ # One or more filters to apply when retrieving metering policy
45216
+ # entries.
45217
+ # @return [Array<Types::Filter>]
45218
+ #
45219
+ # @!attribute [rw] max_results
45220
+ # The maximum number of results to return with a single call. To
45221
+ # retrieve the remaining results, make another call with the returned
45222
+ # `nextToken` value.
45223
+ # @return [Integer]
45224
+ #
45225
+ # @!attribute [rw] next_token
45226
+ # The token for the next page of results.
45227
+ # @return [String]
45228
+ #
45229
+ # @!attribute [rw] dry_run
45230
+ # Checks whether you have the required permissions for the action,
45231
+ # without actually making the request, and provides an error response.
45232
+ # If you have the required permissions, the error response is
45233
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
45234
+ # @return [Boolean]
45235
+ #
45236
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetTransitGatewayMeteringPolicyEntriesRequest AWS API Documentation
45237
+ #
45238
+ class GetTransitGatewayMeteringPolicyEntriesRequest < Struct.new(
45239
+ :transit_gateway_metering_policy_id,
45240
+ :filters,
45241
+ :max_results,
45242
+ :next_token,
45243
+ :dry_run)
45244
+ SENSITIVE = []
45245
+ include Aws::Structure
45246
+ end
45247
+
45248
+ # @!attribute [rw] transit_gateway_metering_policy_entries
45249
+ # Information about the transit gateway metering policy entries.
45250
+ # @return [Array<Types::TransitGatewayMeteringPolicyEntry>]
45251
+ #
45252
+ # @!attribute [rw] next_token
45253
+ # The token to use to retrieve the next page of results. This value is
45254
+ # `null` when there are no more results to return.
45255
+ # @return [String]
45256
+ #
45257
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetTransitGatewayMeteringPolicyEntriesResult AWS API Documentation
45258
+ #
45259
+ class GetTransitGatewayMeteringPolicyEntriesResult < Struct.new(
45260
+ :transit_gateway_metering_policy_entries,
45261
+ :next_token)
45262
+ SENSITIVE = []
45263
+ include Aws::Structure
45264
+ end
45265
+
44708
45266
  # @!attribute [rw] transit_gateway_multicast_domain_id
44709
45267
  # The ID of the transit gateway multicast domain.
44710
45268
  # @return [String]
@@ -45199,6 +45757,64 @@ module Aws::EC2
45199
45757
  include Aws::Structure
45200
45758
  end
45201
45759
 
45760
+ # @!attribute [rw] vpc_id
45761
+ # The ID of the VPC to check for resources blocking encryption
45762
+ # enforcement.
45763
+ # @return [String]
45764
+ #
45765
+ # @!attribute [rw] max_results
45766
+ # The maximum number of items to return for this request. To get the
45767
+ # next page of items, make another request with the token returned in
45768
+ # the output. For more information, see [Pagination][1].
45769
+ #
45770
+ #
45771
+ #
45772
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination
45773
+ # @return [Integer]
45774
+ #
45775
+ # @!attribute [rw] next_token
45776
+ # The token returned from a previous paginated request. Pagination
45777
+ # continues from the end of the items returned by the previous
45778
+ # request.
45779
+ # @return [String]
45780
+ #
45781
+ # @!attribute [rw] dry_run
45782
+ # Checks whether you have the required permissions for the action,
45783
+ # without actually making the request, and provides an error response.
45784
+ # If you have the required permissions, the error response is
45785
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
45786
+ # @return [Boolean]
45787
+ #
45788
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetVpcResourcesBlockingEncryptionEnforcementRequest AWS API Documentation
45789
+ #
45790
+ class GetVpcResourcesBlockingEncryptionEnforcementRequest < Struct.new(
45791
+ :vpc_id,
45792
+ :max_results,
45793
+ :next_token,
45794
+ :dry_run)
45795
+ SENSITIVE = []
45796
+ include Aws::Structure
45797
+ end
45798
+
45799
+ # @!attribute [rw] non_compliant_resources
45800
+ # Information about resources that are blocking encryption
45801
+ # enforcement.
45802
+ # @return [Array<Types::VpcEncryptionNonCompliantResource>]
45803
+ #
45804
+ # @!attribute [rw] next_token
45805
+ # The token to include in another request to get the next page of
45806
+ # items. This value is `null` when there are no more items to return.
45807
+ # @return [String]
45808
+ #
45809
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetVpcResourcesBlockingEncryptionEnforcementResult AWS API Documentation
45810
+ #
45811
+ class GetVpcResourcesBlockingEncryptionEnforcementResult < Struct.new(
45812
+ :non_compliant_resources,
45813
+ :next_token)
45814
+ SENSITIVE = []
45815
+ include Aws::Structure
45816
+ end
45817
+
45202
45818
  # @!attribute [rw] vpn_connection_id
45203
45819
  # The `VpnConnectionId` specifies the Site-to-Site VPN connection used
45204
45820
  # for the sample configuration.
@@ -56795,6 +57411,65 @@ module Aws::EC2
56795
57411
  include Aws::Structure
56796
57412
  end
56797
57413
 
57414
+ # @!attribute [rw] volume_ids
57415
+ # The IDs of the volumes to list. Omit this parameter to list all of
57416
+ # the volumes that are in the Recycle Bin.
57417
+ # @return [Array<String>]
57418
+ #
57419
+ # @!attribute [rw] dry_run
57420
+ # Checks whether you have the required permissions for the action,
57421
+ # without actually making the request, and provides an error response.
57422
+ # If you have the required permissions, the error response is
57423
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
57424
+ # @return [Boolean]
57425
+ #
57426
+ # @!attribute [rw] max_results
57427
+ # The maximum number of items to return for this request. To get the
57428
+ # next page of items, make another request with the token returned in
57429
+ # the output. For more information, see [Pagination][1].
57430
+ #
57431
+ # Valid range: 5 - 500
57432
+ #
57433
+ #
57434
+ #
57435
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination
57436
+ # @return [Integer]
57437
+ #
57438
+ # @!attribute [rw] next_token
57439
+ # The token returned from a previous paginated request. Pagination
57440
+ # continues from the end of the items returned by the previous
57441
+ # request.
57442
+ # @return [String]
57443
+ #
57444
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ListVolumesInRecycleBinRequest AWS API Documentation
57445
+ #
57446
+ class ListVolumesInRecycleBinRequest < Struct.new(
57447
+ :volume_ids,
57448
+ :dry_run,
57449
+ :max_results,
57450
+ :next_token)
57451
+ SENSITIVE = []
57452
+ include Aws::Structure
57453
+ end
57454
+
57455
+ # @!attribute [rw] volumes
57456
+ # Information about the volumes.
57457
+ # @return [Array<Types::VolumeRecycleBinInfo>]
57458
+ #
57459
+ # @!attribute [rw] next_token
57460
+ # The token to include in another request to get the next page of
57461
+ # items. This value is `null` when there are no more items to return.
57462
+ # @return [String]
57463
+ #
57464
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ListVolumesInRecycleBinResult AWS API Documentation
57465
+ #
57466
+ class ListVolumesInRecycleBinResult < Struct.new(
57467
+ :volumes,
57468
+ :next_token)
57469
+ SENSITIVE = []
57470
+ include Aws::Structure
57471
+ end
57472
+
56798
57473
  # Describes the Classic Load Balancers and target groups to attach to a
56799
57474
  # Spot Fleet request.
56800
57475
  #
@@ -61436,6 +62111,48 @@ module Aws::EC2
61436
62111
  include Aws::Structure
61437
62112
  end
61438
62113
 
62114
+ # @!attribute [rw] transit_gateway_metering_policy_id
62115
+ # The ID of the transit gateway metering policy to modify.
62116
+ # @return [String]
62117
+ #
62118
+ # @!attribute [rw] add_middlebox_attachment_ids
62119
+ # The IDs of middlebox attachments to add to the metering policy.
62120
+ # @return [Array<String>]
62121
+ #
62122
+ # @!attribute [rw] remove_middlebox_attachment_ids
62123
+ # The IDs of middlebox attachments to remove from the metering policy.
62124
+ # @return [Array<String>]
62125
+ #
62126
+ # @!attribute [rw] dry_run
62127
+ # Checks whether you have the required permissions for the action,
62128
+ # without actually making the request, and provides an error response.
62129
+ # If you have the required permissions, the error response is
62130
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
62131
+ # @return [Boolean]
62132
+ #
62133
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyTransitGatewayMeteringPolicyRequest AWS API Documentation
62134
+ #
62135
+ class ModifyTransitGatewayMeteringPolicyRequest < Struct.new(
62136
+ :transit_gateway_metering_policy_id,
62137
+ :add_middlebox_attachment_ids,
62138
+ :remove_middlebox_attachment_ids,
62139
+ :dry_run)
62140
+ SENSITIVE = []
62141
+ include Aws::Structure
62142
+ end
62143
+
62144
+ # @!attribute [rw] transit_gateway_metering_policy
62145
+ # Information about the modified transit gateway metering policy.
62146
+ # @return [Types::TransitGatewayMeteringPolicy]
62147
+ #
62148
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyTransitGatewayMeteringPolicyResult AWS API Documentation
62149
+ #
62150
+ class ModifyTransitGatewayMeteringPolicyResult < Struct.new(
62151
+ :transit_gateway_metering_policy)
62152
+ SENSITIVE = []
62153
+ include Aws::Structure
62154
+ end
62155
+
61439
62156
  # The transit gateway options.
61440
62157
  #
61441
62158
  # @!attribute [rw] add_transit_gateway_cidr_blocks
@@ -61516,6 +62233,10 @@ module Aws::EC2
61516
62233
  # prior to modifying the ASN on the transit gateway.
61517
62234
  # @return [Integer]
61518
62235
  #
62236
+ # @!attribute [rw] encryption_support
62237
+ # Enable or disable encryption support for VPC Encryption Control.
62238
+ # @return [String]
62239
+ #
61519
62240
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyTransitGatewayOptions AWS API Documentation
61520
62241
  #
61521
62242
  class ModifyTransitGatewayOptions < Struct.new(
@@ -61529,7 +62250,8 @@ module Aws::EC2
61529
62250
  :association_default_route_table_id,
61530
62251
  :default_route_table_propagation,
61531
62252
  :propagation_default_route_table_id,
61532
- :amazon_side_asn)
62253
+ :amazon_side_asn,
62254
+ :encryption_support)
61533
62255
  SENSITIVE = []
61534
62256
  include Aws::Structure
61535
62257
  end
@@ -62669,6 +63391,91 @@ module Aws::EC2
62669
63391
  include Aws::Structure
62670
63392
  end
62671
63393
 
63394
+ # @!attribute [rw] dry_run
63395
+ # Checks whether you have the required permissions for the action,
63396
+ # without actually making the request, and provides an error response.
63397
+ # If you have the required permissions, the error response is
63398
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
63399
+ # @return [Boolean]
63400
+ #
63401
+ # @!attribute [rw] vpc_encryption_control_id
63402
+ # The ID of the VPC Encryption Control resource to modify.
63403
+ # @return [String]
63404
+ #
63405
+ # @!attribute [rw] mode
63406
+ # The encryption mode for the VPC Encryption Control configuration.
63407
+ # @return [String]
63408
+ #
63409
+ # @!attribute [rw] internet_gateway_exclusion
63410
+ # Specifies whether to exclude internet gateway traffic from
63411
+ # encryption enforcement.
63412
+ # @return [String]
63413
+ #
63414
+ # @!attribute [rw] egress_only_internet_gateway_exclusion
63415
+ # Specifies whether to exclude egress-only internet gateway traffic
63416
+ # from encryption enforcement.
63417
+ # @return [String]
63418
+ #
63419
+ # @!attribute [rw] nat_gateway_exclusion
63420
+ # Specifies whether to exclude NAT gateway traffic from encryption
63421
+ # enforcement.
63422
+ # @return [String]
63423
+ #
63424
+ # @!attribute [rw] virtual_private_gateway_exclusion
63425
+ # Specifies whether to exclude virtual private gateway traffic from
63426
+ # encryption enforcement.
63427
+ # @return [String]
63428
+ #
63429
+ # @!attribute [rw] vpc_peering_exclusion
63430
+ # Specifies whether to exclude VPC peering connection traffic from
63431
+ # encryption enforcement.
63432
+ # @return [String]
63433
+ #
63434
+ # @!attribute [rw] lambda_exclusion
63435
+ # Specifies whether to exclude Lambda function traffic from encryption
63436
+ # enforcement.
63437
+ # @return [String]
63438
+ #
63439
+ # @!attribute [rw] vpc_lattice_exclusion
63440
+ # Specifies whether to exclude VPC Lattice traffic from encryption
63441
+ # enforcement.
63442
+ # @return [String]
63443
+ #
63444
+ # @!attribute [rw] elastic_file_system_exclusion
63445
+ # Specifies whether to exclude Elastic File System traffic from
63446
+ # encryption enforcement.
63447
+ # @return [String]
63448
+ #
63449
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcEncryptionControlRequest AWS API Documentation
63450
+ #
63451
+ class ModifyVpcEncryptionControlRequest < Struct.new(
63452
+ :dry_run,
63453
+ :vpc_encryption_control_id,
63454
+ :mode,
63455
+ :internet_gateway_exclusion,
63456
+ :egress_only_internet_gateway_exclusion,
63457
+ :nat_gateway_exclusion,
63458
+ :virtual_private_gateway_exclusion,
63459
+ :vpc_peering_exclusion,
63460
+ :lambda_exclusion,
63461
+ :vpc_lattice_exclusion,
63462
+ :elastic_file_system_exclusion)
63463
+ SENSITIVE = []
63464
+ include Aws::Structure
63465
+ end
63466
+
63467
+ # @!attribute [rw] vpc_encryption_control
63468
+ # Information about the VPC Encryption Control configuration.
63469
+ # @return [Types::VpcEncryptionControl]
63470
+ #
63471
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcEncryptionControlResult AWS API Documentation
63472
+ #
63473
+ class ModifyVpcEncryptionControlResult < Struct.new(
63474
+ :vpc_encryption_control)
63475
+ SENSITIVE = []
63476
+ include Aws::Structure
63477
+ end
63478
+
62672
63479
  # @!attribute [rw] dry_run
62673
63480
  # Checks whether you have the required permissions for the action,
62674
63481
  # without actually making the request, and provides an error response.
@@ -71488,6 +72295,39 @@ module Aws::EC2
71488
72295
  include Aws::Structure
71489
72296
  end
71490
72297
 
72298
+ # @!attribute [rw] volume_id
72299
+ # The ID of the volume to restore.
72300
+ # @return [String]
72301
+ #
72302
+ # @!attribute [rw] dry_run
72303
+ # Checks whether you have the required permissions for the action,
72304
+ # without actually making the request, and provides an error response.
72305
+ # If you have the required permissions, the error response is
72306
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
72307
+ # @return [Boolean]
72308
+ #
72309
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RestoreVolumeFromRecycleBinRequest AWS API Documentation
72310
+ #
72311
+ class RestoreVolumeFromRecycleBinRequest < Struct.new(
72312
+ :volume_id,
72313
+ :dry_run)
72314
+ SENSITIVE = []
72315
+ include Aws::Structure
72316
+ end
72317
+
72318
+ # @!attribute [rw] return
72319
+ # Returns `true` if the request succeeds; otherwise, it returns an
72320
+ # error.
72321
+ # @return [Boolean]
72322
+ #
72323
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RestoreVolumeFromRecycleBinResult AWS API Documentation
72324
+ #
72325
+ class RestoreVolumeFromRecycleBinResult < Struct.new(
72326
+ :return)
72327
+ SENSITIVE = []
72328
+ include Aws::Structure
72329
+ end
72330
+
71491
72331
  # @!attribute [rw] client_vpn_endpoint_id
71492
72332
  # The ID of the Client VPN endpoint with which the authorization rule
71493
72333
  # is associated.
@@ -78935,6 +79775,146 @@ module Aws::EC2
78935
79775
  include Aws::Structure
78936
79776
  end
78937
79777
 
79778
+ # Describes a transit gateway metering policy.
79779
+ #
79780
+ # @!attribute [rw] transit_gateway_metering_policy_id
79781
+ # The ID of the transit gateway metering policy.
79782
+ # @return [String]
79783
+ #
79784
+ # @!attribute [rw] transit_gateway_id
79785
+ # The ID of the transit gateway associated with the metering policy.
79786
+ # @return [String]
79787
+ #
79788
+ # @!attribute [rw] middlebox_attachment_ids
79789
+ # The IDs of the middlebox attachments associated with the metering
79790
+ # policy.
79791
+ # @return [Array<String>]
79792
+ #
79793
+ # @!attribute [rw] state
79794
+ # The state of the transit gateway metering policy.
79795
+ # @return [String]
79796
+ #
79797
+ # @!attribute [rw] update_effective_at
79798
+ # The date and time when the metering policy update becomes effective.
79799
+ # @return [Time]
79800
+ #
79801
+ # @!attribute [rw] tags
79802
+ # The tags assigned to the transit gateway metering policy.
79803
+ # @return [Array<Types::Tag>]
79804
+ #
79805
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayMeteringPolicy AWS API Documentation
79806
+ #
79807
+ class TransitGatewayMeteringPolicy < Struct.new(
79808
+ :transit_gateway_metering_policy_id,
79809
+ :transit_gateway_id,
79810
+ :middlebox_attachment_ids,
79811
+ :state,
79812
+ :update_effective_at,
79813
+ :tags)
79814
+ SENSITIVE = []
79815
+ include Aws::Structure
79816
+ end
79817
+
79818
+ # Describes an entry in a transit gateway metering policy.
79819
+ #
79820
+ # @!attribute [rw] policy_rule_number
79821
+ # The rule number of the metering policy entry.
79822
+ # @return [String]
79823
+ #
79824
+ # @!attribute [rw] metered_account
79825
+ # The Amazon Web Services account ID to which the metered traffic is
79826
+ # attributed.
79827
+ # @return [String]
79828
+ #
79829
+ # @!attribute [rw] state
79830
+ # The state of the metering policy entry.
79831
+ # @return [String]
79832
+ #
79833
+ # @!attribute [rw] updated_at
79834
+ # The date and time when the metering policy entry was last updated.
79835
+ # @return [Time]
79836
+ #
79837
+ # @!attribute [rw] update_effective_at
79838
+ # The date and time when the metering policy entry update becomes
79839
+ # effective.
79840
+ # @return [Time]
79841
+ #
79842
+ # @!attribute [rw] metering_policy_rule
79843
+ # The metering policy rule that defines traffic matching criteria.
79844
+ # @return [Types::TransitGatewayMeteringPolicyRule]
79845
+ #
79846
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayMeteringPolicyEntry AWS API Documentation
79847
+ #
79848
+ class TransitGatewayMeteringPolicyEntry < Struct.new(
79849
+ :policy_rule_number,
79850
+ :metered_account,
79851
+ :state,
79852
+ :updated_at,
79853
+ :update_effective_at,
79854
+ :metering_policy_rule)
79855
+ SENSITIVE = []
79856
+ include Aws::Structure
79857
+ end
79858
+
79859
+ # Describes the traffic matching criteria for a transit gateway metering
79860
+ # policy rule.
79861
+ #
79862
+ # @!attribute [rw] source_transit_gateway_attachment_id
79863
+ # The ID of the source transit gateway attachment.
79864
+ # @return [String]
79865
+ #
79866
+ # @!attribute [rw] source_transit_gateway_attachment_type
79867
+ # The type of the source transit gateway attachment. Note that the
79868
+ # `tgw-peering` resource type has been deprecated. To configure
79869
+ # metering policies for Connect, use the transport attachment type.
79870
+ # @return [String]
79871
+ #
79872
+ # @!attribute [rw] source_cidr_block
79873
+ # The source CIDR block for the rule.
79874
+ # @return [String]
79875
+ #
79876
+ # @!attribute [rw] source_port_range
79877
+ # The source port range for the rule.
79878
+ # @return [String]
79879
+ #
79880
+ # @!attribute [rw] destination_transit_gateway_attachment_id
79881
+ # The ID of the destination transit gateway attachment.
79882
+ # @return [String]
79883
+ #
79884
+ # @!attribute [rw] destination_transit_gateway_attachment_type
79885
+ # The type of the destination transit gateway attachment. Note that
79886
+ # the `tgw-peering` resource type has been deprecated. To configure
79887
+ # metering policies for Connect, use the transport attachment type.
79888
+ # @return [String]
79889
+ #
79890
+ # @!attribute [rw] destination_cidr_block
79891
+ # The destination CIDR block for the rule.
79892
+ # @return [String]
79893
+ #
79894
+ # @!attribute [rw] destination_port_range
79895
+ # The destination port range for the rule.
79896
+ # @return [String]
79897
+ #
79898
+ # @!attribute [rw] protocol
79899
+ # The protocol for the rule (1, 6, 17, etc.).
79900
+ # @return [String]
79901
+ #
79902
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayMeteringPolicyRule AWS API Documentation
79903
+ #
79904
+ class TransitGatewayMeteringPolicyRule < Struct.new(
79905
+ :source_transit_gateway_attachment_id,
79906
+ :source_transit_gateway_attachment_type,
79907
+ :source_cidr_block,
79908
+ :source_port_range,
79909
+ :destination_transit_gateway_attachment_id,
79910
+ :destination_transit_gateway_attachment_type,
79911
+ :destination_cidr_block,
79912
+ :destination_port_range,
79913
+ :protocol)
79914
+ SENSITIVE = []
79915
+ include Aws::Structure
79916
+ end
79917
+
78938
79918
  # Describes the deregistered transit gateway multicast group members.
78939
79919
  #
78940
79920
  # @!attribute [rw] transit_gateway_multicast_domain_id
@@ -79312,6 +80292,10 @@ module Aws::EC2
79312
80292
  # Indicates whether multicast is enabled on the transit gateway
79313
80293
  # @return [String]
79314
80294
  #
80295
+ # @!attribute [rw] encryption_support
80296
+ # Defines if the Transit Gateway supports VPC Encryption Control.
80297
+ # @return [Types::EncryptionSupport]
80298
+ #
79315
80299
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayOptions AWS API Documentation
79316
80300
  #
79317
80301
  class TransitGatewayOptions < Struct.new(
@@ -79325,7 +80309,8 @@ module Aws::EC2
79325
80309
  :vpn_ecmp_support,
79326
80310
  :dns_support,
79327
80311
  :security_group_referencing_support,
79328
- :multicast_support)
80312
+ :multicast_support,
80313
+ :encryption_support)
79329
80314
  SENSITIVE = []
79330
80315
  include Aws::Structure
79331
80316
  end
@@ -82252,6 +83237,97 @@ module Aws::EC2
82252
83237
  include Aws::Structure
82253
83238
  end
82254
83239
 
83240
+ # Information about a volume that is currently in the Recycle Bin.
83241
+ #
83242
+ # @!attribute [rw] volume_id
83243
+ # The ID of the volume.
83244
+ # @return [String]
83245
+ #
83246
+ # @!attribute [rw] volume_type
83247
+ # The volume type.
83248
+ # @return [String]
83249
+ #
83250
+ # @!attribute [rw] state
83251
+ # The state of the volume.
83252
+ # @return [String]
83253
+ #
83254
+ # @!attribute [rw] size
83255
+ # The size of the volume, in GiB.
83256
+ # @return [Integer]
83257
+ #
83258
+ # @!attribute [rw] iops
83259
+ # The number of I/O operations per second (IOPS) for the volume.
83260
+ # @return [Integer]
83261
+ #
83262
+ # @!attribute [rw] throughput
83263
+ # The throughput that the volume supports, in MiB/s.
83264
+ # @return [Integer]
83265
+ #
83266
+ # @!attribute [rw] outpost_arn
83267
+ # The ARN of the Outpost on which the volume is stored. For more
83268
+ # information, see [Amazon EBS volumes on Outposts][1] in the *Amazon
83269
+ # EBS User Guide*.
83270
+ #
83271
+ #
83272
+ #
83273
+ # [1]: https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volumes-outposts.html
83274
+ # @return [String]
83275
+ #
83276
+ # @!attribute [rw] availability_zone
83277
+ # The Availability Zone for the volume.
83278
+ # @return [String]
83279
+ #
83280
+ # @!attribute [rw] availability_zone_id
83281
+ # The ID of the Availability Zone for the volume.
83282
+ # @return [String]
83283
+ #
83284
+ # @!attribute [rw] source_volume_id
83285
+ # The ID of the source volume.
83286
+ # @return [String]
83287
+ #
83288
+ # @!attribute [rw] snapshot_id
83289
+ # The snapshot from which the volume was created, if applicable.
83290
+ # @return [String]
83291
+ #
83292
+ # @!attribute [rw] operator
83293
+ # The service provider that manages the volume.
83294
+ # @return [Types::OperatorResponse]
83295
+ #
83296
+ # @!attribute [rw] create_time
83297
+ # The time stamp when volume creation was initiated.
83298
+ # @return [Time]
83299
+ #
83300
+ # @!attribute [rw] recycle_bin_enter_time
83301
+ # The date and time when the volume entered the Recycle Bin.
83302
+ # @return [Time]
83303
+ #
83304
+ # @!attribute [rw] recycle_bin_exit_time
83305
+ # The date and time when the volume is to be permanently deleted from
83306
+ # the Recycle Bin.
83307
+ # @return [Time]
83308
+ #
83309
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VolumeRecycleBinInfo AWS API Documentation
83310
+ #
83311
+ class VolumeRecycleBinInfo < Struct.new(
83312
+ :volume_id,
83313
+ :volume_type,
83314
+ :state,
83315
+ :size,
83316
+ :iops,
83317
+ :throughput,
83318
+ :outpost_arn,
83319
+ :availability_zone,
83320
+ :availability_zone_id,
83321
+ :source_volume_id,
83322
+ :snapshot_id,
83323
+ :operator,
83324
+ :create_time,
83325
+ :recycle_bin_enter_time,
83326
+ :recycle_bin_exit_time)
83327
+ SENSITIVE = []
83328
+ include Aws::Structure
83329
+ end
83330
+
82255
83331
  # Describes a volume status operation code.
82256
83332
  #
82257
83333
  # @!attribute [rw] code
@@ -82479,6 +83555,14 @@ module Aws::EC2
82479
83555
  # @return [Boolean]
82480
83556
  #
82481
83557
  # @!attribute [rw] encryption_control
83558
+ # Describes the configuration and state of VPC encryption controls.
83559
+ #
83560
+ # For more information, see [Enforce VPC encryption in transit][1] in
83561
+ # the *Amazon VPC User Guide*.
83562
+ #
83563
+ #
83564
+ #
83565
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-encryption-controls.html
82482
83566
  # @return [Types::VpcEncryptionControl]
82483
83567
  #
82484
83568
  # @!attribute [rw] tags
@@ -82773,25 +83857,44 @@ module Aws::EC2
82773
83857
  include Aws::Structure
82774
83858
  end
82775
83859
 
83860
+ # Describes the configuration and state of VPC encryption controls.
83861
+ #
83862
+ # For more information, see [Enforce VPC encryption in transit][1] in
83863
+ # the *Amazon VPC User Guide*.
83864
+ #
83865
+ #
83866
+ #
83867
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-encryption-controls.html
83868
+ #
82776
83869
  # @!attribute [rw] vpc_id
83870
+ # The ID of the VPC associated with the encryption control
83871
+ # configuration.
82777
83872
  # @return [String]
82778
83873
  #
82779
83874
  # @!attribute [rw] vpc_encryption_control_id
83875
+ # The ID of the VPC Encryption Control configuration.
82780
83876
  # @return [String]
82781
83877
  #
82782
83878
  # @!attribute [rw] mode
83879
+ # The encryption mode for the VPC Encryption Control configuration.
82783
83880
  # @return [String]
82784
83881
  #
82785
83882
  # @!attribute [rw] state
83883
+ # The current state of the VPC Encryption Control configuration.
82786
83884
  # @return [String]
82787
83885
  #
82788
83886
  # @!attribute [rw] state_message
83887
+ # A message providing additional information about the encryption
83888
+ # control state.
82789
83889
  # @return [String]
82790
83890
  #
82791
83891
  # @!attribute [rw] resource_exclusions
83892
+ # Information about resource exclusions for the VPC Encryption Control
83893
+ # configuration.
82792
83894
  # @return [Types::VpcEncryptionControlExclusions]
82793
83895
  #
82794
83896
  # @!attribute [rw] tags
83897
+ # The tags assigned to the VPC Encryption Control configuration.
82795
83898
  # @return [Array<Types::Tag>]
82796
83899
  #
82797
83900
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpcEncryptionControl AWS API Documentation
@@ -82808,10 +83911,91 @@ module Aws::EC2
82808
83911
  include Aws::Structure
82809
83912
  end
82810
83913
 
83914
+ # Describes the configuration settings for VPC Encryption Control.
83915
+ #
83916
+ # For more information, see [Enforce VPC encryption in transit][1] in
83917
+ # the *Amazon VPC User Guide*.
83918
+ #
83919
+ #
83920
+ #
83921
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-encryption-controls.html
83922
+ #
83923
+ # @!attribute [rw] mode
83924
+ # The encryption mode for the VPC Encryption Control configuration.
83925
+ # @return [String]
83926
+ #
83927
+ # @!attribute [rw] internet_gateway_exclusion
83928
+ # Specifies whether to exclude internet gateway traffic from
83929
+ # encryption enforcement.
83930
+ # @return [String]
83931
+ #
83932
+ # @!attribute [rw] egress_only_internet_gateway_exclusion
83933
+ # Specifies whether to exclude egress-only internet gateway traffic
83934
+ # from encryption enforcement.
83935
+ # @return [String]
83936
+ #
83937
+ # @!attribute [rw] nat_gateway_exclusion
83938
+ # Specifies whether to exclude NAT gateway traffic from encryption
83939
+ # enforcement.
83940
+ # @return [String]
83941
+ #
83942
+ # @!attribute [rw] virtual_private_gateway_exclusion
83943
+ # Specifies whether to exclude virtual private gateway traffic from
83944
+ # encryption enforcement.
83945
+ # @return [String]
83946
+ #
83947
+ # @!attribute [rw] vpc_peering_exclusion
83948
+ # Specifies whether to exclude VPC peering connection traffic from
83949
+ # encryption enforcement.
83950
+ # @return [String]
83951
+ #
83952
+ # @!attribute [rw] lambda_exclusion
83953
+ # Specifies whether to exclude Lambda function traffic from encryption
83954
+ # enforcement.
83955
+ # @return [String]
83956
+ #
83957
+ # @!attribute [rw] vpc_lattice_exclusion
83958
+ # Specifies whether to exclude VPC Lattice traffic from encryption
83959
+ # enforcement.
83960
+ # @return [String]
83961
+ #
83962
+ # @!attribute [rw] elastic_file_system_exclusion
83963
+ # Specifies whether to exclude Elastic File System traffic from
83964
+ # encryption enforcement.
83965
+ # @return [String]
83966
+ #
83967
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpcEncryptionControlConfiguration AWS API Documentation
83968
+ #
83969
+ class VpcEncryptionControlConfiguration < Struct.new(
83970
+ :mode,
83971
+ :internet_gateway_exclusion,
83972
+ :egress_only_internet_gateway_exclusion,
83973
+ :nat_gateway_exclusion,
83974
+ :virtual_private_gateway_exclusion,
83975
+ :vpc_peering_exclusion,
83976
+ :lambda_exclusion,
83977
+ :vpc_lattice_exclusion,
83978
+ :elastic_file_system_exclusion)
83979
+ SENSITIVE = []
83980
+ include Aws::Structure
83981
+ end
83982
+
83983
+ # Describes an exclusion configuration for VPC Encryption Control.
83984
+ #
83985
+ # For more information, see [Enforce VPC encryption in transit][1] in
83986
+ # the *Amazon VPC User Guide*.
83987
+ #
83988
+ #
83989
+ #
83990
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-encryption-controls.html
83991
+ #
82811
83992
  # @!attribute [rw] state
83993
+ # The current state of the exclusion configuration.
82812
83994
  # @return [String]
82813
83995
  #
82814
83996
  # @!attribute [rw] state_message
83997
+ # A message providing additional information about the exclusion
83998
+ # state.
82815
83999
  # @return [String]
82816
84000
  #
82817
84001
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpcEncryptionControlExclusion AWS API Documentation
@@ -82823,28 +84007,47 @@ module Aws::EC2
82823
84007
  include Aws::Structure
82824
84008
  end
82825
84009
 
84010
+ # Describes the exclusion configurations for various resource types in
84011
+ # VPC Encryption Control.
84012
+ #
84013
+ # For more information, see [Enforce VPC encryption in transit][1] in
84014
+ # the *Amazon VPC User Guide*.
84015
+ #
84016
+ #
84017
+ #
84018
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-encryption-controls.html
84019
+ #
82826
84020
  # @!attribute [rw] internet_gateway
84021
+ # The exclusion configuration for internet gateway traffic.
82827
84022
  # @return [Types::VpcEncryptionControlExclusion]
82828
84023
  #
82829
84024
  # @!attribute [rw] egress_only_internet_gateway
84025
+ # The exclusion configuration for egress-only internet gateway
84026
+ # traffic.
82830
84027
  # @return [Types::VpcEncryptionControlExclusion]
82831
84028
  #
82832
84029
  # @!attribute [rw] nat_gateway
84030
+ # The exclusion configuration for NAT gateway traffic.
82833
84031
  # @return [Types::VpcEncryptionControlExclusion]
82834
84032
  #
82835
84033
  # @!attribute [rw] virtual_private_gateway
84034
+ # The exclusion configuration for virtual private gateway traffic.
82836
84035
  # @return [Types::VpcEncryptionControlExclusion]
82837
84036
  #
82838
84037
  # @!attribute [rw] vpc_peering
84038
+ # The exclusion configuration for VPC peering connection traffic.
82839
84039
  # @return [Types::VpcEncryptionControlExclusion]
82840
84040
  #
82841
84041
  # @!attribute [rw] lambda
84042
+ # The exclusion configuration for Lambda function traffic.
82842
84043
  # @return [Types::VpcEncryptionControlExclusion]
82843
84044
  #
82844
84045
  # @!attribute [rw] vpc_lattice
84046
+ # The exclusion configuration for VPC Lattice traffic.
82845
84047
  # @return [Types::VpcEncryptionControlExclusion]
82846
84048
  #
82847
84049
  # @!attribute [rw] elastic_file_system
84050
+ # The exclusion configuration for Elastic File System traffic.
82848
84051
  # @return [Types::VpcEncryptionControlExclusion]
82849
84052
  #
82850
84053
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpcEncryptionControlExclusions AWS API Documentation
@@ -82862,6 +84065,44 @@ module Aws::EC2
82862
84065
  include Aws::Structure
82863
84066
  end
82864
84067
 
84068
+ # Describes a resource that is not compliant with VPC encryption
84069
+ # requirements.
84070
+ #
84071
+ # For more information, see [Enforce VPC encryption in transit][1] in
84072
+ # the *Amazon VPC User Guide*.
84073
+ #
84074
+ #
84075
+ #
84076
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-encryption-controls.html
84077
+ #
84078
+ # @!attribute [rw] id
84079
+ # The ID of the non-compliant resource.
84080
+ # @return [String]
84081
+ #
84082
+ # @!attribute [rw] type
84083
+ # The type of the non-compliant resource.
84084
+ # @return [String]
84085
+ #
84086
+ # @!attribute [rw] description
84087
+ # A description of the non-compliant resource.
84088
+ # @return [String]
84089
+ #
84090
+ # @!attribute [rw] is_excludable
84091
+ # Indicates whether the resource can be excluded from encryption
84092
+ # enforcement.
84093
+ # @return [Boolean]
84094
+ #
84095
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpcEncryptionNonCompliantResource AWS API Documentation
84096
+ #
84097
+ class VpcEncryptionNonCompliantResource < Struct.new(
84098
+ :id,
84099
+ :type,
84100
+ :description,
84101
+ :is_excludable)
84102
+ SENSITIVE = []
84103
+ include Aws::Structure
84104
+ end
84105
+
82865
84106
  # Describes a VPC endpoint.
82866
84107
  #
82867
84108
  # @!attribute [rw] vpc_endpoint_id