aws-sdk-ec2 1.490.0 → 1.492.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.
@@ -3711,6 +3711,54 @@ module Aws::EC2
3711
3711
  include Aws::Structure
3712
3712
  end
3713
3713
 
3714
+ # The baseline performance to consider, using an instance family as a
3715
+ # baseline reference. The instance family establishes the lowest
3716
+ # acceptable level of performance. Amazon EC2 uses this baseline to
3717
+ # guide instance type selection, but there is no guarantee that the
3718
+ # selected instance types will always exceed the baseline for every
3719
+ # application.
3720
+ #
3721
+ # Currently, this parameter only supports CPU performance as a baseline
3722
+ # performance factor. For example, specifying `c6i` would use the CPU
3723
+ # performance of the `c6i` family as the baseline reference.
3724
+ #
3725
+ # @!attribute [rw] cpu
3726
+ # The CPU performance to consider, using an instance family as the
3727
+ # baseline reference.
3728
+ # @return [Types::CpuPerformanceFactor]
3729
+ #
3730
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/BaselinePerformanceFactors AWS API Documentation
3731
+ #
3732
+ class BaselinePerformanceFactors < Struct.new(
3733
+ :cpu)
3734
+ SENSITIVE = []
3735
+ include Aws::Structure
3736
+ end
3737
+
3738
+ # The baseline performance to consider, using an instance family as a
3739
+ # baseline reference. The instance family establishes the lowest
3740
+ # acceptable level of performance. Amazon EC2 uses this baseline to
3741
+ # guide instance type selection, but there is no guarantee that the
3742
+ # selected instance types will always exceed the baseline for every
3743
+ # application.
3744
+ #
3745
+ # Currently, this parameter only supports CPU performance as a baseline
3746
+ # performance factor. For example, specifying `c6i` would use the CPU
3747
+ # performance of the `c6i` family as the baseline reference.
3748
+ #
3749
+ # @!attribute [rw] cpu
3750
+ # The CPU performance to consider, using an instance family as the
3751
+ # baseline reference.
3752
+ # @return [Types::CpuPerformanceFactorRequest]
3753
+ #
3754
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/BaselinePerformanceFactorsRequest AWS API Documentation
3755
+ #
3756
+ class BaselinePerformanceFactorsRequest < Struct.new(
3757
+ :cpu)
3758
+ SENSITIVE = []
3759
+ include Aws::Structure
3760
+ end
3761
+
3714
3762
  # @!attribute [rw] value
3715
3763
  # @return [String]
3716
3764
  #
@@ -3769,6 +3817,34 @@ module Aws::EC2
3769
3817
  include Aws::Structure
3770
3818
  end
3771
3819
 
3820
+ # The state of VPC Block Public Access (BPA).
3821
+ #
3822
+ # @!attribute [rw] internet_gateway_block_mode
3823
+ # The mode of VPC BPA.
3824
+ #
3825
+ # * `bidirectional-access-allowed`: VPC BPA is not enabled and traffic
3826
+ # is allowed to and from internet gateways and egress-only internet
3827
+ # gateways in this Region.
3828
+ #
3829
+ # * `bidirectional-access-blocked`: Block all traffic to and from
3830
+ # internet gateways and egress-only internet gateways in this Region
3831
+ # (except for excluded VPCs and subnets).
3832
+ #
3833
+ # * `ingress-access-blocked`: Block all internet traffic to the VPCs
3834
+ # in this Region (except for VPCs or subnets which are excluded).
3835
+ # Only traffic to and from NAT gateways and egress-only internet
3836
+ # gateways is allowed because these gateways only allow outbound
3837
+ # connections to be established.
3838
+ # @return [String]
3839
+ #
3840
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/BlockPublicAccessStates AWS API Documentation
3841
+ #
3842
+ class BlockPublicAccessStates < Struct.new(
3843
+ :internet_gateway_block_mode)
3844
+ SENSITIVE = []
3845
+ include Aws::Structure
3846
+ end
3847
+
3772
3848
  # Contains the parameters for BundleInstance.
3773
3849
  #
3774
3850
  # @!attribute [rw] instance_id
@@ -5082,29 +5158,34 @@ module Aws::EC2
5082
5158
  include Aws::Structure
5083
5159
  end
5084
5160
 
5085
- # Describes an instance's Capacity Reservation targeting option. You
5086
- # can specify only one parameter at a time. If you specify
5087
- # `CapacityReservationPreference` and `CapacityReservationTarget`, the
5088
- # request fails.
5161
+ # Describes an instance's Capacity Reservation targeting option.
5089
5162
  #
5090
5163
  # Use the `CapacityReservationPreference` parameter to configure the
5091
- # instance to run as an On-Demand Instance or to run in any `open`
5092
- # Capacity Reservation that has matching attributes (instance type,
5093
- # platform, Availability Zone). Use the `CapacityReservationTarget`
5094
- # parameter to explicitly target a specific Capacity Reservation or a
5095
- # Capacity Reservation group.
5164
+ # instance to run as an On-Demand Instance, to run in any `open`
5165
+ # Capacity Reservation that has matching attributes, or to run only in a
5166
+ # Capacity Reservation or Capacity Reservation group. Use the
5167
+ # `CapacityReservationTarget` parameter to explicitly target a specific
5168
+ # Capacity Reservation or a Capacity Reservation group.
5169
+ #
5170
+ # You can only specify `CapacityReservationPreference` and
5171
+ # `CapacityReservationTarget` if the `CapacityReservationPreference` is
5172
+ # `capacity-reservations-only`.
5096
5173
  #
5097
5174
  # @!attribute [rw] capacity_reservation_preference
5098
5175
  # Indicates the instance's Capacity Reservation preferences. Possible
5099
5176
  # preferences include:
5100
5177
  #
5178
+ # * `capacity-reservations-only` - The instance will only run in a
5179
+ # Capacity Reservation or Capacity Reservation group. If capacity
5180
+ # isn't available, the instance will fail to launch.
5181
+ #
5101
5182
  # * `open` - The instance can run in any `open` Capacity Reservation
5102
5183
  # that has matching attributes (instance type, platform,
5103
- # Availability Zone).
5184
+ # Availability Zone, and tenancy). If capacity isn't available, the
5185
+ # instance runs as an On-Demand Instance.
5104
5186
  #
