aws-sdk-ec2 1.632.0 → 1.633.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2f6f66600765758576f1bb251bfb13f3ad96478448ed75b44abef3450972a44f
4
- data.tar.gz: bec36a6583ca6ac493636399ca4e94a274691cccc081c5d88f0a3372fd8b2cb3
3
+ metadata.gz: a2679aa051177319ef73c3bccdf71edf2f1532521f85bc4bedbbc3d0ed3f6210
4
+ data.tar.gz: a67b383a8e91fc1da1825ef13711fa0e7cbea6b455ac72b45a3e120e94176922
5
5
  SHA512:
6
- metadata.gz: 7ba71002846ae006cdcfad4be79b9ae13e0e778d0b14f552b5a4ed03b015e05ac3134af8a7bf60a3983febdb3e56f1ca2e7a4892fa9c419316a71c156d7c3a4e
7
- data.tar.gz: '0034618776d2a48b1cd7ac07181848ec51763a0ba9c114ae7787937d96dbc5df60ed7be306be436dd2a6b6b88582b06471687f07455695bcf42db8b7e4c569e9'
6
+ metadata.gz: 74f291318f022d6a21e7cee0c5d0a73179a1bde7e5b0328333d9312b0fd3a191e09af3b1a573020feed782ec8a703e47e5a8d25385548f812083d9be47ee597b
7
+ data.tar.gz: 998a022e42f2dc08beead753d21a7be9758bcc372f9e17100639a80ed3fbd66be6ecbd855f07b5db7c662ec412dbf90e90502ec5b41049d542686764bd916d66
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.633.0 (2026-07-29)
5
+ ------------------
6
+
7
+ * Feature - This release adds support for policy-based routing on AWS Transit Gateway, enabling you to route traffic based on 5-tuple matching (source IP, destination IP, source port, destination port, and protocol) using new policy table entry APIs that direct matching traffic to a target route table.
8
+
4
9
  1.632.0 (2026-07-10)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.632.0
1
+ 1.633.0
@@ -17051,6 +17051,75 @@ module Aws::EC2
17051
17051
  req.send_request(options)
17052
17052
  end
17053
17053
 
17054
+ # Creates an entry in a transit gateway policy table to route matching
17055
+ # traffic to a specified route table.
17056
+ #
17057
+ # @option params [required, String] :transit_gateway_policy_table_id
17058
+ # The ID of the transit gateway policy table.
17059
+ #
17060
+ # @option params [required, String] :policy_rule_number
17061
+ # The rule number for the policy table entry. Lower rule numbers are
17062
+ # evaluated first and take precedence.
17063
+ #
17064
+ # @option params [Types::TransitGatewayRequestPolicyRule] :policy_rule
17065
+ # The matching criteria for the policy table entry.
17066
+ #
17067
+ # @option params [required, String] :target_route_table_id
17068
+ # The ID of the transit gateway route table to use for traffic matching
17069
+ # this rule.
17070
+ #
17071
+ # @option params [Boolean] :dry_run
17072
+ # Checks whether you have the required permissions for the action,
17073
+ # without actually making the request, and provides an error response.
17074
+ # If you have the required permissions, the error response is
17075
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
17076
+ #
17077
+ # @return [Types::CreateTransitGatewayPolicyTableEntryResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
17078
+ #
17079
+ # * {Types::CreateTransitGatewayPolicyTableEntryResult#transit_gateway_policy_table_entry #transit_gateway_policy_table_entry} => Types::TransitGatewayPolicyTableEntry
17080
+ #
17081
+ # @example Request syntax with placeholder values
17082
+ #
17083
+ # resp = client.create_transit_gateway_policy_table_entry({
17084
+ # transit_gateway_policy_table_id: "TransitGatewayPolicyTableId", # required
17085
+ # policy_rule_number: "String", # required
17086
+ # policy_rule: {
17087
+ # source_cidr_block: "String",
17088
+ # source_port_range: "String",
17089
+ # destination_cidr_block: "String",
17090
+ # destination_port_range: "String",
17091
+ # protocol: "String",
17092
+ # meta_data: {
17093
+ # meta_data_key: "String",
17094
+ # meta_data_value: "String",
17095
+ # },
17096
+ # },
17097
+ # target_route_table_id: "TransitGatewayRouteTableId", # required
17098
+ # dry_run: false,
17099
+ # })
17100
+ #
17101
+ # @example Response structure
17102
+ #
17103
+ # resp.transit_gateway_policy_table_entry.policy_rule_number #=> String
17104
+ # resp.transit_gateway_policy_table_entry.policy_rule.source_cidr_block #=> String
17105
+ # resp.transit_gateway_policy_table_entry.policy_rule.source_port_range #=> String
17106
+ # resp.transit_gateway_policy_table_entry.policy_rule.destination_cidr_block #=> String
17107
+ # resp.transit_gateway_policy_table_entry.policy_rule.destination_port_range #=> String
17108
+ # resp.transit_gateway_policy_table_entry.policy_rule.protocol #=> String
17109
+ # resp.transit_gateway_policy_table_entry.policy_rule.meta_data.meta_data_key #=> String
17110
+ # resp.transit_gateway_policy_table_entry.policy_rule.meta_data.meta_data_value #=> String
17111
+ # resp.transit_gateway_policy_table_entry.target_route_table_id #=> String
17112
+ # resp.transit_gateway_policy_table_entry.state #=> String, one of "active", "deleted"
17113
+ #
17114
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayPolicyTableEntry AWS API Documentation
17115
+ #
17116
+ # @overload create_transit_gateway_policy_table_entry(params = {})
17117
+ # @param [Hash] params ({})
17118
+ def create_transit_gateway_policy_table_entry(params = {}, options = {})
17119
+ req = build_request(:create_transit_gateway_policy_table_entry, params)
17120
+ req.send_request(options)
17121
+ end
17122
+
17054
17123
  # Creates a reference (route) to a prefix list in a specified transit
17055
17124
  # gateway route table.
17056
17125
  #
@@ -23385,6 +23454,54 @@ module Aws::EC2
23385
23454
  req.send_request(options)
23386
23455
  end
23387
23456
 
23457
+ # Deletes the specified transit gateway policy table entry.
23458
+ #
23459
+ # @option params [required, String] :transit_gateway_policy_table_id
23460
+ # The ID of the transit gateway policy table.
23461
+ #
23462
+ # @option params [required, String] :policy_rule_number
23463
+ # The rule number of the policy table entry to delete.
23464
+ #
23465
+ # @option params [Boolean] :dry_run
23466
+ # Checks whether you have the required permissions for the action,
23467
+ # without actually making the request, and provides an error response.
23468
+ # If you have the required permissions, the error response is
23469
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
23470
+ #
23471
+ # @return [Types::DeleteTransitGatewayPolicyTableEntryResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
23472
+ #
23473
+ # * {Types::DeleteTransitGatewayPolicyTableEntryResult#transit_gateway_policy_table_entry #transit_gateway_policy_table_entry} => Types::TransitGatewayPolicyTableEntry
23474
+ #
23475
+ # @example Request syntax with placeholder values
23476
+ #
23477
+ # resp = client.delete_transit_gateway_policy_table_entry({
23478
+ # transit_gateway_policy_table_id: "TransitGatewayPolicyTableId", # required
23479
+ # policy_rule_number: "String", # required
23480
+ # dry_run: false,
23481
+ # })
23482
+ #
23483
+ # @example Response structure
23484
+ #
23485
+ # resp.transit_gateway_policy_table_entry.policy_rule_number #=> String
23486
+ # resp.transit_gateway_policy_table_entry.policy_rule.source_cidr_block #=> String
23487
+ # resp.transit_gateway_policy_table_entry.policy_rule.source_port_range #=> String
23488
+ # resp.transit_gateway_policy_table_entry.policy_rule.destination_cidr_block #=> String
23489
+ # resp.transit_gateway_policy_table_entry.policy_rule.destination_port_range #=> String
23490
+ # resp.transit_gateway_policy_table_entry.policy_rule.protocol #=> String
23491
+ # resp.transit_gateway_policy_table_entry.policy_rule.meta_data.meta_data_key #=> String
23492
+ # resp.transit_gateway_policy_table_entry.policy_rule.meta_data.meta_data_value #=> String
23493
+ # resp.transit_gateway_policy_table_entry.target_route_table_id #=> String
23494
+ # resp.transit_gateway_policy_table_entry.state #=> String, one of "active", "deleted"
23495
+ #
23496
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayPolicyTableEntry AWS API Documentation
23497
+ #
23498
+ # @overload delete_transit_gateway_policy_table_entry(params = {})
23499
+ # @param [Hash] params ({})
23500
+ def delete_transit_gateway_policy_table_entry(params = {}, options = {})
23501
+ req = build_request(:delete_transit_gateway_policy_table_entry, params)
23502
+ req.send_request(options)
23503
+ end
23504
+
23388
23505
  # Deletes a reference (route) to a prefix list in a specified transit
