aws-sdk-ec2 1.490.0 → 1.491.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -3769,6 +3769,34 @@ module Aws::EC2
3769
3769
  include Aws::Structure
3770
3770
  end
3771
3771
 
3772
+ # The state of VPC Block Public Access (BPA).
3773
+ #
3774
+ # @!attribute [rw] internet_gateway_block_mode
3775
+ # The mode of VPC BPA.
3776
+ #
3777
+ # * `bidirectional-access-allowed`: VPC BPA is not enabled and traffic
3778
+ # is allowed to and from internet gateways and egress-only internet
3779
+ # gateways in this Region.
3780
+ #
3781
+ # * `bidirectional-access-blocked`: Block all traffic to and from
3782
+ # internet gateways and egress-only internet gateways in this Region
3783
+ # (except for excluded VPCs and subnets).
3784
+ #
3785
+ # * `ingress-access-blocked`: Block all internet traffic to the VPCs
3786
+ # in this Region (except for VPCs or subnets which are excluded).
3787
+ # Only traffic to and from NAT gateways and egress-only internet
3788
+ # gateways is allowed because these gateways only allow outbound
3789
+ # connections to be established.
3790
+ # @return [String]
3791
+ #
3792
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/BlockPublicAccessStates AWS API Documentation
3793
+ #
3794
+ class BlockPublicAccessStates < Struct.new(
3795
+ :internet_gateway_block_mode)
3796
+ SENSITIVE = []
3797
+ include Aws::Structure
3798
+ end
3799
+
3772
3800
  # Contains the parameters for BundleInstance.
3773
3801
  #
3774
3802
  # @!attribute [rw] instance_id
@@ -13019,6 +13047,65 @@ module Aws::EC2
13019
13047
  include Aws::Structure
13020
13048
  end
13021
13049
 
13050
+ # @!attribute [rw] dry_run
13051
+ # Checks whether you have the required permissions for the action,
13052
+ # without actually making the request, and provides an error response.
13053
+ # If you have the required permissions, the error response is
13054
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
13055
+ # @return [Boolean]
13056
+ #
13057
+ # @!attribute [rw] subnet_id
13058
+ # A subnet ID.
13059
+ # @return [String]
13060
+ #
13061
+ # @!attribute [rw] vpc_id
13062
+ # A VPC ID.
13063
+ # @return [String]
13064
+ #
13065
+ # @!attribute [rw] internet_gateway_exclusion_mode
13066
+ # The exclusion mode for internet gateway traffic.
13067
+ #
13068
+ # * `bidirectional-access-allowed`: Allow all internet traffic to and
13069
+ # from the excluded VPCs and subnets.
13070
+ #
13071
+ # * `egress-access-allowed`: Allow outbound internet traffic from the
13072
+ # excluded VPCs and subnets. Block inbound internet traffic to the
13073
+ # excluded VPCs and subnets. Only applies when VPC Block Public
13074
+ # Access is set to Bidirectional.
13075
+ # @return [String]
13076
+ #
13077
+ # @!attribute [rw] tag_specifications
13078
+ # `tag` - The key/value combination of a tag assigned to the resource.
13079
+ # Use the tag key in the filter name and the tag value as the filter
13080
+ # value. For example, to find all resources that have a tag with the
13081
+ # key `Owner` and the value `TeamA`, specify `tag:Owner` for the
13082
+ # filter name and `TeamA` for the filter value.
13083
+ # @return [Array<Types::TagSpecification>]
13084
+ #
13085
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVpcBlockPublicAccessExclusionRequest AWS API Documentation
13086
+ #
13087
+ class CreateVpcBlockPublicAccessExclusionRequest < Struct.new(
13088
+ :dry_run,
13089
+ :subnet_id,
13090
+ :vpc_id,
13091
+ :internet_gateway_exclusion_mode,
13092
+ :tag_specifications)
13093
+ SENSITIVE = []
13094
+ include Aws::Structure
13095
+ end
13096
+
13097
+ # @!attribute [rw] vpc_block_public_access_exclusion
13098
+ # Details about an exclusion.
13099
+ # @return [Types::VpcBlockPublicAccessExclusion]
13100
+ #
13101
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVpcBlockPublicAccessExclusionResult AWS API Documentation
13102
+ #
13103
+ class CreateVpcBlockPublicAccessExclusionResult < Struct.new(
13104
+ :vpc_block_public_access_exclusion)
13105
+ SENSITIVE = []
13106
+ include Aws::Structure
13107
+ end
13108
+
13022
13109
  # @!attribute [rw] dry_run