5105
- # * `none` - The instance avoids running in a Capacity Reservation
5106
- # even if one is available. The instance runs as an On-Demand
5107
- # Instance.
5187
+ # * `none` - The instance doesn't run in a Capacity Reservation even
5188
+ # if one is available. The instance runs as an On-Demand Instance.
5108
5189
  # @return [String]
5109
5190
  #
5110
5191
  # @!attribute [rw] capacity_reservation_target
@@ -6911,6 +6992,52 @@ module Aws::EC2
6911
6992
  include Aws::Structure
6912
6993
  end
6913
6994
 
6995
+ # The CPU performance to consider, using an instance family as the
6996
+ # baseline reference.
6997
+ #
6998
+ # @!attribute [rw] references
6999
+ # Specify an instance family to use as the baseline reference for CPU
7000
+ # performance. All instance types that match your specified attributes
7001
+ # will be compared against the CPU performance of the referenced
7002
+ # instance family, regardless of CPU manufacturer or architecture
7003
+ # differences.
7004
+ #
7005
+ # <note markdown="1"> Currently, only one instance family can be specified in the list.
7006
+ #
7007
+ # </note>
7008
+ # @return [Array<Types::PerformanceFactorReference>]
7009
+ #
7010
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CpuPerformanceFactor AWS API Documentation
7011
+ #
7012
+ class CpuPerformanceFactor < Struct.new(
7013
+ :references)
7014
+ SENSITIVE = []
7015
+ include Aws::Structure
7016
+ end
7017
+
7018
+ # The CPU performance to consider, using an instance family as the
7019
+ # baseline reference.
7020
+ #
7021
+ # @!attribute [rw] references
7022
+ # Specify an instance family to use as the baseline reference for CPU
7023
+ # performance. All instance types that match your specified attributes
7024
+ # will be compared against the CPU performance of the referenced
7025
+ # instance family, regardless of CPU manufacturer or architecture
7026
+ # differences.
7027
+ #
7028
+ # <note markdown="1"> Currently, only one instance family can be specified in the list.
7029
+ #
7030
+ # </note>
7031
+ # @return [Array<Types::PerformanceFactorReferenceRequest>]
7032
+ #
7033
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CpuPerformanceFactorRequest AWS API Documentation
7034
+ #
7035
+ class CpuPerformanceFactorRequest < Struct.new(
7036
+ :references)
7037
+ SENSITIVE = []
7038
+ include Aws::Structure
7039
+ end
7040
+
6914
7041
  # @!attribute [rw] dry_run
6915
7042
  # Checks whether you have the required permissions for the action,
6916
7043
  # without actually making the request, and provides an error response.
@@ -13019,6 +13146,65 @@ module Aws::EC2
13019
13146
  include Aws::Structure
13020
13147
  end
13021
13148
 
13149
+ # @!attribute [rw] dry_run
13150
+ # Checks whether you have the required permissions for the action,
13151
+ # without actually making the request, and provides an error response.
13152
+ # If you have the required permissions, the error response is
13153
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
13154
+ # @return [Boolean]
13155
+ #
13156
+ # @!attribute [rw] subnet_id
13157
+ # A subnet ID.
13158
+ # @return [String]
13159
+ #
13160
+ # @!attribute [rw] vpc_id
13161
+ # A VPC ID.
13162
+ # @return [String]
13163
+ #
13164
+ # @!attribute [rw] internet_gateway_exclusion_mode
13165
+ # The exclusion mode for internet gateway traffic.
13166
+ #
13167
+ # * `bidirectional-access-allowed`: Allow all internet traffic to and
13168
+ # from the excluded VPCs and subnets.
13169
+ #
13170
+ # * `egress-access-allowed`: Allow outbound internet traffic from the
13171
+ # excluded VPCs and subnets. Block inbound internet traffic to the
13172
+ # excluded VPCs and subnets. Only applies when VPC Block Public
13173
+ # Access is set to Bidirectional.
13174
+ # @return [String]
13175
+ #
13176
+ # @!attribute [rw] tag_specifications
13177
+ # `tag` - The key/value combination of a tag assigned to the resource.
13178
+ # Use the tag key in the filter name and the tag value as the filter
13179
+ # value. For example, to find all resources that have a tag with the
13180
+ # key `Owner` and the value `TeamA`, specify `tag:Owner` for the
13181
+ # filter name and `TeamA` for the filter value.
13182
+ # @return [Array<Types::TagSpecification>]
13183
+ #
13184
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVpcBlockPublicAccessExclusionRequest AWS API Documentation
13185
+ #
13186
+ class CreateVpcBlockPublicAccessExclusionRequest < Struct.new(
13187
+ :dry_run,
13188
+ :subnet_id,
13189
+ :vpc_id,
13190
+ :internet_gateway_exclusion_mode,
13191
+ :tag_specifications)
13192
+ SENSITIVE = []
13193
+ include Aws::Structure
13194
+ end
13195
+
13196
+ # @!attribute [rw] vpc_block_public_access_exclusion
13197
+ # Details about an exclusion.
13198
+ # @return [Types::VpcBlockPublicAccessExclusion]
13199
+ #
13200
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVpcBlockPublicAccessExclusionResult AWS API Documentation
13201
+ #
13202
+ class CreateVpcBlockPublicAccessExclusionResult < Struct.new(
13203
+ :vpc_block_public_access_exclusion)
13204
+ SENSITIVE = []
13205
+ include Aws::Structure
13206
+ end
13207
+
13022
13208
  # @!attribute [rw] dry_run
13023
13209
  # Checks whether you have the required permissions for the action,
13024
13210
  # without actually making the request, and provides an error response.
@@ -16206,6 +16392,38 @@ module Aws::EC2
16206
16392
  include Aws::Structure
16207
16393
  end
16208
16394
 
16395
+ # @!attribute [rw] dry_run
16396
+ # Checks whether you have the required permissions for the action,
16397
+ # without actually making the request, and provides an error response.
16398
+ # If you have the required permissions, the error response is
16399
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
16400
+ # @return [Boolean]
16401
+ #
16402
+ # @!attribute [rw] exclusion_id
16403
+ # The ID of the exclusion.
16404
+ # @return [String]
16405
+ #
16406
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVpcBlockPublicAccessExclusionRequest AWS API Documentation
16407
+ #
16408
+ class DeleteVpcBlockPublicAccessExclusionRequest < Struct.new(
16409
+ :dry_run,
16410
+ :exclusion_id)
16411
+ SENSITIVE = []
16412
+ include Aws::Structure
16413
+ end
16414
+
16415
+ # @!attribute [rw] vpc_block_public_access_exclusion
16416
+ # Details about an exclusion.
16417
+ # @return [Types::VpcBlockPublicAccessExclusion]
16418
+ #
16419
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVpcBlockPublicAccessExclusionResult AWS API Documentation
16420
+ #
16421
+ class DeleteVpcBlockPublicAccessExclusionResult < Struct.new(
16422
+ :vpc_block_public_access_exclusion)
16423
+ SENSITIVE = []
16424
+ include Aws::Structure
16425
+ end
16426
+
16209
16427
  # @!attribute [rw] dry_run