23389
23506
  # gateway route table.
23390
23507
  #
@@ -43916,6 +44033,7 @@ module Aws::EC2
43916
44033
  # resp.transit_gateway_attachments[0].resource_id #=> String
43917
44034
  # resp.transit_gateway_attachments[0].state #=> String, one of "initiating", "initiatingRequest", "pendingAcceptance", "rollingBack", "pending", "available", "modifying", "deleting", "deleted", "failed", "rejected", "rejecting", "failing"
43918
44035
  # resp.transit_gateway_attachments[0].association.transit_gateway_route_table_id #=> String
44036
+ # resp.transit_gateway_attachments[0].association.transit_gateway_policy_table_id #=> String
43919
44037
  # resp.transit_gateway_attachments[0].association.state #=> String, one of "associating", "associated", "disassociating", "disassociated"
43920
44038
  # resp.transit_gateway_attachments[0].creation_time #=> Time
43921
44039
  # resp.transit_gateway_attachments[0].tags #=> Array
@@ -56535,7 +56653,30 @@ module Aws::EC2
56535
56653
  # The ID of the transit gateway policy table.
56536
56654
  #
56537
56655
  # @option params [Array<Types::Filter>] :filters
56538
- # The filters associated with the transit gateway policy table.
56656
+ # One or more filters. The possible values are:
56657
+ #
56658
+ # * `policy-rule-number` - The rule number for the transit gateway
56659
+ # policy table entry.
56660
+ #
56661
+ # * `target-route-table-id` - The ID of the target route table.
56662
+ #
56663
+ # * `policy-rule.source-ip` - The source CIDR block for the policy rule.
56664
+ #
56665
+ # * `policy-rule.destination-ip` - The destination CIDR block for the
56666
+ # policy rule.
56667
+ #
56668
+ # * `policy-rule.source-port` - The source port or port range for the
56669
+ # policy rule.
56670
+ #
56671
+ # * `policy-rule.destination-port` - The destination port or port range
56672
+ # for the policy rule.
56673
+ #
56674
+ # * `policy-rule.protocol` - The protocol for the policy rule.
56675
+ #
56676
+ # * `policy-rule.meta-data.key` - The metadata key for the policy rule.
56677
+ #
56678
+ # * `policy-rule.meta-data.value` - The metadata value for the policy
56679
+ # rule.
56539
56680
  #
56540
56681
  # @option params [Integer] :max_results
56541
56682
  # The maximum number of results to return with a single call. To
@@ -56554,6 +56695,9 @@ module Aws::EC2
56554
56695
  # @return [Types::GetTransitGatewayPolicyTableEntriesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
56555
56696
  #
56556
56697
  # * {Types::GetTransitGatewayPolicyTableEntriesResult#transit_gateway_policy_table_entries #transit_gateway_policy_table_entries} => Array&lt;Types::TransitGatewayPolicyTableEntry&gt;
56698
+ # * {Types::GetTransitGatewayPolicyTableEntriesResult#next_token #next_token} => String
56699
+ #
56700
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
56557
56701
  #
56558
56702
  # @example Request syntax with placeholder values
56559
56703
  #
@@ -56582,6 +56726,8 @@ module Aws::EC2
56582
56726
  # resp.transit_gateway_policy_table_entries[0].policy_rule.meta_data.meta_data_key #=> String
56583
56727
  # resp.transit_gateway_policy_table_entries[0].policy_rule.meta_data.meta_data_value #=> String
56584
56728
  # resp.transit_gateway_policy_table_entries[0].target_route_table_id #=> String
56729
+ # resp.transit_gateway_policy_table_entries[0].state #=> String, one of "active", "deleted"
56730
+ # resp.next_token #=> String
56585
56731
  #
56586
56732
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetTransitGatewayPolicyTableEntries AWS API Documentation
56587
56733
  #
@@ -63424,6 +63570,74 @@ module Aws::EC2
63424
63570
  req.send_request(options)
63425
63571
  end
63426
63572
 
63573
+ # Modifies the specified transit gateway policy table entry.
63574
+ #
63575
+ # @option params [required, String] :transit_gateway_policy_table_id
63576
+ # The ID of the transit gateway policy table.
63577
+ #
63578
+ # @option params [required, String] :policy_rule_number
63579
+ # The rule number of the policy table entry to modify.
63580
+ #
63581
+ # @option params [Types::TransitGatewayRequestPolicyRule] :policy_rule
63582
+ # The updated matching criteria for the policy table entry. Unspecified
63583
+ # fields retain their current values.
63584
+ #
63585
+ # @option params [String] :target_route_table_id
63586
+ # The ID of the transit gateway route table to use for traffic matching
63587
+ # this rule.
63588
+ #
63589
+ # @option params [Boolean] :dry_run
63590
+ # Checks whether you have the required permissions for the action,
63591
+ # without actually making the request, and provides an error response.
63592
+ # If you have the required permissions, the error response is
63593
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
63594
+ #
63595
+ # @return [Types::ModifyTransitGatewayPolicyTableEntryResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
63596
+ #
63597
+ # * {Types::ModifyTransitGatewayPolicyTableEntryResult#transit_gateway_policy_table_entry #transit_gateway_policy_table_entry} => Types::TransitGatewayPolicyTableEntry
63598
+ #
63599
+ # @example Request syntax with placeholder values
63600
+ #
63601
+ # resp = client.modify_transit_gateway_policy_table_entry({
63602
+ # transit_gateway_policy_table_id: "TransitGatewayPolicyTableId", # required
63603
+ # policy_rule_number: "String", # required
63604
+ # policy_rule: {
63605
+ # source_cidr_block: "String",
63606
+ # source_port_range: "String",
63607
+ # destination_cidr_block: "String",
63608
+ # destination_port_range: "String",
63609
+ # protocol: "String",
63610
+ # meta_data: {
63611
+ # meta_data_key: "String",
63612
+ # meta_data_value: "String",
63613
+ # },
63614
+ # },
63615
+ # target_route_table_id: "TransitGatewayRouteTableId",
63616
+ # dry_run: false,
63617
+ # })
63618
+ #
63619
+ # @example Response structure
63620
+ #
63621
+ # resp.transit_gateway_policy_table_entry.policy_rule_number #=> String
63622
+ # resp.transit_gateway_policy_table_entry.policy_rule.source_cidr_block #=> String
63623
+ # resp.transit_gateway_policy_table_entry.policy_rule.source_port_range #=> String
63624
+ # resp.transit_gateway_policy_table_entry.policy_rule.destination_cidr_block #=> String
63625
+ # resp.transit_gateway_policy_table_entry.policy_rule.destination_port_range #=> String
63626
+ # resp.transit_gateway_policy_table_entry.policy_rule.protocol #=> String
63627
+ # resp.transit_gateway_policy_table_entry.policy_rule.meta_data.meta_data_key #=> String
63628
+ # resp.transit_gateway_policy_table_entry.policy_rule.meta_data.meta_data_value #=> String
63629
+ # resp.transit_gateway_policy_table_entry.target_route_table_id #=> String
63630
+ # resp.transit_gateway_policy_table_entry.state #=> String, one of "active", "deleted"
63631
+ #
63632
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyTransitGatewayPolicyTableEntry AWS API Documentation
63633
+ #
63634
+ # @overload modify_transit_gateway_policy_table_entry(params = {})
63635
+ # @param [Hash] params ({})
63636
+ def modify_transit_gateway_policy_table_entry(params = {}, options = {})
63637
+ req = build_request(:modify_transit_gateway_policy_table_entry, params)
63638
+ req.send_request(options)
63639
+ end
63640
+
63427
63641
  # Modifies a reference (route) to a prefix list in a specified transit
63428
63642
  # gateway route table.
63429
63643
  #
@@ -74416,7 +74630,7 @@ module Aws::EC2
74416
74630
  tracer: tracer
74417
74631
  )
74418
74632
  context[:gem_name] = 'aws-sdk-ec2'
74419
- context[:gem_version] = '1.632.0'
74633
+ context[:gem_version] = '1.633.0'
74420
74634
  Seahorse::Client::Request.new(handlers, context)
74421
74635
  end
74422
74636
 