13023
13110
  # Checks whether you have the required permissions for the action,
13024
13111
  # without actually making the request, and provides an error response.
@@ -16206,6 +16293,38 @@ module Aws::EC2
16206
16293
  include Aws::Structure
16207
16294
  end
16208
16295
 
16296
+ # @!attribute [rw] dry_run
16297
+ # Checks whether you have the required permissions for the action,
16298
+ # without actually making the request, and provides an error response.
16299
+ # If you have the required permissions, the error response is
16300
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
16301
+ # @return [Boolean]
16302
+ #
16303
+ # @!attribute [rw] exclusion_id
16304
+ # The ID of the exclusion.
16305
+ # @return [String]
16306
+ #
16307
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVpcBlockPublicAccessExclusionRequest AWS API Documentation
16308
+ #
16309
+ class DeleteVpcBlockPublicAccessExclusionRequest < Struct.new(
16310
+ :dry_run,
16311
+ :exclusion_id)
16312
+ SENSITIVE = []
16313
+ include Aws::Structure
16314
+ end
16315
+
16316
+ # @!attribute [rw] vpc_block_public_access_exclusion
16317
+ # Details about an exclusion.
16318
+ # @return [Types::VpcBlockPublicAccessExclusion]
16319
+ #
16320
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVpcBlockPublicAccessExclusionResult AWS API Documentation
16321
+ #
16322
+ class DeleteVpcBlockPublicAccessExclusionResult < Struct.new(
16323
+ :vpc_block_public_access_exclusion)
16324
+ SENSITIVE = []
16325
+ include Aws::Structure
16326
+ end
16327
+
16209
16328
  # @!attribute [rw] dry_run
16210
16329
  # Checks whether you have the required permissions for the action,
16211
16330
  # without actually making the request, and provides an error response.
@@ -17696,10 +17815,10 @@ module Aws::EC2
17696
17815
  #
17697
17816
  # * `instance-id` - The ID of the instance.
17698
17817
  #
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
17818
+ # * `tag` - The key/value combination of a tag assigned to the
17819
+ # resource. Use the tag key in the filter name and the tag value as
17820
+ # the filter value. For example, to find all resources that have a
17821
+ # tag with the key `Owner` and the value `TeamA`, specify
17703
17822
  # `tag:Owner` for the filter name and `TeamA` for the filter value.
17704
17823
  #
17705
17824
  # * `tag-key` - The key of a tag assigned to the resource. Use this
@@ -18270,10 +18389,10 @@ module Aws::EC2
18270
18389
  # * `owner-id` - The ID of the Amazon Web Services account that owns
18271
18390
  # the DHCP options set.
18272
18391
  #
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
18392
+ # * `tag` - The key/value combination of a tag assigned to the
18393
+ # resource. Use the tag key in the filter name and the tag value as
18394
+ # the filter value. For example, to find all resources that have a
18395
+ # tag with the key `Owner` and the value `TeamA`, specify
18277
18396
  # `tag:Owner` for the filter name and `TeamA` for the filter value.
18278
18397
  #
18279
18398
  # * `tag-key` - The key of a tag assigned to the resource. Use this
@@ -18341,10 +18460,10 @@ module Aws::EC2
18341
18460
  # @!attribute [rw] filters
18342
18461
  # The filters.