16210
16428
  # Checks whether you have the required permissions for the action,
16211
16429
  # without actually making the request, and provides an error response.
@@ -17696,10 +17914,10 @@ module Aws::EC2
17696
17914
  #
17697
17915
  # * `instance-id` - The ID of the instance.
17698
17916
  #
17699
- # * `tag`:&lt;key&gt; - The key/value combination of a tag assigned to
17700
- # the resource. Use the tag key in the filter name and the tag value
17701
- # as the filter value. For example, to find all resources that have
17702
- # a tag with the key `Owner` and the value `TeamA`, specify
17917
+ # * `tag` - The key/value combination of a tag assigned to the
17918
+ # resource. Use the tag key in the filter name and the tag value as
17919
+ # the filter value. For example, to find all resources that have a
17920
+ # tag with the key `Owner` and the value `TeamA`, specify
17703
17921
  # `tag:Owner` for the filter name and `TeamA` for the filter value.
17704
17922
  #
17705
17923
  # * `tag-key` - The key of a tag assigned to the resource. Use this
@@ -18270,10 +18488,10 @@ module Aws::EC2
18270
18488
  # * `owner-id` - The ID of the Amazon Web Services account that owns
18271
18489
  # the DHCP options set.
18272
18490
  #
18273
- # * `tag`:&lt;key&gt; - The key/value combination of a tag assigned to
18274
- # the resource. Use the tag key in the filter name and the tag value
18275
- # as the filter value. For example, to find all resources that have
18276
- # a tag with the key `Owner` and the value `TeamA`, specify
18491
+ # * `tag` - The key/value combination of a tag assigned to the
18492
+ # resource. Use the tag key in the filter name and the tag value as
18493
+ # the filter value. For example, to find all resources that have a
18494
+ # tag with the key `Owner` and the value `TeamA`, specify
18277
18495
  # `tag:Owner` for the filter name and `TeamA` for the filter value.
18278
18496
  #
18279
18497
  # * `tag-key` - The key of a tag assigned to the resource. Use this
@@ -18341,10 +18559,10 @@ module Aws::EC2
18341
18559
  # @!attribute [rw] filters
18342
18560
  # The filters.
18343
18561
  #
18344
- # * `tag`:&lt;key&gt; - The key/value combination of a tag assigned to
18345
- # the resource. Use the tag key in the filter name and the tag value
18346
- # as the filter value. For example, to find all resources that have
18347
- # a tag with the key `Owner` and the value `TeamA`, specify
18562
+ # * `tag` - The key/value combination of a tag assigned to the
18563
+ # resource. Use the tag key in the filter name and the tag value as
18564
+ # the filter value. For example, to find all resources that have a
18565
+ # tag with the key `Owner` and the value `TeamA`, specify
18348
18566
  # `tag:Owner` for the filter name and `TeamA` for the filter value.
18349
18567
  #
18350
18568
  # * `tag-key` - The key of a tag assigned to the resource. Use this
@@ -21537,10 +21755,10 @@ module Aws::EC2
21537
21755
  # * `owner-id` - The ID of the Amazon Web Services account that owns
21538
21756
  # the internet gateway.
21539
21757
  #
21540
- # * `tag`:&lt;key&gt; - The key/value combination of a tag assigned to
21541
- # the resource. Use the tag key in the filter name and the tag value
21542
- # as the filter value. For example, to find all resources that have
21543
- # a tag with the key `Owner` and the value `TeamA`, specify
21758
+ # * `tag` - The key/value combination of a tag assigned to the
21759
+ # resource. Use the tag key in the filter name and the tag value as
21760
+ # the filter value. For example, to find all resources that have a
21761
+ # tag with the key `Owner` and the value `TeamA`, specify
21544
21762
  # `tag:Owner` for the filter name and `TeamA` for the filter value.
21545
21763
  #
21546
21764
  # * `tag-key` - The key of a tag assigned to the resource. Use this
@@ -23029,10 +23247,10 @@ module Aws::EC2
23029
23247
  # * `subnet-id` - The ID of the subnet in which the NAT gateway
23030
23248
  # resides.
23031
23249
  #
23032
- # * `tag`:&lt;key&gt; - The key/value combination of a tag assigned to
23033
- # the resource. Use the tag key in the filter name and the tag value
23034
- # as the filter value. For example, to find all resources that have
23035
- # a tag with the key `Owner` and the value `TeamA`, specify
23250
+ # * `tag` - The key/value combination of a tag assigned to the
23251
+ # resource. Use the tag key in the filter name and the tag value as
23252
+ # the filter value. For example, to find all resources that have a
23253
+ # tag with the key `Owner` and the value `TeamA`, specify
23036
23254
  # `tag:Owner` for the filter name and `TeamA` for the filter value.
23037
23255
  #
23038
23256
  # * `tag-key` - The key of a tag assigned to the resource. Use this
@@ -23165,10 +23383,10 @@ module Aws::EC2
23165
23383
  # * `owner-id` - The ID of the Amazon Web Services account that owns
23166
23384
  # the network ACL.
23167
23385
  #
23168
- # * `tag`:&lt;key&gt; - The key/value combination of a tag assigned to
23169
- # the resource. Use the tag key in the filter name and the tag value
23170
- # as the filter value. For example, to find all resources that have
23171
- # a tag with the key `Owner` and the value `TeamA`, specify
23386
+ # * `tag` - The key/value combination of a tag assigned to the
23387
+ # resource. Use the tag key in the filter name and the tag value as
23388
+ # the filter value. For example, to find all resources that have a
23389
+ # tag with the key `Owner` and the value `TeamA`, specify
23172
23390
  # `tag:Owner` for the filter name and `TeamA` for the filter value.
23173
23391
  #