@@ -684,6 +684,8 @@ module Aws::EC2
684
684
  CreateTransitGatewayPeeringAttachmentRequest = Shapes::StructureShape.new(name: 'CreateTransitGatewayPeeringAttachmentRequest')
685
685
  CreateTransitGatewayPeeringAttachmentRequestOptions = Shapes::StructureShape.new(name: 'CreateTransitGatewayPeeringAttachmentRequestOptions')
686
686
  CreateTransitGatewayPeeringAttachmentResult = Shapes::StructureShape.new(name: 'CreateTransitGatewayPeeringAttachmentResult')
687
+ CreateTransitGatewayPolicyTableEntryRequest = Shapes::StructureShape.new(name: 'CreateTransitGatewayPolicyTableEntryRequest')
688
+ CreateTransitGatewayPolicyTableEntryResult = Shapes::StructureShape.new(name: 'CreateTransitGatewayPolicyTableEntryResult')
687
689
  CreateTransitGatewayPolicyTableRequest = Shapes::StructureShape.new(name: 'CreateTransitGatewayPolicyTableRequest')
688
690
  CreateTransitGatewayPolicyTableResult = Shapes::StructureShape.new(name: 'CreateTransitGatewayPolicyTableResult')
689
691
  CreateTransitGatewayPrefixListReferenceRequest = Shapes::StructureShape.new(name: 'CreateTransitGatewayPrefixListReferenceRequest')
@@ -922,6 +924,8 @@ module Aws::EC2
922
924
  DeleteTransitGatewayMulticastDomainResult = Shapes::StructureShape.new(name: 'DeleteTransitGatewayMulticastDomainResult')
923
925
  DeleteTransitGatewayPeeringAttachmentRequest = Shapes::StructureShape.new(name: 'DeleteTransitGatewayPeeringAttachmentRequest')
924
926
  DeleteTransitGatewayPeeringAttachmentResult = Shapes::StructureShape.new(name: 'DeleteTransitGatewayPeeringAttachmentResult')
927
+ DeleteTransitGatewayPolicyTableEntryRequest = Shapes::StructureShape.new(name: 'DeleteTransitGatewayPolicyTableEntryRequest')
928
+ DeleteTransitGatewayPolicyTableEntryResult = Shapes::StructureShape.new(name: 'DeleteTransitGatewayPolicyTableEntryResult')
925
929
  DeleteTransitGatewayPolicyTableRequest = Shapes::StructureShape.new(name: 'DeleteTransitGatewayPolicyTableRequest')
926
930
  DeleteTransitGatewayPolicyTableResult = Shapes::StructureShape.new(name: 'DeleteTransitGatewayPolicyTableResult')
927
931
  DeleteTransitGatewayPrefixListReferenceRequest = Shapes::StructureShape.new(name: 'DeleteTransitGatewayPrefixListReferenceRequest')
@@ -2784,6 +2788,8 @@ module Aws::EC2
2784
2788
  ModifyTransitGatewayMeteringPolicyRequest = Shapes::StructureShape.new(name: 'ModifyTransitGatewayMeteringPolicyRequest')
2785
2789
  ModifyTransitGatewayMeteringPolicyResult = Shapes::StructureShape.new(name: 'ModifyTransitGatewayMeteringPolicyResult')
2786
2790
  ModifyTransitGatewayOptions = Shapes::StructureShape.new(name: 'ModifyTransitGatewayOptions')
2791
+ ModifyTransitGatewayPolicyTableEntryRequest = Shapes::StructureShape.new(name: 'ModifyTransitGatewayPolicyTableEntryRequest')
2792
+ ModifyTransitGatewayPolicyTableEntryResult = Shapes::StructureShape.new(name: 'ModifyTransitGatewayPolicyTableEntryResult')
2787
2793
  ModifyTransitGatewayPrefixListReferenceRequest = Shapes::StructureShape.new(name: 'ModifyTransitGatewayPrefixListReferenceRequest')
2788
2794
  ModifyTransitGatewayPrefixListReferenceResult = Shapes::StructureShape.new(name: 'ModifyTransitGatewayPrefixListReferenceResult')
2789
2795
  ModifyTransitGatewayRequest = Shapes::StructureShape.new(name: 'ModifyTransitGatewayRequest')
@@ -3788,6 +3794,7 @@ module Aws::EC2
3788
3794
  TransitGatewayPolicyTableAssociationList = Shapes::ListShape.new(name: 'TransitGatewayPolicyTableAssociationList')
3789
3795
  TransitGatewayPolicyTableEntry = Shapes::StructureShape.new(name: 'TransitGatewayPolicyTableEntry')
3790
3796
  TransitGatewayPolicyTableEntryList = Shapes::ListShape.new(name: 'TransitGatewayPolicyTableEntryList')
3797
+ TransitGatewayPolicyTableEntryState = Shapes::StringShape.new(name: 'TransitGatewayPolicyTableEntryState')
3791
3798
  TransitGatewayPolicyTableId = Shapes::StringShape.new(name: 'TransitGatewayPolicyTableId')
3792
3799
  TransitGatewayPolicyTableIdStringList = Shapes::ListShape.new(name: 'TransitGatewayPolicyTableIdStringList')
3793
3800
  TransitGatewayPolicyTableList = Shapes::ListShape.new(name: 'TransitGatewayPolicyTableList')
@@ -3799,6 +3806,8 @@ module Aws::EC2
3799
3806
  TransitGatewayPropagation = Shapes::StructureShape.new(name: 'TransitGatewayPropagation')
3800
3807
  TransitGatewayPropagationState = Shapes::StringShape.new(name: 'TransitGatewayPropagationState')
3801
3808
  TransitGatewayRequestOptions = Shapes::StructureShape.new(name: 'TransitGatewayRequestOptions')
3809
+ TransitGatewayRequestPolicyRule = Shapes::StructureShape.new(name: 'TransitGatewayRequestPolicyRule')
3810
+ TransitGatewayRequestPolicyRuleMetaData = Shapes::StructureShape.new(name: 'TransitGatewayRequestPolicyRuleMetaData')
3802
3811
  TransitGatewayRoute = Shapes::StructureShape.new(name: 'TransitGatewayRoute')
3803
3812
  TransitGatewayRouteAttachment = Shapes::StructureShape.new(name: 'TransitGatewayRouteAttachment')
3804
3813
  TransitGatewayRouteAttachmentList = Shapes::ListShape.new(name: 'TransitGatewayRouteAttachmentList')
@@ -6852,6 +6861,16 @@ module Aws::EC2
6852
6861
  CreateTransitGatewayPeeringAttachmentResult.add_member(:transit_gateway_peering_attachment, Shapes::ShapeRef.new(shape: TransitGatewayPeeringAttachment, location_name: "transitGatewayPeeringAttachment"))
6853
6862
  CreateTransitGatewayPeeringAttachmentResult.struct_class = Types::CreateTransitGatewayPeeringAttachmentResult
6854
6863
 
6864
+ CreateTransitGatewayPolicyTableEntryRequest.add_member(:transit_gateway_policy_table_id, Shapes::ShapeRef.new(shape: TransitGatewayPolicyTableId, required: true, location_name: "TransitGatewayPolicyTableId"))
6865
+ CreateTransitGatewayPolicyTableEntryRequest.add_member(:policy_rule_number, Shapes::ShapeRef.new(shape: String, required: true, location_name: "PolicyRuleNumber"))
6866
+ CreateTransitGatewayPolicyTableEntryRequest.add_member(:policy_rule, Shapes::ShapeRef.new(shape: TransitGatewayRequestPolicyRule, location_name: "PolicyRule"))
6867
+ CreateTransitGatewayPolicyTableEntryRequest.add_member(:target_route_table_id, Shapes::ShapeRef.new(shape: TransitGatewayRouteTableId, required: true, location_name: "TargetRouteTableId"))
6868
+ CreateTransitGatewayPolicyTableEntryRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
6869
+ CreateTransitGatewayPolicyTableEntryRequest.struct_class = Types::CreateTransitGatewayPolicyTableEntryRequest
6870
+
6871
+ CreateTransitGatewayPolicyTableEntryResult.add_member(:transit_gateway_policy_table_entry, Shapes::ShapeRef.new(shape: TransitGatewayPolicyTableEntry, location_name: "transitGatewayPolicyTableEntry"))
6872
+ CreateTransitGatewayPolicyTableEntryResult.struct_class = Types::CreateTransitGatewayPolicyTableEntryResult
6873
+
6855
6874
  CreateTransitGatewayPolicyTableRequest.add_member(:transit_gateway_id, Shapes::ShapeRef.new(shape: TransitGatewayId, required: true, location_name: "TransitGatewayId"))