18343
18462
  #
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
18463
+ # * `tag` - The key/value combination of a tag assigned to the
18464
+ # resource. Use the tag key in the filter name and the tag value as
18465
+ # the filter value. For example, to find all resources that have a
18466
+ # tag with the key `Owner` and the value `TeamA`, specify
18348
18467
  # `tag:Owner` for the filter name and `TeamA` for the filter value.
18349
18468
  #
18350
18469
  # * `tag-key` - The key of a tag assigned to the resource. Use this
@@ -21537,10 +21656,10 @@ module Aws::EC2
21537
21656
  # * `owner-id` - The ID of the Amazon Web Services account that owns
21538
21657
  # the internet gateway.
21539
21658
  #
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
21659
+ # * `tag` - The key/value combination of a tag assigned to the
21660
+ # resource. Use the tag key in the filter name and the tag value as
21661
+ # the filter value. For example, to find all resources that have a
21662
+ # tag with the key `Owner` and the value `TeamA`, specify
21544
21663
  # `tag:Owner` for the filter name and `TeamA` for the filter value.
21545
21664
  #
21546
21665
  # * `tag-key` - The key of a tag assigned to the resource. Use this
@@ -23029,10 +23148,10 @@ module Aws::EC2
23029
23148
  # * `subnet-id` - The ID of the subnet in which the NAT gateway
23030
23149
  # resides.
23031
23150
  #
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
23151
+ # * `tag` - The key/value combination of a tag assigned to the
23152
+ # resource. Use the tag key in the filter name and the tag value as
23153
+ # the filter value. For example, to find all resources that have a
23154
+ # tag with the key `Owner` and the value `TeamA`, specify
23036
23155
  # `tag:Owner` for the filter name and `TeamA` for the filter value.
23037
23156
  #
23038
23157
  # * `tag-key` - The key of a tag assigned to the resource. Use this
@@ -23165,10 +23284,10 @@ module Aws::EC2
23165
23284
  # * `owner-id` - The ID of the Amazon Web Services account that owns
23166
23285
  # the network ACL.
23167
23286
  #
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
23287
+ # * `tag` - The key/value combination of a tag assigned to the
23288
+ # resource. Use the tag key in the filter name and the tag value as
23289
+ # the filter value. For example, to find all resources that have a
23290
+ # tag with the key `Owner` and the value `TeamA`, specify
23172
23291
  # `tag:Owner` for the filter name and `TeamA` for the filter value.
23173
23292
  #
23174
23293
  # * `tag-key` - The key of a tag assigned to the resource. Use this
@@ -24682,10 +24801,10 @@ module Aws::EC2
24682
24801
  # * `route.vpc-peering-connection-id` - The ID of a VPC peering
24683
24802
  # connection specified in a route in the table.
24684
24803
  #
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
24804
+ # * `tag` - The key/value combination of a tag assigned to the
24805
+ # resource. Use the tag key in the filter name and the tag value as
24806
+ # the filter value. For example, to find all resources that have a
24807
+ # tag with the key `Owner` and the value `TeamA`, specify
24689
24808
  # `tag:Owner` for the filter name and `TeamA` for the filter value.
24690
24809
  #
24691
24810
  # * `tag-key` - The key of a tag assigned to the resource. Use this
@@ -26206,10 +26325,10 @@ module Aws::EC2
26206
26325
  #
26207
26326
  # * `subnet-id` - The ID of the subnet.
26208
26327
  #
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
26328
+ # * `tag` - The key/value combination of a tag assigned to the
26329
+ # resource. Use the tag key in the filter name and the tag value as
26330
+ # the filter value. For example, to find all resources that have a
26331
+ # tag with the key `Owner` and the value `TeamA`, specify
26213
26332
  # `tag:Owner` for the filter name and `TeamA` for the filter value.
26214
26333
  #
26215
26334
  # * `tag-key` - The key of a tag assigned to the resource. Use this
@@ -28092,6 +28211,119 @@ module Aws::EC2
28092
28211
  include Aws::Structure