23174
23392
  # * `tag-key` - The key of a tag assigned to the resource. Use this
@@ -24682,10 +24900,10 @@ module Aws::EC2
24682
24900
  # * `route.vpc-peering-connection-id` - The ID of a VPC peering
24683
24901
  # connection specified in a route in the table.
24684
24902
  #
24685
- # * `tag`:&lt;key&gt; - The key/value combination of a tag assigned to
24686
- # the resource. Use the tag key in the filter name and the tag value
24687
- # as the filter value. For example, to find all resources that have
24688
- # a tag with the key `Owner` and the value `TeamA`, specify
24903
+ # * `tag` - The key/value combination of a tag assigned to the
24904
+ # resource. Use the tag key in the filter name and the tag value as
24905
+ # the filter value. For example, to find all resources that have a
24906
+ # tag with the key `Owner` and the value `TeamA`, specify
24689
24907
  # `tag:Owner` for the filter name and `TeamA` for the filter value.
24690
24908
  #
24691
24909
  # * `tag-key` - The key of a tag assigned to the resource. Use this
@@ -26206,10 +26424,10 @@ module Aws::EC2
26206
26424
  #
26207
26425
  # * `subnet-id` - The ID of the subnet.
26208
26426
  #
26209
- # * `tag`:&lt;key&gt; - The key/value combination of a tag assigned to
26210
- # the resource. Use the tag key in the filter name and the tag value
26211
- # as the filter value. For example, to find all resources that have
26212
- # a tag with the key `Owner` and the value `TeamA`, specify
26427
+ # * `tag` - The key/value combination of a tag assigned to the
26428
+ # resource. Use the tag key in the filter name and the tag value as
26429
+ # the filter value. For example, to find all resources that have a
26430
+ # tag with the key `Owner` and the value `TeamA`, specify
26213
26431
  # `tag:Owner` for the filter name and `TeamA` for the filter value.
26214
26432
  #
26215
26433
  # * `tag-key` - The key of a tag assigned to the resource. Use this
@@ -28092,6 +28310,119 @@ module Aws::EC2
28092
28310
  include Aws::Structure
28093
28311
  end
28094
28312
 
28313
+ # @!attribute [rw] dry_run
28314
+ # Checks whether you have the required permissions for the action,
28315
+ # without actually making the request, and provides an error response.
28316
+ # If you have the required permissions, the error response is
28317
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
28318
+ # @return [Boolean]
28319
+ #
28320
+ # @!attribute [rw] filters
28321
+ # Filters for the request:
28322
+ #
28323
+ # * `resource-arn` - The Amazon Resource Name (ARN) of a exclusion.
28324
+ #
28325
+ # * `internet-gateway-exclusion-mode` - The mode of a VPC BPA
28326
+ # exclusion. Possible values: `bidirectional-access-allowed |
28327
+ # egress-access-allowed`.
28328
+ #
28329
+ # * `state` - The state of VPC BPA. Possible values:
28330
+ # `create-in-progress | create-complete | update-in-progress |
28331
+ # update-complete | delete-in-progress | deleted-complete |
28332
+ # disable-in-progress | disable-complete`
28333
+ #
28334
+ # * `tag` - The key/value combination of a tag assigned to the
28335
+ # resource. Use the tag key in the filter name and the tag value as
28336
+ # the filter value. For example, to find all resources that have a
28337
+ # tag with the key `Owner` and the value `TeamA`, specify
28338
+ # `tag:Owner` for the filter name and `TeamA` for the filter value.
28339
+ #
28340
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
28341
+ # filter to find all resources assigned a tag with a specific key,
28342
+ # regardless of the tag value.
28343
+ #
28344
+ # * `tag-value`: The value of a tag assigned to the resource. Use this
28345
+ # filter to find all resources assigned a tag with a specific value,
28346
+ # regardless of the tag key.
28347
+ # @return [Array<Types::Filter>]
28348
+ #
28349
+ # @!attribute [rw] exclusion_ids
28350
+ # IDs of exclusions.
28351
+ # @return [Array<String>]
28352
+ #
28353
+ # @!attribute [rw] next_token
28354
+ # The token returned from a previous paginated request. Pagination
28355
+ # continues from the end of the items returned by the previous
28356
+ # request.
28357
+ # @return [String]
28358
+ #
28359
+ # @!attribute [rw] max_results
28360
+ # The maximum number of items to return for this request. To get the
28361
+ # next page of items, make another request with the token returned in
28362
+ # the output. For more information, see [Pagination][1].
28363
+ #
28364
+ #
28365
+ #
28366
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination
28367
+ # @return [Integer]
28368
+ #
28369
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcBlockPublicAccessExclusionsRequest AWS API Documentation
28370
+ #
28371
+ class DescribeVpcBlockPublicAccessExclusionsRequest < Struct.new(
28372
+ :dry_run,
28373
+ :filters,
28374
+ :exclusion_ids,
28375
+ :next_token,
28376
+ :max_results)
28377
+ SENSITIVE = []
28378
+ include Aws::Structure
28379
+ end
28380
+
28381
+ # @!attribute [rw] vpc_block_public_access_exclusions
28382
+ # Details related to the exclusions.
28383
+ # @return [Array<Types::VpcBlockPublicAccessExclusion>]
28384
+ #
28385
+ # @!attribute [rw] next_token
28386
+ # The token to include in another request to get the next page of
28387
+ # items. This value is `null` when there are no more items to return.
28388
+ # @return [String]
28389
+ #
28390
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcBlockPublicAccessExclusionsResult AWS API Documentation
28391
+ #
28392
+ class DescribeVpcBlockPublicAccessExclusionsResult < Struct.new(
28393
+ :vpc_block_public_access_exclusions,
28394
+ :next_token)
28395
+ SENSITIVE = []
28396
+ include Aws::Structure
28397
+ end
28398
+
28399
+ # @!attribute [rw] dry_run
28400
+ # Checks whether you have the required permissions for the action,
28401
+ # without actually making the request, and provides an error response.
28402
+ # If you have the required permissions, the error response is
28403
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
28404
+ # @return [Boolean]
28405
+ #
28406
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcBlockPublicAccessOptionsRequest AWS API Documentation
28407
+ #
28408
+ class DescribeVpcBlockPublicAccessOptionsRequest < Struct.new(
28409
+ :dry_run)
28410
+ SENSITIVE = []
28411
+ include Aws::Structure
28412
+ end
28413
+
28414
+ # @!attribute [rw] vpc_block_public_access_options
28415
+ # Details related to the options.
28416
+ # @return [Types::VpcBlockPublicAccessOptions]
28417
+ #
28418
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcBlockPublicAccessOptionsResult AWS API Documentation
28419
+ #
28420
+ class DescribeVpcBlockPublicAccessOptionsResult < Struct.new(
28421
+ :vpc_block_public_access_options)
28422
+ SENSITIVE = []
28423
+ include Aws::Structure
28424
+ end
28425
+
28095
28426
  # @!attribute [rw] vpc_ids