6856
6875
  CreateTransitGatewayPolicyTableRequest.add_member(:tag_specifications, Shapes::ShapeRef.new(shape: TagSpecificationList, location_name: "TagSpecifications"))
6857
6876
  CreateTransitGatewayPolicyTableRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
@@ -7799,6 +7818,14 @@ module Aws::EC2
7799
7818
  DeleteTransitGatewayPeeringAttachmentResult.add_member(:transit_gateway_peering_attachment, Shapes::ShapeRef.new(shape: TransitGatewayPeeringAttachment, location_name: "transitGatewayPeeringAttachment"))
7800
7819
  DeleteTransitGatewayPeeringAttachmentResult.struct_class = Types::DeleteTransitGatewayPeeringAttachmentResult
7801
7820
 
7821
+ DeleteTransitGatewayPolicyTableEntryRequest.add_member(:transit_gateway_policy_table_id, Shapes::ShapeRef.new(shape: TransitGatewayPolicyTableId, required: true, location_name: "TransitGatewayPolicyTableId"))
7822
+ DeleteTransitGatewayPolicyTableEntryRequest.add_member(:policy_rule_number, Shapes::ShapeRef.new(shape: String, required: true, location_name: "PolicyRuleNumber"))
7823
+ DeleteTransitGatewayPolicyTableEntryRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
7824
+ DeleteTransitGatewayPolicyTableEntryRequest.struct_class = Types::DeleteTransitGatewayPolicyTableEntryRequest
7825
+
7826
+ DeleteTransitGatewayPolicyTableEntryResult.add_member(:transit_gateway_policy_table_entry, Shapes::ShapeRef.new(shape: TransitGatewayPolicyTableEntry, location_name: "transitGatewayPolicyTableEntry"))
7827
+ DeleteTransitGatewayPolicyTableEntryResult.struct_class = Types::DeleteTransitGatewayPolicyTableEntryResult
7828
+
7802
7829
  DeleteTransitGatewayPolicyTableRequest.add_member(:transit_gateway_policy_table_id, Shapes::ShapeRef.new(shape: TransitGatewayPolicyTableId, required: true, location_name: "TransitGatewayPolicyTableId"))
7803
7830
  DeleteTransitGatewayPolicyTableRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
7804
7831
  DeleteTransitGatewayPolicyTableRequest.struct_class = Types::DeleteTransitGatewayPolicyTableRequest
@@ -12082,6 +12109,7 @@ module Aws::EC2
12082
12109
  GetTransitGatewayPolicyTableEntriesRequest.struct_class = Types::GetTransitGatewayPolicyTableEntriesRequest
12083
12110
 
12084
12111
  GetTransitGatewayPolicyTableEntriesResult.add_member(:transit_gateway_policy_table_entries, Shapes::ShapeRef.new(shape: TransitGatewayPolicyTableEntryList, location_name: "transitGatewayPolicyTableEntries"))
12112
+ GetTransitGatewayPolicyTableEntriesResult.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
12085
12113
  GetTransitGatewayPolicyTableEntriesResult.struct_class = Types::GetTransitGatewayPolicyTableEntriesResult
12086
12114
 
12087
12115
  GetTransitGatewayPrefixListReferencesRequest.add_member(:transit_gateway_route_table_id, Shapes::ShapeRef.new(shape: TransitGatewayRouteTableId, required: true, location_name: "TransitGatewayRouteTableId"))
@@ -15198,6 +15226,16 @@ module Aws::EC2
15198
15226
  ModifyTransitGatewayOptions.add_member(:encryption_support, Shapes::ShapeRef.new(shape: EncryptionSupportOptionValue, location_name: "EncryptionSupport"))
15199
15227
  ModifyTransitGatewayOptions.struct_class = Types::ModifyTransitGatewayOptions
15200
15228
 
15229
+ ModifyTransitGatewayPolicyTableEntryRequest.add_member(:transit_gateway_policy_table_id, Shapes::ShapeRef.new(shape: TransitGatewayPolicyTableId, required: true, location_name: "TransitGatewayPolicyTableId"))
15230
+ ModifyTransitGatewayPolicyTableEntryRequest.add_member(:policy_rule_number, Shapes::ShapeRef.new(shape: String, required: true, location_name: "PolicyRuleNumber"))
15231
+ ModifyTransitGatewayPolicyTableEntryRequest.add_member(:policy_rule, Shapes::ShapeRef.new(shape: TransitGatewayRequestPolicyRule, location_name: "PolicyRule"))
15232
+ ModifyTransitGatewayPolicyTableEntryRequest.add_member(:target_route_table_id, Shapes::ShapeRef.new(shape: TransitGatewayRouteTableId, location_name: "TargetRouteTableId"))
15233
+ ModifyTransitGatewayPolicyTableEntryRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
15234
+ ModifyTransitGatewayPolicyTableEntryRequest.struct_class = Types::ModifyTransitGatewayPolicyTableEntryRequest
15235
+
15236
+ ModifyTransitGatewayPolicyTableEntryResult.add_member(:transit_gateway_policy_table_entry, Shapes::ShapeRef.new(shape: TransitGatewayPolicyTableEntry, location_name: "transitGatewayPolicyTableEntry"))
15237
+ ModifyTransitGatewayPolicyTableEntryResult.struct_class = Types::ModifyTransitGatewayPolicyTableEntryResult
15238
+
15201
15239
  ModifyTransitGatewayPrefixListReferenceRequest.add_member(:transit_gateway_route_table_id, Shapes::ShapeRef.new(shape: TransitGatewayRouteTableId, required: true, location_name: "TransitGatewayRouteTableId"))
15202
15240
  ModifyTransitGatewayPrefixListReferenceRequest.add_member(:prefix_list_id, Shapes::ShapeRef.new(shape: PrefixListResourceId, required: true, location_name: "PrefixListId"))
15203
15241
  ModifyTransitGatewayPrefixListReferenceRequest.add_member(:transit_gateway_attachment_id, Shapes::ShapeRef.new(shape: TransitGatewayAttachmentId, location_name: "TransitGatewayAttachmentId"))
@@ -18667,6 +18705,7 @@ module Aws::EC2
18667
18705
  TransitGatewayAttachment.struct_class = Types::TransitGatewayAttachment
18668
18706
 
18669
18707
  TransitGatewayAttachmentAssociation.add_member(:transit_gateway_route_table_id, Shapes::ShapeRef.new(shape: String, location_name: "transitGatewayRouteTableId"))
18708
+ TransitGatewayAttachmentAssociation.add_member(:transit_gateway_policy_table_id, Shapes::ShapeRef.new(shape: String, location_name: "transitGatewayPolicyTableId"))
18670
18709
  TransitGatewayAttachmentAssociation.add_member(:state, Shapes::ShapeRef.new(shape: TransitGatewayAssociationState, location_name: "state"))
18671
18710
  TransitGatewayAttachmentAssociation.struct_class = Types::TransitGatewayAttachmentAssociation
18672
18711
 
@@ -18917,6 +18956,7 @@ module Aws::EC2
18917
18956
  TransitGatewayPolicyTableEntry.add_member(:policy_rule_number, Shapes::ShapeRef.new(shape: String, location_name: "policyRuleNumber"))
18918
18957
  TransitGatewayPolicyTableEntry.add_member(:policy_rule, Shapes::ShapeRef.new(shape: TransitGatewayPolicyRule, location_name: "policyRule"))
18919
18958
  TransitGatewayPolicyTableEntry.add_member(:target_route_table_id, Shapes::ShapeRef.new(shape: TransitGatewayRouteTableId, location_name: "targetRouteTableId"))
18959
+ TransitGatewayPolicyTableEntry.add_member(:state, Shapes::ShapeRef.new(shape: TransitGatewayPolicyTableEntryState, location_name: "state"))
18920
18960
  TransitGatewayPolicyTableEntry.struct_class = Types::TransitGatewayPolicyTableEntry
18921
18961
 
18922
18962
  TransitGatewayPolicyTableEntryList.member = Shapes::ShapeRef.new(shape: TransitGatewayPolicyTableEntry, location_name: "item")
@@ -18959,6 +18999,18 @@ module Aws::EC2
18959
18999
  TransitGatewayRequestOptions.add_member(:transit_gateway_cidr_blocks, Shapes::ShapeRef.new(shape: TransitGatewayCidrBlockStringList, location_name: "TransitGatewayCidrBlocks"))
18960
19000
  TransitGatewayRequestOptions.struct_class = Types::TransitGatewayRequestOptions
18961
19001
 