28093
28212
  end
28094
28213
 
28214
+ # @!attribute [rw] dry_run
28215
+ # Checks whether you have the required permissions for the action,
28216
+ # without actually making the request, and provides an error response.
28217
+ # If you have the required permissions, the error response is
28218
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
28219
+ # @return [Boolean]
28220
+ #
28221
+ # @!attribute [rw] filters
28222
+ # Filters for the request:
28223
+ #
28224
+ # * `resource-arn` - The Amazon Resource Name (ARN) of a exclusion.
28225
+ #
28226
+ # * `internet-gateway-exclusion-mode` - The mode of a VPC BPA
28227
+ # exclusion. Possible values: `bidirectional-access-allowed |
28228
+ # egress-access-allowed`.
28229
+ #
28230
+ # * `state` - The state of VPC BPA. Possible values:
28231
+ # `create-in-progress | create-complete | update-in-progress |
28232
+ # update-complete | delete-in-progress | deleted-complete |
28233
+ # disable-in-progress | disable-complete`
28234
+ #
28235
+ # * `tag` - The key/value combination of a tag assigned to the
28236
+ # resource. Use the tag key in the filter name and the tag value as
28237
+ # the filter value. For example, to find all resources that have a
28238
+ # tag with the key `Owner` and the value `TeamA`, specify
28239
+ # `tag:Owner` for the filter name and `TeamA` for the filter value.
28240
+ #
28241
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
28242
+ # filter to find all resources assigned a tag with a specific key,
28243
+ # regardless of the tag value.
28244
+ #
28245
+ # * `tag-value`: The value of a tag assigned to the resource. Use this
28246
+ # filter to find all resources assigned a tag with a specific value,
28247
+ # regardless of the tag key.
28248
+ # @return [Array<Types::Filter>]
28249
+ #
28250
+ # @!attribute [rw] exclusion_ids
28251
+ # IDs of exclusions.
28252
+ # @return [Array<String>]
28253
+ #
28254
+ # @!attribute [rw] next_token
28255
+ # The token returned from a previous paginated request. Pagination
28256
+ # continues from the end of the items returned by the previous
28257
+ # request.
28258
+ # @return [String]
28259
+ #
28260
+ # @!attribute [rw] max_results
28261
+ # The maximum number of items to return for this request. To get the
28262
+ # next page of items, make another request with the token returned in
28263
+ # the output. For more information, see [Pagination][1].
28264
+ #
28265
+ #
28266
+ #
28267
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination
28268
+ # @return [Integer]
28269
+ #
28270
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcBlockPublicAccessExclusionsRequest AWS API Documentation
28271
+ #
28272
+ class DescribeVpcBlockPublicAccessExclusionsRequest < Struct.new(
28273
+ :dry_run,
28274
+ :filters,
28275
+ :exclusion_ids,
28276
+ :next_token,
28277
+ :max_results)
28278
+ SENSITIVE = []
28279
+ include Aws::Structure
28280
+ end
28281
+
28282
+ # @!attribute [rw] vpc_block_public_access_exclusions
28283
+ # Details related to the exclusions.
28284
+ # @return [Array<Types::VpcBlockPublicAccessExclusion>]
28285
+ #
28286
+ # @!attribute [rw] next_token
28287
+ # The token to include in another request to get the next page of
28288
+ # items. This value is `null` when there are no more items to return.
28289
+ # @return [String]
28290
+ #
28291
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcBlockPublicAccessExclusionsResult AWS API Documentation
28292
+ #
28293
+ class DescribeVpcBlockPublicAccessExclusionsResult < Struct.new(
28294
+ :vpc_block_public_access_exclusions,
28295
+ :next_token)
28296
+ SENSITIVE = []
28297
+ include Aws::Structure
28298
+ end
28299
+
28300
+ # @!attribute [rw] dry_run
28301
+ # Checks whether you have the required permissions for the action,
28302
+ # without actually making the request, and provides an error response.
28303
+ # If you have the required permissions, the error response is
28304
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
28305
+ # @return [Boolean]
28306
+ #
28307
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcBlockPublicAccessOptionsRequest AWS API Documentation
28308
+ #
28309
+ class DescribeVpcBlockPublicAccessOptionsRequest < Struct.new(
28310
+ :dry_run)
28311
+ SENSITIVE = []
28312
+ include Aws::Structure
28313
+ end
28314
+
28315
+ # @!attribute [rw] vpc_block_public_access_options
28316
+ # Details related to the options.
28317
+ # @return [Types::VpcBlockPublicAccessOptions]
28318
+ #
28319
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcBlockPublicAccessOptionsResult AWS API Documentation
28320
+ #
28321
+ class DescribeVpcBlockPublicAccessOptionsResult < Struct.new(
28322
+ :vpc_block_public_access_options)
28323
+ SENSITIVE = []
28324
+ include Aws::Structure
28325
+ end
28326
+
28095
28327
  # @!attribute [rw] vpc_ids