28096
28427
  # The IDs of the VPCs.
28097
28428
  # @return [Array<String>]
@@ -28157,10 +28488,10 @@ module Aws::EC2
28157
28488
  # * `is-classic-link-enabled` - Whether the VPC is enabled for
28158
28489
  # ClassicLink (`true` \| `false`).
28159
28490
  #
28160
- # * `tag`:&lt;key&gt; - The key/value combination of a tag assigned to
28161
- # the resource. Use the tag key in the filter name and the tag value
28162
- # as the filter value. For example, to find all resources that have
28163
- # a tag with the key `Owner` and the value `TeamA`, specify
28491
+ # * `tag` - The key/value combination of a tag assigned to the
28492
+ # resource. Use the tag key in the filter name and the tag value as
28493
+ # the filter value. For example, to find all resources that have a
28494
+ # tag with the key `Owner` and the value `TeamA`, specify
28164
28495
  # `tag:Owner` for the filter name and `TeamA` for the filter value.
28165
28496
  #
28166
28497
  # * `tag-key` - The key of a tag assigned to the resource. Use this
@@ -28691,10 +29022,10 @@ module Aws::EC2
28691
29022
  # * `status-message` - A message that provides more information about
28692
29023
  # the status of the VPC peering connection, if applicable.
28693
29024
  #
28694
- # * `tag`:&lt;key&gt; - The key/value combination of a tag assigned to
28695
- # the resource. Use the tag key in the filter name and the tag value
28696
- # as the filter value. For example, to find all resources that have
28697
- # a tag with the key `Owner` and the value `TeamA`, specify
29025
+ # * `tag` - The key/value combination of a tag assigned to the
29026
+ # resource. Use the tag key in the filter name and the tag value as
29027
+ # the filter value. For example, to find all resources that have a
29028
+ # tag with the key `Owner` and the value `TeamA`, specify
28698
29029
  # `tag:Owner` for the filter name and `TeamA` for the filter value.
28699
29030
  #
28700
29031
  # * `tag-key` - The key of a tag assigned to the resource. Use this
@@ -28773,10 +29104,10 @@ module Aws::EC2
28773
29104
  #
28774
29105
  # * `state` - The state of the VPC (`pending` \| `available`).
28775
29106
  #
28776
- # * `tag`:&lt;key&gt; - The key/value combination of a tag assigned to
28777
- # the resource. Use the tag key in the filter name and the tag value
28778
- # as the filter value. For example, to find all resources that have
28779
- # a tag with the key `Owner` and the value `TeamA`, specify
29107
+ # * `tag` - The key/value combination of a tag assigned to the
29108
+ # resource. Use the tag key in the filter name and the tag value as
29109
+ # the filter value. For example, to find all resources that have a
29110
+ # tag with the key `Owner` and the value `TeamA`, specify
28780
29111
  # `tag:Owner` for the filter name and `TeamA` for the filter value.
28781
29112
  #
28782
29113
  # * `tag-key` - The key of a tag assigned to the resource. Use this
@@ -42083,6 +42414,21 @@ module Aws::EC2
42083
42414
  # </note>
42084
42415
  # @return [Integer]
42085
42416
  #
42417
+ # @!attribute [rw] baseline_performance_factors
42418
+ # The baseline performance to consider, using an instance family as a
42419
+ # baseline reference. The instance family establishes the lowest
42420
+ # acceptable level of performance. Amazon EC2 uses this baseline to
42421
+ # guide instance type selection, but there is no guarantee that the
42422
+ # selected instance types will always exceed the baseline for every
42423
+ # application. Currently, this parameter only supports CPU performance
42424
+ # as a baseline performance factor. For more information, see
42425
+ # [Performance protection][1] in the *Amazon EC2 User Guide*.
42426
+ #
42427
+ #
42428
+ #
42429
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html#ec2fleet-abis-performance-protection
42430
+ # @return [Types::BaselinePerformanceFactors]
42431
+ #
42086
42432
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceRequirements AWS API Documentation
42087
42433
  #
42088
42434
  class InstanceRequirements < Struct.new(
@@ -42109,7 +42455,8 @@ module Aws::EC2
42109
42455
  :accelerator_total_memory_mi_b,
42110
42456
  :network_bandwidth_gbps,
42111
42457
  :allowed_instance_types,
42112
- :max_spot_price_as_percentage_of_optimal_on_demand_price)
42458
+ :max_spot_price_as_percentage_of_optimal_on_demand_price,
42459
+ :baseline_performance_factors)
42113
42460
  SENSITIVE = []
42114
42461
  include Aws::Structure
42115
42462
  end
@@ -42553,6 +42900,21 @@ module Aws::EC2
42553
42900
  # </note>
42554
42901
  # @return [Integer]
42555
42902
  #
42903
+ # @!attribute [rw] baseline_performance_factors
42904
+ # The baseline performance to consider, using an instance family as a
42905
+ # baseline reference. The instance family establishes the lowest
42906
+ # acceptable level of performance. Amazon EC2 uses this baseline to
42907
+ # guide instance type selection, but there is no guarantee that the
42908
+ # selected instance types will always exceed the baseline for every
42909
+ # application. Currently, this parameter only supports CPU performance
42910
+ # as a baseline performance factor. For more information, see
42911
+ # [Performance protection][1] in the *Amazon EC2 User Guide*.
42912
+ #
42913
+ #
42914
+ #
42915
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html#ec2fleet-abis-performance-protection
42916
+ # @return [Types::BaselinePerformanceFactorsRequest]
42917
+ #
42556
42918
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceRequirementsRequest AWS API Documentation
42557
42919
  #