19002
+ TransitGatewayRequestPolicyRule.add_member(:source_cidr_block, Shapes::ShapeRef.new(shape: String, location_name: "SourceCidrBlock"))
19003
+ TransitGatewayRequestPolicyRule.add_member(:source_port_range, Shapes::ShapeRef.new(shape: String, location_name: "SourcePortRange"))
19004
+ TransitGatewayRequestPolicyRule.add_member(:destination_cidr_block, Shapes::ShapeRef.new(shape: String, location_name: "DestinationCidrBlock"))
19005
+ TransitGatewayRequestPolicyRule.add_member(:destination_port_range, Shapes::ShapeRef.new(shape: String, location_name: "DestinationPortRange"))
19006
+ TransitGatewayRequestPolicyRule.add_member(:protocol, Shapes::ShapeRef.new(shape: String, location_name: "Protocol"))
19007
+ TransitGatewayRequestPolicyRule.add_member(:meta_data, Shapes::ShapeRef.new(shape: TransitGatewayRequestPolicyRuleMetaData, location_name: "MetaData"))
19008
+ TransitGatewayRequestPolicyRule.struct_class = Types::TransitGatewayRequestPolicyRule
19009
+
19010
+ TransitGatewayRequestPolicyRuleMetaData.add_member(:meta_data_key, Shapes::ShapeRef.new(shape: String, location_name: "MetaDataKey"))
19011
+ TransitGatewayRequestPolicyRuleMetaData.add_member(:meta_data_value, Shapes::ShapeRef.new(shape: String, location_name: "MetaDataValue"))
19012
+ TransitGatewayRequestPolicyRuleMetaData.struct_class = Types::TransitGatewayRequestPolicyRuleMetaData
19013
+
18962
19014
  TransitGatewayRoute.add_member(:destination_cidr_block, Shapes::ShapeRef.new(shape: String, location_name: "destinationCidrBlock"))
18963
19015
  TransitGatewayRoute.add_member(:prefix_list_id, Shapes::ShapeRef.new(shape: PrefixListResourceId, location_name: "prefixListId"))
18964
19016
  TransitGatewayRoute.add_member(:transit_gateway_route_table_announcement_id, Shapes::ShapeRef.new(shape: TransitGatewayRouteTableAnnouncementId, location_name: "transitGatewayRouteTableAnnouncementId"))
@@ -21187,6 +21239,14 @@ module Aws::EC2
21187
21239
  o.output = Shapes::ShapeRef.new(shape: CreateTransitGatewayPolicyTableResult)
21188
21240
  end)
21189
21241
 
21242
+ api.add_operation(:create_transit_gateway_policy_table_entry, Seahorse::Model::Operation.new.tap do |o|
21243
+ o.name = "CreateTransitGatewayPolicyTableEntry"
21244
+ o.http_method = "POST"
21245
+ o.http_request_uri = "/"
21246
+ o.input = Shapes::ShapeRef.new(shape: CreateTransitGatewayPolicyTableEntryRequest)
21247
+ o.output = Shapes::ShapeRef.new(shape: CreateTransitGatewayPolicyTableEntryResult)
21248
+ end)
21249
+
21190
21250
  api.add_operation(:create_transit_gateway_prefix_list_reference, Seahorse::Model::Operation.new.tap do |o|
21191
21251
  o.name = "CreateTransitGatewayPrefixListReference"
21192
21252
  o.http_method = "POST"
@@ -21931,6 +21991,14 @@ module Aws::EC2
21931
21991
  o.output = Shapes::ShapeRef.new(shape: DeleteTransitGatewayPolicyTableResult)
21932
21992
  end)
21933
21993
 
21994
+ api.add_operation(:delete_transit_gateway_policy_table_entry, Seahorse::Model::Operation.new.tap do |o|
21995
+ o.name = "DeleteTransitGatewayPolicyTableEntry"
21996
+ o.http_method = "POST"
21997
+ o.http_request_uri = "/"
21998
+ o.input = Shapes::ShapeRef.new(shape: DeleteTransitGatewayPolicyTableEntryRequest)
21999
+ o.output = Shapes::ShapeRef.new(shape: DeleteTransitGatewayPolicyTableEntryResult)
22000
+ end)
22001
+
21934
22002
  api.add_operation(:delete_transit_gateway_prefix_list_reference, Seahorse::Model::Operation.new.tap do |o|
21935
22003
  o.name = "DeleteTransitGatewayPrefixListReference"
21936
22004
  o.http_method = "POST"
@@ -25696,6 +25764,12 @@ module Aws::EC2
25696
25764
  o.http_request_uri = "/"
25697
25765
  o.input = Shapes::ShapeRef.new(shape: GetTransitGatewayPolicyTableEntriesRequest)
25698
25766
  o.output = Shapes::ShapeRef.new(shape: GetTransitGatewayPolicyTableEntriesResult)
25767
+ o[:pager] = Aws::Pager.new(
25768
+ limit_key: "max_results",
25769
+ tokens: {
25770
+ "next_token" => "next_token"
25771
+ }
25772
+ )
25699
25773
  end)
25700
25774
 
25701
25775
  api.add_operation(:get_transit_gateway_prefix_list_references, Seahorse::Model::Operation.new.tap do |o|
@@ -26326,6 +26400,14 @@ module Aws::EC2
26326
26400
  o.output = Shapes::ShapeRef.new(shape: ModifyTransitGatewayMeteringPolicyResult)
26327
26401
  end)
26328
26402
 