28096
28328
  # The IDs of the VPCs.
28097
28329
  # @return [Array<String>]
@@ -28157,10 +28389,10 @@ module Aws::EC2
28157
28389
  # * `is-classic-link-enabled` - Whether the VPC is enabled for
28158
28390
  # ClassicLink (`true` \| `false`).
28159
28391
  #
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
28392
+ # * `tag` - The key/value combination of a tag assigned to the
28393
+ # resource. Use the tag key in the filter name and the tag value as
28394
+ # the filter value. For example, to find all resources that have a
28395
+ # tag with the key `Owner` and the value `TeamA`, specify
28164
28396
  # `tag:Owner` for the filter name and `TeamA` for the filter value.
28165
28397
  #
28166
28398
  # * `tag-key` - The key of a tag assigned to the resource. Use this
@@ -28691,10 +28923,10 @@ module Aws::EC2
28691
28923
  # * `status-message` - A message that provides more information about
28692
28924
  # the status of the VPC peering connection, if applicable.
28693
28925
  #
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
28926
+ # * `tag` - The key/value combination of a tag assigned to the
28927
+ # resource. Use the tag key in the filter name and the tag value as
28928
+ # the filter value. For example, to find all resources that have a
28929
+ # tag with the key `Owner` and the value `TeamA`, specify
28698
28930
  # `tag:Owner` for the filter name and `TeamA` for the filter value.
28699
28931
  #
28700
28932
  # * `tag-key` - The key of a tag assigned to the resource. Use this
@@ -28773,10 +29005,10 @@ module Aws::EC2
28773
29005
  #
28774
29006
  # * `state` - The state of the VPC (`pending` \| `available`).
28775
29007
  #
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
29008
+ # * `tag` - The key/value combination of a tag assigned to the
29009
+ # resource. Use the tag key in the filter name and the tag value as
29010
+ # the filter value. For example, to find all resources that have a
29011
+ # tag with the key `Owner` and the value `TeamA`, specify
28780
29012
  # `tag:Owner` for the filter name and `TeamA` for the filter value.
28781
29013
  #
28782
29014
  # * `tag-key` - The key of a tag assigned to the resource. Use this
@@ -52008,6 +52240,97 @@ module Aws::EC2
52008
52240
  include Aws::Structure
52009
52241
  end
52010
52242
 