42558
42920
  class InstanceRequirementsRequest < Struct.new(
@@ -42579,7 +42941,8 @@ module Aws::EC2
42579
42941
  :accelerator_total_memory_mi_b,
42580
42942
  :network_bandwidth_gbps,
42581
42943
  :allowed_instance_types,
42582
- :max_spot_price_as_percentage_of_optimal_on_demand_price)
42944
+ :max_spot_price_as_percentage_of_optimal_on_demand_price,
42945
+ :baseline_performance_factors)
42583
42946
  SENSITIVE = []
42584
42947
  include Aws::Structure
42585
42948
  end
@@ -52008,6 +52371,97 @@ module Aws::EC2
52008
52371
  include Aws::Structure
52009
52372
  end
52010
52373
 
52374
+ # @!attribute [rw] dry_run
52375
+ # Checks whether you have the required permissions for the action,
52376
+ # without actually making the request, and provides an error response.
52377
+ # If you have the required permissions, the error response is
52378
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
52379
+ # @return [Boolean]
52380
+ #
52381
+ # @!attribute [rw] exclusion_id
52382
+ # The ID of an exclusion.
52383
+ # @return [String]
52384
+ #
52385
+ # @!attribute [rw] internet_gateway_exclusion_mode
52386
+ # The exclusion mode for internet gateway traffic.
52387
+ #
52388
+ # * `bidirectional-access-allowed`: Allow all internet traffic to and
52389
+ # from the excluded VPCs and subnets.
52390
+ #
52391
+ # * `egress-access-allowed`: Allow outbound internet traffic from the
52392
+ # excluded VPCs and subnets. Block inbound internet traffic to the
52393
+ # excluded VPCs and subnets. Only applies when VPC Block Public
52394
+ # Access is set to Bidirectional.
52395
+ # @return [String]
52396
+ #
52397
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcBlockPublicAccessExclusionRequest AWS API Documentation
52398
+ #
52399
+ class ModifyVpcBlockPublicAccessExclusionRequest < Struct.new(
52400
+ :dry_run,
52401
+ :exclusion_id,
52402
+ :internet_gateway_exclusion_mode)
52403
+ SENSITIVE = []
52404
+ include Aws::Structure
52405
+ end
52406
+
52407
+ # @!attribute [rw] vpc_block_public_access_exclusion
52408
+ # Details related to the exclusion.
52409
+ # @return [Types::VpcBlockPublicAccessExclusion]
52410
+ #
52411
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcBlockPublicAccessExclusionResult AWS API Documentation
52412
+ #
52413
+ class ModifyVpcBlockPublicAccessExclusionResult < Struct.new(
52414
+ :vpc_block_public_access_exclusion)
52415
+ SENSITIVE = []
52416
+ include Aws::Structure
52417
+ end
52418
+
52419
+ # @!attribute [rw] dry_run
52420
+ # Checks whether you have the required permissions for the action,
52421
+ # without actually making the request, and provides an error response.
52422
+ # If you have the required permissions, the error response is
52423
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
52424
+ # @return [Boolean]
52425
+ #
52426
+ # @!attribute [rw] internet_gateway_block_mode
52427
+ # The mode of VPC BPA.
52428
+ #
52429
+ # * `bidirectional-access-allowed`: VPC BPA is not enabled and traffic
52430
+ # is allowed to and from internet gateways and egress-only internet
52431
+ # gateways in this Region.
52432
+ #
52433
+ # * `bidirectional-access-blocked`: Block all traffic to and from
52434
+ # internet gateways and egress-only internet gateways in this Region
52435
+ # (except for excluded VPCs and subnets).
52436
+ #
52437
+ # * `ingress-access-blocked`: Block all internet traffic to the VPCs
52438
+ # in this Region (except for VPCs or subnets which are excluded).
52439
+ # Only traffic to and from NAT gateways and egress-only internet
52440
+ # gateways is allowed because these gateways only allow outbound
52441
+ # connections to be established.
52442
+ # @return [String]
52443
+ #
52444
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcBlockPublicAccessOptionsRequest AWS API Documentation
52445
+ #
52446
+ class ModifyVpcBlockPublicAccessOptionsRequest < Struct.new(
52447
+ :dry_run,
52448
+ :internet_gateway_block_mode)
52449
+ SENSITIVE = []
52450
+ include Aws::Structure
52451
+ end
52452
+
52453
+ # @!attribute [rw] vpc_block_public_access_options
52454
+ # Details related to the VPC Block Public Access (BPA) options.
52455
+ # @return [Types::VpcBlockPublicAccessOptions]
52456
+ #
52457
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcBlockPublicAccessOptionsResult AWS API Documentation
52458
+ #
52459
+ class ModifyVpcBlockPublicAccessOptionsResult < Struct.new(
52460
+ :vpc_block_public_access_options)
52461
+ SENSITIVE = []
52462
+ include Aws::Structure
52463
+ end
52464
+
52011
52465
  # @!attribute [rw] dry_run
52012
52466
  # Checks whether you have the required permissions for the action,
52013
52467
  # without actually making the request, and provides an error response.
@@ -55044,6 +55498,132 @@ module Aws::EC2
55044
55498
  include Aws::Structure
55045
55499
  end
55046
55500
 