26403
+ api.add_operation(:modify_transit_gateway_policy_table_entry, Seahorse::Model::Operation.new.tap do |o|
26404
+ o.name = "ModifyTransitGatewayPolicyTableEntry"
26405
+ o.http_method = "POST"
26406
+ o.http_request_uri = "/"
26407
+ o.input = Shapes::ShapeRef.new(shape: ModifyTransitGatewayPolicyTableEntryRequest)
26408
+ o.output = Shapes::ShapeRef.new(shape: ModifyTransitGatewayPolicyTableEntryResult)
26409
+ end)
26410
+
26329
26411
  api.add_operation(:modify_transit_gateway_prefix_list_reference, Seahorse::Model::Operation.new.tap do |o|
26330
26412
  o.name = "ModifyTransitGatewayPrefixListReference"
26331
26413
  o.http_method = "POST"
@@ -15786,6 +15786,55 @@ module Aws::EC2
15786
15786
  include Aws::Structure
15787
15787
  end
15788
15788
 
15789
+ # @!attribute [rw] transit_gateway_policy_table_id
15790
+ # The ID of the transit gateway policy table.
15791
+ # @return [String]
15792
+ #
15793
+ # @!attribute [rw] policy_rule_number
15794
+ # The rule number for the policy table entry. Lower rule numbers are
15795
+ # evaluated first and take precedence.
15796
+ # @return [String]
15797
+ #
15798
+ # @!attribute [rw] policy_rule
15799
+ # The matching criteria for the policy table entry.
15800
+ # @return [Types::TransitGatewayRequestPolicyRule]
15801
+ #
15802
+ # @!attribute [rw] target_route_table_id
15803
+ # The ID of the transit gateway route table to use for traffic
15804
+ # matching this rule.
15805
+ # @return [String]
15806
+ #
15807
+ # @!attribute [rw] dry_run
15808
+ # Checks whether you have the required permissions for the action,
15809
+ # without actually making the request, and provides an error response.
15810
+ # If you have the required permissions, the error response is
15811
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
15812
+ # @return [Boolean]
15813
+ #
15814
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayPolicyTableEntryRequest AWS API Documentation
15815
+ #
15816
+ class CreateTransitGatewayPolicyTableEntryRequest < Struct.new(
15817
+ :transit_gateway_policy_table_id,
15818
+ :policy_rule_number,
15819
+ :policy_rule,
15820
+ :target_route_table_id,
15821
+ :dry_run)
15822
+ SENSITIVE = []
15823
+ include Aws::Structure
15824
+ end
15825
+
15826
+ # @!attribute [rw] transit_gateway_policy_table_entry
15827
+ # Describes a transit gateway policy table entry
15828
+ # @return [Types::TransitGatewayPolicyTableEntry]
15829
+ #
15830
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayPolicyTableEntryResult AWS API Documentation
15831
+ #
15832
+ class CreateTransitGatewayPolicyTableEntryResult < Struct.new(
15833
+ :transit_gateway_policy_table_entry)
15834
+ SENSITIVE = []
15835
+ include Aws::Structure
15836
+ end
15837
+
15789
15838
  # @!attribute [rw] transit_gateway_id
15790
15839
  # The ID of the transit gateway used for the policy table.
15791
15840
  # @return [String]
@@ -16107,7 +16156,13 @@ module Aws::EC2
16107
16156
  # @return [String]
16108
16157
  #
16109
16158
  # @!attribute [rw] ipv_6_support
16110
- # Enable or disable IPv6 support. The default is `disable`.
16159
+ # Specifies whether IPv6 support is enabled for the attachment. When
16160
+ # enabled, the transit gateway network interface receives an IPv6
16161
+ # address. When you enable route propagation, IPv6 VPC CIDRs propagate
16162
+ # to the transit gateway route tables. When disabled, the network
16163
+ # interface does not receive an IPv6 address, and IPv6 routes do not
16164
+ # propagate. The setting does not filter IPv6 traffic. The default is
16165
+ # `disable`.
16111
16166
  # @return [String]
16112
16167
  #
16113
16168
  # @!attribute [rw] appliance_mode_support
@@ -20716,6 +20771,43 @@ module Aws::EC2
20716
20771
  include Aws::Structure
20717
20772
  end
20718
20773
 
20774
+ # @!attribute [rw] transit_gateway_policy_table_id
20775
+ # The ID of the transit gateway policy table.
20776
+ # @return [String]
20777
+ #
20778
+ # @!attribute [rw] policy_rule_number
20779
+ # The rule number of the policy table entry to delete.
20780
+ # @return [String]
20781
+ #
20782
+ # @!attribute [rw] dry_run
20783
+ # Checks whether you have the required permissions for the action,
20784
+ # without actually making the request, and provides an error response.
20785
+ # If you have the required permissions, the error response is
20786
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
20787
+ # @return [Boolean]
20788
+ #
20789
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayPolicyTableEntryRequest AWS API Documentation
20790
+ #
20791
+ class DeleteTransitGatewayPolicyTableEntryRequest < Struct.new(
20792
+ :transit_gateway_policy_table_id,
20793
+ :policy_rule_number,
20794
+ :dry_run)
20795
+ SENSITIVE = []
20796
+ include Aws::Structure
20797
+ end
20798
+
20799
+ # @!attribute [rw] transit_gateway_policy_table_entry
20800
+ # Describes a transit gateway policy table entry
20801
+ # @return [Types::TransitGatewayPolicyTableEntry]
20802
+ #
20803
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayPolicyTableEntryResult AWS API Documentation
20804
+ #
20805
+ class DeleteTransitGatewayPolicyTableEntryResult < Struct.new(
20806
+ :transit_gateway_policy_table_entry)
20807
+ SENSITIVE = []
20808
+ include Aws::Structure
20809
+ end
20810
+
20719
20811
  # @!attribute [rw] transit_gateway_policy_table_id
20720
20812
  # The transit gateway policy table to delete.
20721
20813
  # @return [String]
@@ -47407,7 +47499,32 @@ module Aws::EC2
47407
47499
  # @return [String]
47408
47500
  #
47409
47501
  # @!attribute [rw] filters
47410
- # The filters associated with the transit gateway policy table.
47502
+ # One or more filters. The possible values are:
47503
+ #
47504
+ # * `policy-rule-number` - The rule number for the transit gateway
47505
+ # policy table entry.
47506
+ #
47507
+ # * `target-route-table-id` - The ID of the target route table.
47508
+ #
47509
+ # * `policy-rule.source-ip` - The source CIDR block for the policy
47510
+ # rule.
47511
+ #
47512
+ # * `policy-rule.destination-ip` - The destination CIDR block for the
47513
+ # policy rule.
47514
+ #
47515
+ # * `policy-rule.source-port` - The source port or port range for the
47516
+ # policy rule.
47517
+ #
47518
+ # * `policy-rule.destination-port` - The destination port or port
47519
+ # range for the policy rule.
47520
+ #
47521
+ # * `policy-rule.protocol` - The protocol for the policy rule.
47522
+ #
47523
+ # * `policy-rule.meta-data.key` - The metadata key for the policy
47524
+ # rule.
47525
+ #
47526
+ # * `policy-rule.meta-data.value` - The metadata value for the policy
47527
+ # rule.
47411
47528
  # @return [Array<Types::Filter>]
47412
47529
  #
47413
47530
  # @!attribute [rw] max_results
@@ -47443,10 +47560,16 @@ module Aws::EC2
47443
47560
  # The entries for the transit gateway policy table.
47444
47561
  # @return [Array<Types::TransitGatewayPolicyTableEntry>]
47445
47562
  #
47563
+ # @!attribute [rw] next_token
47564
+ # The token to use to retrieve the next page of results. This value is
47565
+ # `null` when there are no more results to return.
47566
+ # @return [String]
47567
+ #
47446
47568
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetTransitGatewayPolicyTableEntriesResult AWS API Documentation
47447
47569
  #
47448
47570
  class GetTransitGatewayPolicyTableEntriesResult < Struct.new(
47449
- :transit_gateway_policy_table_entries)
47571
+ :transit_gateway_policy_table_entries,
47572
+ :next_token)
47450
47573
  SENSITIVE = []
47451
47574
  include Aws::Structure
47452
47575
  end
@@ -65133,6 +65256,55 @@ module Aws::EC2
65133
65256
  include Aws::Structure
65134
65257
  end
65135
65258
 
65259
+ # @!attribute [rw] transit_gateway_policy_table_id
65260
+ # The ID of the transit gateway policy table.
65261
+ # @return [String]
65262
+ #
65263
+ # @!attribute [rw] policy_rule_number
65264
+ # The rule number of the policy table entry to modify.
65265
+ # @return [String]
65266
+ #
65267
+ # @!attribute [rw] policy_rule
65268
+ # The updated matching criteria for the policy table entry.
65269
+ # Unspecified fields retain their current values.
65270
+ # @return [Types::TransitGatewayRequestPolicyRule]
65271
+ #
65272
+ # @!attribute [rw] target_route_table_id
65273
+ # The ID of the transit gateway route table to use for traffic
65274
+ # matching this rule.
65275
+ # @return [String]
65276
+ #
65277
+ # @!attribute [rw] dry_run
65278
+ # Checks whether you have the required permissions for the action,
65279
+ # without actually making the request, and provides an error response.
65280
+ # If you have the required permissions, the error response is
65281
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
65282
+ # @return [Boolean]
65283
+ #
65284
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyTransitGatewayPolicyTableEntryRequest AWS API Documentation
65285
+ #
65286
+ class ModifyTransitGatewayPolicyTableEntryRequest < Struct.new(
65287
+ :transit_gateway_policy_table_id,
65288
+ :policy_rule_number,
65289
+ :policy_rule,
65290
+ :target_route_table_id,
65291
+ :dry_run)
65292
+ SENSITIVE = []
65293
+ include Aws::Structure
65294
+ end
65295
+
65296
+ # @!attribute [rw] transit_gateway_policy_table_entry
65297
+ # Describes a transit gateway policy table entry
65298
+ # @return [Types::TransitGatewayPolicyTableEntry]
65299
+ #
65300
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyTransitGatewayPolicyTableEntryResult AWS API Documentation
65301
+ #
65302
+ class ModifyTransitGatewayPolicyTableEntryResult < Struct.new(
65303
+ :transit_gateway_policy_table_entry)
65304
+ SENSITIVE = []
65305
+ include Aws::Structure
65306
+ end
65307
+
65136
65308
  # @!attribute [rw] transit_gateway_route_table_id
65137
65309
  # The ID of the transit gateway route table.
65138
65310
  # @return [String]
@@ -65280,7 +65452,12 @@ module Aws::EC2
65280
65452
  # @return [String]
65281
65453
  #
65282
65454
  # @!attribute [rw] ipv_6_support
65283
- # Enable or disable IPv6 support. The default is `enable`.
65455
+ # Specifies whether IPv6 support is enabled for the attachment. When
65456
+ # enabled, the transit gateway network interface receives an IPv6
65457
+ # address. When you enable route propagation, IPv6 VPC CIDRs propagate
65458
+ # to the transit gateway route tables. When disabled, the network
65459
+ # interface does not receive an IPv6 address, and IPv6 routes do not
65460
+ # propagate. The setting does not filter IPv6 traffic.
65284
65461
  # @return [String]
65285
65462
  #
65286
65463
  # @!attribute [rw] appliance_mode_support
@@ -83193,6 +83370,11 @@ module Aws::EC2
83193
83370
  # The ID of the route table for the transit gateway.
83194
83371
  # @return [String]
83195
83372
  #
83373
+ # @!attribute [rw] transit_gateway_policy_table_id
83374
+ # The ID of the transit gateway policy table associated with the
83375
+ # attachment.
83376
+ # @return [String]
83377
+ #
83196
83378
  # @!attribute [rw] state