52243
+ # @!attribute [rw] dry_run
52244
+ # Checks whether you have the required permissions for the action,
52245
+ # without actually making the request, and provides an error response.
52246
+ # If you have the required permissions, the error response is
52247
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
52248
+ # @return [Boolean]
52249
+ #
52250
+ # @!attribute [rw] exclusion_id
52251
+ # The ID of an exclusion.
52252
+ # @return [String]
52253
+ #
52254
+ # @!attribute [rw] internet_gateway_exclusion_mode
52255
+ # The exclusion mode for internet gateway traffic.
52256
+ #
52257
+ # * `bidirectional-access-allowed`: Allow all internet traffic to and
52258
+ # from the excluded VPCs and subnets.
52259
+ #
52260
+ # * `egress-access-allowed`: Allow outbound internet traffic from the
52261
+ # excluded VPCs and subnets. Block inbound internet traffic to the
52262
+ # excluded VPCs and subnets. Only applies when VPC Block Public
52263
+ # Access is set to Bidirectional.
52264
+ # @return [String]
52265
+ #
52266
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcBlockPublicAccessExclusionRequest AWS API Documentation
52267
+ #
52268
+ class ModifyVpcBlockPublicAccessExclusionRequest < Struct.new(
52269
+ :dry_run,
52270
+ :exclusion_id,
52271
+ :internet_gateway_exclusion_mode)
52272
+ SENSITIVE = []
52273
+ include Aws::Structure
52274
+ end
52275
+
52276
+ # @!attribute [rw] vpc_block_public_access_exclusion
52277
+ # Details related to the exclusion.
52278
+ # @return [Types::VpcBlockPublicAccessExclusion]
52279
+ #
52280
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcBlockPublicAccessExclusionResult AWS API Documentation
52281
+ #
52282
+ class ModifyVpcBlockPublicAccessExclusionResult < Struct.new(
52283
+ :vpc_block_public_access_exclusion)
52284
+ SENSITIVE = []
52285
+ include Aws::Structure
52286
+ end
52287
+
52288
+ # @!attribute [rw] dry_run
52289
+ # Checks whether you have the required permissions for the action,
52290
+ # without actually making the request, and provides an error response.
52291
+ # If you have the required permissions, the error response is
52292
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
52293
+ # @return [Boolean]
52294
+ #
52295
+ # @!attribute [rw] internet_gateway_block_mode
52296
+ # The mode of VPC BPA.
52297
+ #
52298
+ # * `bidirectional-access-allowed`: VPC BPA is not enabled and traffic
52299
+ # is allowed to and from internet gateways and egress-only internet
52300
+ # gateways in this Region.
52301
+ #
52302
+ # * `bidirectional-access-blocked`: Block all traffic to and from
52303
+ # internet gateways and egress-only internet gateways in this Region
52304
+ # (except for excluded VPCs and subnets).
52305
+ #
52306
+ # * `ingress-access-blocked`: Block all internet traffic to the VPCs
52307
+ # in this Region (except for VPCs or subnets which are excluded).
52308
+ # Only traffic to and from NAT gateways and egress-only internet
52309
+ # gateways is allowed because these gateways only allow outbound
52310
+ # connections to be established.
52311
+ # @return [String]
52312
+ #
52313
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcBlockPublicAccessOptionsRequest AWS API Documentation
52314
+ #
52315
+ class ModifyVpcBlockPublicAccessOptionsRequest < Struct.new(
52316
+ :dry_run,
52317
+ :internet_gateway_block_mode)
52318
+ SENSITIVE = []
52319
+ include Aws::Structure
52320
+ end
52321
+
52322
+ # @!attribute [rw] vpc_block_public_access_options
52323
+ # Details related to the VPC Block Public Access (BPA) options.
52324
+ # @return [Types::VpcBlockPublicAccessOptions]
52325
+ #
52326
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcBlockPublicAccessOptionsResult AWS API Documentation
52327
+ #
52328
+ class ModifyVpcBlockPublicAccessOptionsResult < Struct.new(
52329
+ :vpc_block_public_access_options)
52330
+ SENSITIVE = []
52331
+ include Aws::Structure
52332
+ end
52333
+
52011
52334
  # @!attribute [rw] dry_run
52012
52335
  # Checks whether you have the required permissions for the action,
52013
52336
  # without actually making the request, and provides an error response.
@@ -65147,6 +65470,10 @@ module Aws::EC2
65147
65470
  # the instance.
65148
65471
  # @return [Types::PrivateDnsNameOptionsOnLaunch]