55501
+ # Specify an instance family to use as the baseline reference for CPU
55502
+ # performance. All instance types that match your specified attributes
55503
+ # will be compared against the CPU performance of the referenced
55504
+ # instance family, regardless of CPU manufacturer or architecture.
55505
+ #
55506
+ # <note markdown="1"> Currently, only one instance family can be specified in the list.
55507
+ #
55508
+ # </note>
55509
+ #
55510
+ # @!attribute [rw] instance_family
55511
+ # The instance family to use as a baseline reference.
55512
+ #
55513
+ # <note markdown="1"> Ensure that you specify the correct value for the instance family.
55514
+ # The instance family is everything before the period (`.`) in the
55515
+ # instance type name. For example, in the instance type `c6i.large`,
55516
+ # the instance family is `c6i`, not `c6`. For more information, see
55517
+ # [Amazon EC2 instance type naming conventions][1] in *Amazon EC2
55518
+ # Instance Types*.
55519
+ #
55520
+ # </note>
55521
+ #
55522
+ # The following instance families are *not supported* for performance
55523
+ # protection:
55524
+ #
55525
+ # * `c1`
55526
+ #
55527
+ # * `g3` \| `g3s`
55528
+ #
55529
+ # * `hpc7g`
55530
+ #
55531
+ # * `m1` \| `m2`
55532
+ #
55533
+ # * `mac1` \| `mac2` \| `mac2-m1ultra` \| `mac2-m2` \| `mac2-m2pro`
55534
+ #
55535
+ # * `p3dn` \| `p4d` \| `p5`
55536
+ #
55537
+ # * `t1`
55538
+ #
55539
+ # * `u-12tb1` \| `u-18tb1` \| `u-24tb1` \| `u-3tb1` \| `u-6tb1` \|
55540
+ # `u-9tb1` \| `u7i-12tb` \| `u7in-16tb` \| `u7in-24tb` \|
55541
+ # `u7in-32tb`
55542
+ #
55543
+ # If you enable performance protection by specifying a supported
55544
+ # instance family, the returned instance types will exclude the above
55545
+ # unsupported instance families.
55546
+ #
55547
+ # If you specify an unsupported instance family as a value for
55548
+ # baseline performance, the API returns an empty response for and an
55549
+ # exception for , , , and .
55550
+ #
55551
+ #
55552
+ #
55553
+ # [1]: https://docs.aws.amazon.com/ec2/latest/instancetypes/instance-type-names.html
55554
+ # @return [String]
55555
+ #
55556
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PerformanceFactorReference AWS API Documentation
55557
+ #
55558
+ class PerformanceFactorReference < Struct.new(
55559
+ :instance_family)
55560
+ SENSITIVE = []
55561
+ include Aws::Structure
55562
+ end
55563
+
55564
+ # Specify an instance family to use as the baseline reference for CPU
55565
+ # performance. All instance types that match your specified attributes
55566
+ # will be compared against the CPU performance of the referenced
55567
+ # instance family, regardless of CPU manufacturer or architecture.
55568
+ #
55569
+ # <note markdown="1"> Currently, only one instance family can be specified in the list.
55570
+ #
55571
+ # </note>
55572
+ #
55573
+ # @!attribute [rw] instance_family
55574
+ # The instance family to use as a baseline reference.
55575
+ #
55576
+ # <note markdown="1"> Ensure that you specify the correct value for the instance family.
55577
+ # The instance family is everything before the period (`.`) in the
55578
+ # instance type name. For example, in the instance type `c6i.large`,
55579
+ # the instance family is `c6i`, not `c6`. For more information, see
55580
+ # [Amazon EC2 instance type naming conventions][1] in *Amazon EC2
55581
+ # Instance Types*.
55582
+ #
55583
+ # </note>
55584
+ #
55585
+ # The following instance families are *not supported* for performance
55586
+ # protection:
55587
+ #
55588
+ # * `c1`
55589
+ #
55590
+ # * `g3` \| `g3s`
55591
+ #
55592
+ # * `hpc7g`
55593
+ #
55594
+ # * `m1` \| `m2`
55595
+ #
55596
+ # * `mac1` \| `mac2` \| `mac2-m1ultra` \| `mac2-m2` \| `mac2-m2pro`
55597
+ #
55598
+ # * `p3dn` \| `p4d` \| `p5`
55599
+ #
55600
+ # * `t1`
55601
+ #
55602
+ # * `u-12tb1` \| `u-18tb1` \| `u-24tb1` \| `u-3tb1` \| `u-6tb1` \|
55603
+ # `u-9tb1` \| `u7i-12tb` \| `u7in-16tb` \| `u7in-24tb` \|
55604
+ # `u7in-32tb`
55605
+ #
55606
+ # If you enable performance protection by specifying a supported
55607
+ # instance family, the returned instance types will exclude the above
55608
+ # unsupported instance families.
55609
+ #
55610
+ # If you specify an unsupported instance family as a value for
55611
+ # baseline performance, the API returns an empty response for and an
55612
+ # exception for , , , and .
55613
+ #
55614
+ #
55615
+ #
55616
+ # [1]: https://docs.aws.amazon.com/ec2/latest/instancetypes/instance-type-names.html
55617
+ # @return [String]
55618
+ #
55619
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PerformanceFactorReferenceRequest AWS API Documentation
55620
+ #
55621
+ class PerformanceFactorReferenceRequest < Struct.new(
55622
+ :instance_family)
55623
+ SENSITIVE = []
55624
+ include Aws::Structure
55625
+ end
55626
+
55047
55627
  # The Diffie-Hellmann group number for phase 1 IKE negotiations.
55048
55628
  #
55049
55629
  # @!attribute [rw] value
@@ -60893,7 +61473,7 @@ module Aws::EC2
60893
61473
  # do not specify this parameter, the instance's Capacity Reservation
60894
61474
  # preference defaults to `open`, which enables it to run in any open
60895
61475
  # Capacity Reservation that has matching attributes (instance type,
60896
- # platform, Availability Zone).
61476
+ # platform, Availability Zone, and tenancy).
60897
61477
  # @return [Types::CapacityReservationSpecification]
60898
61478
  #
60899
61479
  # @!attribute [rw] hibernation_options
@@ -65147,6 +65727,10 @@ module Aws::EC2
65147
65727
  # the instance.
65148
65728
  # @return [Types::PrivateDnsNameOptionsOnLaunch]
65149
65729
  #
65730
+ # @!attribute [rw] block_public_access_states
65731
+ # The state of VPC Block Public Access (BPA).
65732
+ # @return [Types::BlockPublicAccessStates]
65733
+ #
65150
65734
  # @!attribute [rw] subnet_id
65151
65735
  # The ID of the subnet.
65152
65736
  # @return [String]
@@ -65207,6 +65791,7 @@ module Aws::EC2
65207
65791
  :enable_dns_64,
65208
65792
  :ipv_6_native,
65209
65793
  :private_dns_name_options_on_launch,
65794
+ :block_public_access_states,
65210
65795
  :subnet_id,
65211
65796
  :state,
65212
65797
  :vpc_id,
@@ -69779,6 +70364,10 @@ module Aws::EC2
69779
70364
  # Any tags assigned to the VPC.
69780
70365
  # @return [Array<Types::Tag>]
69781
70366
  #
70367
+ # @!attribute [rw] block_public_access_states
70368
+ # The state of VPC Block Public Access (BPA).
70369
+ # @return [Types::BlockPublicAccessStates]
70370
+ #
69782
70371
  # @!attribute [rw] vpc_id
69783
70372
  # The ID of the VPC.
69784
70373
  # @return [String]
@@ -69804,6 +70393,7 @@ module Aws::EC2
69804
70393
  :cidr_block_association_set,
69805
70394
  :is_default,
69806
70395
  :tags,