83197
83379
  # The state of the association.
83198
83380
  # @return [String]
@@ -83201,6 +83383,7 @@ module Aws::EC2
83201
83383
  #
83202
83384
  class TransitGatewayAttachmentAssociation < Struct.new(
83203
83385
  :transit_gateway_route_table_id,
83386
+ :transit_gateway_policy_table_id,
83204
83387
  :state)
83205
83388
  SENSITIVE = []
83206
83389
  include Aws::Structure
@@ -84123,8 +84306,7 @@ module Aws::EC2
84123
84306
  # @return [String]
84124
84307
  #
84125
84308
  # @!attribute [rw] source_port_range
84126
- # The port range for the transit gateway policy rule. Currently this
84127
- # is set to * (all).
84309
+ # The source port or port range for the transit gateway policy rule.
84128
84310
  # @return [String]
84129
84311
  #
84130
84312
  # @!attribute [rw] destination_cidr_block
@@ -84132,8 +84314,8 @@ module Aws::EC2
84132
84314
  # @return [String]
84133
84315
  #
84134
84316
  # @!attribute [rw] destination_port_range
84135
- # The port range for the transit gateway policy rule. Currently this
84136
- # is set to * (all).
84317
+ # The destination port or port range for the transit gateway policy
84318
+ # rule.
84137
84319
  # @return [String]
84138
84320
  #
84139
84321
  # @!attribute [rw] protocol
@@ -84260,12 +84442,17 @@ module Aws::EC2
84260
84442
  # The ID of the target route table.
84261
84443
  # @return [String]
84262
84444
  #
84445
+ # @!attribute [rw] state
84446
+ # The state of the transit gateway policy table entry.
84447
+ # @return [String]
84448
+ #
84263
84449
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayPolicyTableEntry AWS API Documentation
84264
84450
  #
84265
84451
  class TransitGatewayPolicyTableEntry < Struct.new(
84266
84452
  :policy_rule_number,
84267
84453
  :policy_rule,
84268
- :target_route_table_id)
84454
+ :target_route_table_id,
84455
+ :state)
84269
84456
  SENSITIVE = []
84270
84457
  include Aws::Structure
84271
84458
  end
@@ -84447,6 +84634,69 @@ module Aws::EC2
84447
84634
  include Aws::Structure
84448
84635
  end
84449
84636
 
84637
+ # The matching criteria for a transit gateway policy table entry.
84638
+ #
84639
+ # @!attribute [rw] source_cidr_block
84640
+ # The source CIDR block for the policy rule.
84641
+ # @return [String]
84642
+ #
84643
+ # @!attribute [rw] source_port_range
84644
+ # The source port or port range for the policy rule. You can specify a
84645
+ # port range only when `Protocol` is `6` (TCP) or `17` (UDP); for all
84646
+ # other protocols, this value must be `*`.
84647
+ # @return [String]
84648
+ #
84649
+ # @!attribute [rw] destination_cidr_block
84650
+ # The destination CIDR block for the policy rule.
84651
+ # @return [String]
84652
+ #
84653
+ # @!attribute [rw] destination_port_range
84654
+ # The destination port or port range for the policy rule. You can
84655
+ # specify a port range only when `Protocol` is `6` (TCP) or `17`
84656
+ # (UDP); for all other protocols, this value must be `*`.
84657
+ # @return [String]
84658
+ #
84659
+ # @!attribute [rw] protocol
84660
+ # The protocol for the policy rule. Valid values are `1` (ICMP), `6`
84661
+ # (TCP), `17` (UDP), `47` (GRE), or `*` for all protocols.
84662
+ # @return [String]
84663
+ #
84664
+ # @!attribute [rw] meta_data
84665
+ # The metadata key-value pair for the policy rule.
84666
+ # @return [Types::TransitGatewayRequestPolicyRuleMetaData]
84667
+ #
84668
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayRequestPolicyRule AWS API Documentation
84669
+ #
84670
+ class TransitGatewayRequestPolicyRule < Struct.new(
84671
+ :source_cidr_block,
84672
+ :source_port_range,
84673
+ :destination_cidr_block,
84674
+ :destination_port_range,
84675
+ :protocol,
84676
+ :meta_data)
84677
+ SENSITIVE = []
84678
+ include Aws::Structure
84679
+ end
84680
+
84681
+ # A metadata key-value pair for a transit gateway policy rule.
84682
+ #
84683
+ # @!attribute [rw] meta_data_key
84684
+ # The key of the metadata pair for the policy rule.
84685
+ # @return [String]
84686
+ #
84687
+ # @!attribute [rw] meta_data_value
84688
+ # The value of the metadata pair for the policy rule.
84689
+ # @return [String]
84690
+ #
84691
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayRequestPolicyRuleMetaData AWS API Documentation
84692
+ #
84693
+ class TransitGatewayRequestPolicyRuleMetaData < Struct.new(
84694
+ :meta_data_key,
84695
+ :meta_data_value)
84696
+ SENSITIVE = []
84697
+ include Aws::Structure
84698
+ end
84699
+
84450
84700
  # Describes a route for a transit gateway route table.
84451
84701
  #
84452
84702
  # @!attribute [rw] destination_cidr_block
data/lib/aws-sdk-ec2.rb CHANGED
@@ -78,7 +78,7 @@ module Aws::EC2
78
78
  autoload :VpcPeeringConnection, 'aws-sdk-ec2/vpc_peering_connection'
79
79
  autoload :VpcAddress, 'aws-sdk-ec2/vpc_address'
80
80
 
81
- GEM_VERSION = '1.632.0'
81
+ GEM_VERSION = '1.633.0'
82
82
 
83
83
  end
84
84
 
data/sig/client.rbs CHANGED
@@ -3434,6 +3434,20 @@ module Aws
3434
3434
  ) -> _CreateTransitGatewayPolicyTableResponseSuccess
3435
3435
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateTransitGatewayPolicyTableResponseSuccess
3436
3436
 
3437
+ interface _CreateTransitGatewayPolicyTableEntryResponseSuccess
3438
+ include ::Seahorse::Client::_ResponseSuccess[Types::CreateTransitGatewayPolicyTableEntryResult]
3439
+ def transit_gateway_policy_table_entry: () -> Types::TransitGatewayPolicyTableEntry
3440
+ end
3441
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Client.html#create_transit_gateway_policy_table_entry-instance_method
3442
+ def create_transit_gateway_policy_table_entry: (
3443
+ transit_gateway_policy_table_id: ::String,
3444
+ policy_rule_number: ::String,
3445
+ ?policy_rule: Params::transit_gateway_request_policy_rule,
3446
+ target_route_table_id: ::String,
3447
+ ?dry_run: bool
3448
+ ) -> _CreateTransitGatewayPolicyTableEntryResponseSuccess
3449
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateTransitGatewayPolicyTableEntryResponseSuccess
3450
+
3437
3451
  interface _CreateTransitGatewayPrefixListReferenceResponseSuccess
3438
3452
  include ::Seahorse::Client::_ResponseSuccess[Types::CreateTransitGatewayPrefixListReferenceResult]
3439
3453
  def transit_gateway_prefix_list_reference: () -> Types::TransitGatewayPrefixListReference
@@ -4907,6 +4921,18 @@ module Aws
4907
4921
  ) -> _DeleteTransitGatewayPolicyTableResponseSuccess
4908
4922
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DeleteTransitGatewayPolicyTableResponseSuccess
4909
4923
 
4924
+ interface _DeleteTransitGatewayPolicyTableEntryResponseSuccess
4925
+ include ::Seahorse::Client::_ResponseSuccess[Types::DeleteTransitGatewayPolicyTableEntryResult]
4926
+ def transit_gateway_policy_table_entry: () -> Types::TransitGatewayPolicyTableEntry
4927
+ end
4928
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Client.html#delete_transit_gateway_policy_table_entry-instance_method
4929
+ def delete_transit_gateway_policy_table_entry: (
4930
+ transit_gateway_policy_table_id: ::String,
4931
+ policy_rule_number: ::String,
4932
+ ?dry_run: bool
4933
+ ) -> _DeleteTransitGatewayPolicyTableEntryResponseSuccess
4934
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DeleteTransitGatewayPolicyTableEntryResponseSuccess
4935
+
4910
4936
  interface _DeleteTransitGatewayPrefixListReferenceResponseSuccess
4911
4937
  include ::Seahorse::Client::_ResponseSuccess[Types::DeleteTransitGatewayPrefixListReferenceResult]