65149
65472
  #
65473
+ # @!attribute [rw] block_public_access_states
65474
+ # The state of VPC Block Public Access (BPA).
65475
+ # @return [Types::BlockPublicAccessStates]
65476
+ #
65150
65477
  # @!attribute [rw] subnet_id
65151
65478
  # The ID of the subnet.
65152
65479
  # @return [String]
@@ -65207,6 +65534,7 @@ module Aws::EC2
65207
65534
  :enable_dns_64,
65208
65535
  :ipv_6_native,
65209
65536
  :private_dns_name_options_on_launch,
65537
+ :block_public_access_states,
65210
65538
  :subnet_id,
65211
65539
  :state,
65212
65540
  :vpc_id,
@@ -69779,6 +70107,10 @@ module Aws::EC2
69779
70107
  # Any tags assigned to the VPC.
69780
70108
  # @return [Array<Types::Tag>]
69781
70109
  #
70110
+ # @!attribute [rw] block_public_access_states
70111
+ # The state of VPC Block Public Access (BPA).
70112
+ # @return [Types::BlockPublicAccessStates]
70113
+ #
69782
70114
  # @!attribute [rw] vpc_id
69783
70115
  # The ID of the VPC.
69784
70116
  # @return [String]
@@ -69804,6 +70136,7 @@ module Aws::EC2
69804
70136
  :cidr_block_association_set,
69805
70137
  :is_default,
69806
70138
  :tags,
70139
+ :block_public_access_states,
69807
70140
  :vpc_id,
69808
70141
  :state,
69809
70142
  :cidr_block,
@@ -69831,6 +70164,143 @@ module Aws::EC2
69831
70164
  include Aws::Structure
69832
70165
  end
69833
70166
 