70396
+ :block_public_access_states,
69807
70397
  :vpc_id,
69808
70398
  :state,
69809
70399
  :cidr_block,
@@ -69831,6 +70421,143 @@ module Aws::EC2
69831
70421
  include Aws::Structure
69832
70422
  end
69833
70423
 
70424
+ # A VPC BPA exclusion is a mode that can be applied to a single VPC or
70425
+ # subnet that exempts it from the account’s BPA mode and will allow
70426
+ # bidirectional or egress-only access. You can create BPA exclusions for
70427
+ # VPCs and subnets even when BPA is not enabled on the account to ensure
70428
+ # that there is no traffic disruption to the exclusions when VPC BPA is
70429
+ # turned on. To learn more about VPC BPA, see [Block public access to
70430
+ # VPCs and subnets][1] in the *Amazon VPC User Guide*.
70431
+ #
70432
+ #
70433
+ #
70434
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/security-vpc-bpa.html
70435
+ #
70436
+ # @!attribute [rw] exclusion_id
70437
+ # The ID of the exclusion.
70438
+ # @return [String]
70439
+ #
70440
+ # @!attribute [rw] internet_gateway_exclusion_mode
70441
+ # The exclusion mode for internet gateway traffic.
70442
+ #
70443
+ # * `bidirectional-access-allowed`: Allow all internet traffic to and
70444
+ # from the excluded VPCs and subnets.
70445
+ #
70446
+ # * `egress-access-allowed`: Allow outbound internet traffic from the
70447
+ # excluded VPCs and subnets. Block inbound internet traffic to the
70448
+ # excluded VPCs and subnets. Only applies when VPC Block Public
70449
+ # Access is set to Bidirectional.
70450
+ # @return [String]
70451
+ #
70452
+ # @!attribute [rw] resource_arn
70453
+ # The ARN of the exclusion.
70454
+ # @return [String]
70455
+ #
70456
+ # @!attribute [rw] state
70457
+ # The state of the exclusion.
70458
+ # @return [String]
70459
+ #
70460
+ # @!attribute [rw] reason
70461
+ # The reason for the current exclusion state.
70462
+ # @return [String]
70463
+ #
70464
+ # @!attribute [rw] creation_timestamp
70465
+ # When the exclusion was created.
70466
+ # @return [Time]
70467
+ #
70468
+ # @!attribute [rw] last_update_timestamp
70469
+ # When the exclusion was last updated.
70470
+ # @return [Time]
70471
+ #
70472
+ # @!attribute [rw] deletion_timestamp
70473
+ # When the exclusion was deleted.
70474
+ # @return [Time]
70475
+ #
70476
+ # @!attribute [rw] tags
70477
+ # `tag` - The key/value combination of a tag assigned to the resource.
70478
+ # Use the tag key in the filter name and the tag value as the filter
70479
+ # value. For example, to find all resources that have a tag with the
70480
+ # key `Owner` and the value `TeamA`, specify `tag:Owner` for the
70481
+ # filter name and `TeamA` for the filter value.
70482
+ # @return [Array<Types::Tag>]
70483
+ #
70484
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpcBlockPublicAccessExclusion AWS API Documentation
70485
+ #
70486
+ class VpcBlockPublicAccessExclusion < Struct.new(
70487
+ :exclusion_id,
70488
+ :internet_gateway_exclusion_mode,
70489
+ :resource_arn,
70490
+ :state,
70491
+ :reason,
70492
+ :creation_timestamp,
70493
+ :last_update_timestamp,
70494
+ :deletion_timestamp,
70495
+ :tags)
70496
+ SENSITIVE = []
70497
+ include Aws::Structure
70498
+ end
70499
+
70500
+ # VPC Block public Access (BPA) enables you to block resources in VPCs
70501
+ # and subnets that you own in a Region from reaching or being reached
70502
+ # from the internet through internet gateways and egress-only internet
70503
+ # gateways. To learn more about VPC BPA, see [Block public access to
70504
+ # VPCs and subnets][1] in the *Amazon VPC User Guide*.
70505
+ #
70506
+ #
70507
+ #
70508
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/security-vpc-bpa.html
70509
+ #
70510
+ # @!attribute [rw] aws_account_id
70511
+ # An Amazon Web Services account ID.
70512
+ # @return [String]
70513
+ #
70514
+ # @!attribute [rw] aws_region
70515
+ # An Amazon Web Services Region.
70516
+ # @return [String]
70517
+ #
70518
+ # @!attribute [rw] state
70519
+ # The current state of VPC BPA.
70520
+ # @return [String]
70521
+ #
70522
+ # @!attribute [rw] internet_gateway_block_mode
70523
+ # The current mode of VPC BPA.
70524
+ #
70525
+ # * `bidirectional-access-allowed`: VPC BPA is not enabled and traffic
70526
+ # is allowed to and from internet gateways and egress-only internet
70527
+ # gateways in this Region.
70528
+ #
70529
+ # * `bidirectional-access-blocked`: Block all traffic to and from
70530
+ # internet gateways and egress-only internet gateways in this Region
70531
+ # (except for excluded VPCs and subnets).
70532
+ #
70533
+ # * `ingress-access-blocked`: Block all internet traffic to the VPCs
70534
+ # in this Region (except for VPCs or subnets which are excluded).
70535
+ # Only traffic to and from NAT gateways and egress-only internet
70536
+ # gateways is allowed because these gateways only allow outbound
70537
+ # connections to be established.
70538
+ # @return [String]
70539
+ #
70540
+ # @!attribute [rw] reason
70541
+ # The reason for the current state.
70542
+ # @return [String]
70543
+ #
70544
+ # @!attribute [rw] last_update_timestamp
70545
+ # The last time the VPC BPA mode was updated.
70546
+ # @return [Time]
70547
+ #
70548
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpcBlockPublicAccessOptions AWS API Documentation
70549
+ #
70550
+ class VpcBlockPublicAccessOptions < Struct.new(
70551
+ :aws_account_id,
70552
+ :aws_region,
70553
+ :state,
70554
+ :internet_gateway_block_mode,
70555
+ :reason,
70556
+ :last_update_timestamp)
70557
+ SENSITIVE = []
70558
+ include Aws::Structure
70559
+ end
70560
+
69834
70561
  # Describes an IPv4 CIDR block associated with a VPC.
69835
70562
  #
69836
70563
  # @!attribute [rw] association_id