4912
4938
  def transit_gateway_prefix_list_reference: () -> Types::TransitGatewayPrefixListReference
@@ -10758,6 +10784,7 @@ module Aws
10758
10784
  interface _GetTransitGatewayPolicyTableEntriesResponseSuccess
10759
10785
  include ::Seahorse::Client::_ResponseSuccess[Types::GetTransitGatewayPolicyTableEntriesResult]
10760
10786
  def transit_gateway_policy_table_entries: () -> ::Array[Types::TransitGatewayPolicyTableEntry]
10787
+ def next_token: () -> ::String
10761
10788
  end
10762
10789
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Client.html#get_transit_gateway_policy_table_entries-instance_method
10763
10790
  def get_transit_gateway_policy_table_entries: (
@@ -12241,6 +12268,20 @@ module Aws
12241
12268
  ) -> _ModifyTransitGatewayMeteringPolicyResponseSuccess
12242
12269
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _ModifyTransitGatewayMeteringPolicyResponseSuccess
12243
12270
 
12271
+ interface _ModifyTransitGatewayPolicyTableEntryResponseSuccess
12272
+ include ::Seahorse::Client::_ResponseSuccess[Types::ModifyTransitGatewayPolicyTableEntryResult]
12273
+ def transit_gateway_policy_table_entry: () -> Types::TransitGatewayPolicyTableEntry
12274
+ end
12275
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Client.html#modify_transit_gateway_policy_table_entry-instance_method
12276
+ def modify_transit_gateway_policy_table_entry: (
12277
+ transit_gateway_policy_table_id: ::String,
12278
+ policy_rule_number: ::String,
12279
+ ?policy_rule: Params::transit_gateway_request_policy_rule,
12280
+ ?target_route_table_id: ::String,
12281
+ ?dry_run: bool
12282
+ ) -> _ModifyTransitGatewayPolicyTableEntryResponseSuccess
12283
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _ModifyTransitGatewayPolicyTableEntryResponseSuccess
12284
+
12244
12285
  interface _ModifyTransitGatewayPrefixListReferenceResponseSuccess
12245
12286
  include ::Seahorse::Client::_ResponseSuccess[Types::ModifyTransitGatewayPrefixListReferenceResult]
12246
12287
  def transit_gateway_prefix_list_reference: () -> Types::TransitGatewayPrefixListReference
data/sig/params.rbs CHANGED
@@ -482,6 +482,18 @@ module Aws
482
482
  }?
483
483
  }
484
484
 
485
+ type transit_gateway_request_policy_rule = {
486
+ source_cidr_block: ::String?,
487
+ source_port_range: ::String?,
488
+ destination_cidr_block: ::String?,
489
+ destination_port_range: ::String?,
490
+ protocol: ::String?,
491
+ meta_data: {
492
+ meta_data_key: ::String?,
493
+ meta_data_value: ::String?
494
+ }?
495
+ }
496
+
485
497
  type cloud_watch_log_options_specification = {
486
498
  log_enabled: bool?,
487
499
  log_group_arn: ::String?,
data/sig/types.rbs CHANGED
@@ -3410,6 +3410,20 @@ module Aws::EC2
3410
3410
  SENSITIVE: []
3411
3411
  end
3412
3412
 
3413
+ class CreateTransitGatewayPolicyTableEntryRequest
3414
+ attr_accessor transit_gateway_policy_table_id: ::String
3415
+ attr_accessor policy_rule_number: ::String
3416
+ attr_accessor policy_rule: Types::TransitGatewayRequestPolicyRule
3417
+ attr_accessor target_route_table_id: ::String
3418
+ attr_accessor dry_run: bool
3419
+ SENSITIVE: []
3420
+ end
3421
+
3422
+ class CreateTransitGatewayPolicyTableEntryResult
3423
+ attr_accessor transit_gateway_policy_table_entry: Types::TransitGatewayPolicyTableEntry
3424
+ SENSITIVE: []
3425
+ end
3426
+
3413
3427
  class CreateTransitGatewayPolicyTableRequest
3414
3428
  attr_accessor transit_gateway_id: ::String
3415
3429
  attr_accessor tag_specifications: ::Array[Types::TagSpecification]
@@ -4723,6 +4737,18 @@ module Aws::EC2
4723
4737
  SENSITIVE: []
4724
4738
  end
4725
4739
 
4740
+ class DeleteTransitGatewayPolicyTableEntryRequest
4741
+ attr_accessor transit_gateway_policy_table_id: ::String
4742
+ attr_accessor policy_rule_number: ::String
4743
+ attr_accessor dry_run: bool
4744
+ SENSITIVE: []
4745
+ end
4746
+
4747
+ class DeleteTransitGatewayPolicyTableEntryResult
4748
+ attr_accessor transit_gateway_policy_table_entry: Types::TransitGatewayPolicyTableEntry
4749
+ SENSITIVE: []
4750
+ end
4751
+
4726
4752
  class DeleteTransitGatewayPolicyTableRequest
4727
4753
  attr_accessor transit_gateway_policy_table_id: ::String
4728
4754
  attr_accessor dry_run: bool
@@ -10461,6 +10487,7 @@ module Aws::EC2
10461
10487
 
10462
10488
  class GetTransitGatewayPolicyTableEntriesResult
10463
10489
  attr_accessor transit_gateway_policy_table_entries: ::Array[Types::TransitGatewayPolicyTableEntry]
10490
+ attr_accessor next_token: ::String
10464
10491
  SENSITIVE: []
10465
10492
  end
10466
10493
 
@@ -13960,6 +13987,20 @@ module Aws::EC2
13960
13987
  SENSITIVE: []
13961
13988
  end
13962
13989
 
13990
+ class ModifyTransitGatewayPolicyTableEntryRequest
13991
+ attr_accessor transit_gateway_policy_table_id: ::String
13992
+ attr_accessor policy_rule_number: ::String
13993
+ attr_accessor policy_rule: Types::TransitGatewayRequestPolicyRule
13994
+ attr_accessor target_route_table_id: ::String
13995
+ attr_accessor dry_run: bool
13996
+ SENSITIVE: []
13997
+ end
13998
+
13999
+ class ModifyTransitGatewayPolicyTableEntryResult
14000
+ attr_accessor transit_gateway_policy_table_entry: Types::TransitGatewayPolicyTableEntry
14001
+ SENSITIVE: []
14002
+ end
14003
+
13963
14004
  class ModifyTransitGatewayPrefixListReferenceRequest
13964
14005
  attr_accessor transit_gateway_route_table_id: ::String
13965
14006
  attr_accessor prefix_list_id: ::String
@@ -17844,6 +17885,7 @@ module Aws::EC2
17844
17885
 
17845
17886
  class TransitGatewayAttachmentAssociation
17846
17887
  attr_accessor transit_gateway_route_table_id: ::String
17888
+ attr_accessor transit_gateway_policy_table_id: ::String
17847
17889
  attr_accessor state: ("associating" | "associated" | "disassociating" | "disassociated")
17848
17890
  SENSITIVE: []
17849
17891
  end
@@ -18114,6 +18156,7 @@ module Aws::EC2
18114
18156
  attr_accessor policy_rule_number: ::String
18115
18157
  attr_accessor policy_rule: Types::TransitGatewayPolicyRule
18116
18158
  attr_accessor target_route_table_id: ::String
18159
+ attr_accessor state: ("active" | "deleted")
18117
18160
  SENSITIVE: []
18118
18161
  end
18119
18162
 
@@ -18157,6 +18200,22 @@ module Aws::EC2
18157
18200
  SENSITIVE: []
18158
18201
  end
18159
18202
 
18203
+ class TransitGatewayRequestPolicyRule
18204
+ attr_accessor source_cidr_block: ::String
18205
+ attr_accessor source_port_range: ::String
18206
+ attr_accessor destination_cidr_block: ::String
18207
+ attr_accessor destination_port_range: ::String
18208
+ attr_accessor protocol: ::String
18209
+ attr_accessor meta_data: Types::TransitGatewayRequestPolicyRuleMetaData
18210
+ SENSITIVE: []
18211
+ end
18212
+
18213
+ class TransitGatewayRequestPolicyRuleMetaData
18214
+ attr_accessor meta_data_key: ::String
18215
+ attr_accessor meta_data_value: ::String
18216
+ SENSITIVE: []
18217
+ end
18218
+
18160
18219
  class TransitGatewayRoute
18161
18220
  attr_accessor destination_cidr_block: ::String
18162
18221
  attr_accessor prefix_list_id: ::String
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-ec2
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.632.0
4
+ version: 1.633.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services