70167
+ # A VPC BPA exclusion is a mode that can be applied to a single VPC or
70168
+ # subnet that exempts it from the account’s BPA mode and will allow
70169
+ # bidirectional or egress-only access. You can create BPA exclusions for
70170
+ # VPCs and subnets even when BPA is not enabled on the account to ensure
70171
+ # that there is no traffic disruption to the exclusions when VPC BPA is
70172
+ # turned on. To learn more about VPC BPA, see [Block public access to
70173
+ # VPCs and subnets][1] in the *Amazon VPC User Guide*.
70174
+ #
70175
+ #
70176
+ #
70177
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/security-vpc-bpa.html
70178
+ #
70179
+ # @!attribute [rw] exclusion_id
70180
+ # The ID of the exclusion.
70181
+ # @return [String]
70182
+ #
70183
+ # @!attribute [rw] internet_gateway_exclusion_mode
70184
+ # The exclusion mode for internet gateway traffic.
70185
+ #
70186
+ # * `bidirectional-access-allowed`: Allow all internet traffic to and
70187
+ # from the excluded VPCs and subnets.
70188
+ #
70189
+ # * `egress-access-allowed`: Allow outbound internet traffic from the
70190
+ # excluded VPCs and subnets. Block inbound internet traffic to the
70191
+ # excluded VPCs and subnets. Only applies when VPC Block Public
70192
+ # Access is set to Bidirectional.
70193
+ # @return [String]
70194
+ #
70195
+ # @!attribute [rw] resource_arn
70196
+ # The ARN of the exclusion.
70197
+ # @return [String]
70198
+ #
70199
+ # @!attribute [rw] state
70200
+ # The state of the exclusion.
70201
+ # @return [String]
70202
+ #
70203
+ # @!attribute [rw] reason
70204
+ # The reason for the current exclusion state.
70205
+ # @return [String]
70206
+ #
70207
+ # @!attribute [rw] creation_timestamp
70208
+ # When the exclusion was created.
70209
+ # @return [Time]
70210
+ #
70211
+ # @!attribute [rw] last_update_timestamp
70212
+ # When the exclusion was last updated.
70213
+ # @return [Time]
70214
+ #
70215
+ # @!attribute [rw] deletion_timestamp
70216
+ # When the exclusion was deleted.
70217
+ # @return [Time]
70218
+ #
70219
+ # @!attribute [rw] tags
70220
+ # `tag` - The key/value combination of a tag assigned to the resource.
70221
+ # Use the tag key in the filter name and the tag value as the filter
70222
+ # value. For example, to find all resources that have a tag with the
70223
+ # key `Owner` and the value `TeamA`, specify `tag:Owner` for the
70224
+ # filter name and `TeamA` for the filter value.
70225
+ # @return [Array<Types::Tag>]
70226
+ #
70227
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpcBlockPublicAccessExclusion AWS API Documentation
70228
+ #
70229
+ class VpcBlockPublicAccessExclusion < Struct.new(
70230
+ :exclusion_id,
70231
+ :internet_gateway_exclusion_mode,
70232
+ :resource_arn,
70233
+ :state,
70234
+ :reason,
70235
+ :creation_timestamp,
70236
+ :last_update_timestamp,
70237
+ :deletion_timestamp,
70238
+ :tags)
70239
+ SENSITIVE = []
70240
+ include Aws::Structure
70241
+ end
70242
+
70243
+ # VPC Block public Access (BPA) enables you to block resources in VPCs
70244
+ # and subnets that you own in a Region from reaching or being reached
70245
+ # from the internet through internet gateways and egress-only internet
70246
+ # gateways. To learn more about VPC BPA, see [Block public access to
70247
+ # VPCs and subnets][1] in the *Amazon VPC User Guide*.
70248
+ #
70249
+ #
70250
+ #
70251
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/security-vpc-bpa.html
70252
+ #
70253
+ # @!attribute [rw] aws_account_id
70254
+ # An Amazon Web Services account ID.
70255
+ # @return [String]
70256
+ #
70257
+ # @!attribute [rw] aws_region
70258
+ # An Amazon Web Services Region.
70259
+ # @return [String]
70260
+ #
70261
+ # @!attribute [rw] state
70262
+ # The current state of VPC BPA.
70263
+ # @return [String]
70264
+ #
70265
+ # @!attribute [rw] internet_gateway_block_mode
70266
+ # The current mode of VPC BPA.
70267
+ #
70268
+ # * `bidirectional-access-allowed`: VPC BPA is not enabled and traffic
70269
+ # is allowed to and from internet gateways and egress-only internet
70270
+ # gateways in this Region.
70271
+ #
70272
+ # * `bidirectional-access-blocked`: Block all traffic to and from
70273
+ # internet gateways and egress-only internet gateways in this Region
70274
+ # (except for excluded VPCs and subnets).
70275
+ #
70276
+ # * `ingress-access-blocked`: Block all internet traffic to the VPCs
70277
+ # in this Region (except for VPCs or subnets which are excluded).
70278
+ # Only traffic to and from NAT gateways and egress-only internet
70279
+ # gateways is allowed because these gateways only allow outbound
70280
+ # connections to be established.
70281
+ # @return [String]
70282
+ #
70283
+ # @!attribute [rw] reason
70284
+ # The reason for the current state.
70285
+ # @return [String]
70286
+ #
70287
+ # @!attribute [rw] last_update_timestamp
70288
+ # The last time the VPC BPA mode was updated.
70289
+ # @return [Time]
70290
+ #
70291
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpcBlockPublicAccessOptions AWS API Documentation
70292
+ #
70293
+ class VpcBlockPublicAccessOptions < Struct.new(
70294
+ :aws_account_id,
70295
+ :aws_region,
70296
+ :state,
70297
+ :internet_gateway_block_mode,
70298
+ :reason,
70299
+ :last_update_timestamp)
70300
+ SENSITIVE = []
70301
+ include Aws::Structure
70302
+ end
70303
+
69834
70304
  # Describes an IPv4 CIDR block associated with a VPC.
69835
70305
  #
69836
70306
  # @!attribute [rw] association_id