aws-sdk-networkfirewall 1.101.0 → 1.102.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.
@@ -0,0 +1,120 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ require 'aws-sdk-core/waiters'
11
+
12
+ module Aws::NetworkFirewall
13
+ # Waiters are utility methods that poll for a particular state to occur
14
+ # on a client. Waiters can fail after a number of attempts at a polling
15
+ # interval defined for the service client.
16
+ #
17
+ # For a list of operations that can be waited for and the
18
+ # client methods called for each operation, see the table below or the
19
+ # {Client#wait_until} field documentation for the {Client}.
20
+ #
21
+ # # Invoking a Waiter
22
+ # To invoke a waiter, call #wait_until on a {Client}. The first parameter
23
+ # is the waiter name, which is specific to the service client and indicates
24
+ # which operation is being waited for. The second parameter is a hash of
25
+ # parameters that are passed to the client method called by the waiter,
26
+ # which varies according to the waiter name.
27
+ #
28
+ # # Wait Failures
29
+ # To catch errors in a waiter, use WaiterFailed,
30
+ # as shown in the following example.
31
+ #
32
+ # rescue rescue Aws::Waiters::Errors::WaiterFailed => error
33
+ # puts "failed waiting for instance running: #{error.message}
34
+ # end
35
+ #
36
+ # # Configuring a Waiter
37
+ # Each waiter has a default polling interval and a maximum number of
38
+ # attempts it will make before returning control to your program.
39
+ # To set these values, use the `max_attempts` and `delay` parameters
40
+ # in your `#wait_until` call.
41
+ # The following example waits for up to 25 seconds, polling every five seconds.
42
+ #
43
+ # client.wait_until(...) do |w|
44
+ # w.max_attempts = 5
45
+ # w.delay = 5
46
+ # end
47
+ #
48
+ # To disable wait failures, set the value of either of these parameters
49
+ # to `nil`.
50
+ #
51
+ # # Extending a Waiter
52
+ # To modify the behavior of waiters, you can register callbacks that are
53
+ # triggered before each polling attempt and before waiting.
54
+ #
55
+ # The following example implements an exponential backoff in a waiter
56
+ # by doubling the amount of time to wait on every attempt.
57
+ #
58
+ # client.wait_until(...) do |w|
59
+ # w.interval = 0 # disable normal sleep
60
+ # w.before_wait do |n, resp|
61
+ # sleep(n ** 2)
62
+ # end
63
+ # end
64
+ #
65
+ # # Available Waiters
66
+ #
67
+ # The following table lists the valid waiter names, the operations they call,
68
+ # and the default `:delay` and `:max_attempts` values.
69
+ #
70
+ # | waiter_name | params | :delay | :max_attempts |
71
+ # | ---------------------- | --------------------------------- | -------- | ------------- |
72
+ # | firewall_policy_active | {Client#describe_firewall_policy} | 15 | 40 |
73
+ #
74
+ module Waiters
75
+
76
+ class FirewallPolicyActive
77
+
78
+ # @param [Hash] options
79
+ # @option options [required, Client] :client
80
+ # @option options [Integer] :max_attempts (40)
81
+ # @option options [Integer] :delay (15)
82
+ # @option options [Proc] :before_attempt
83
+ # @option options [Proc] :before_wait
84
+ def initialize(options)
85
+ @client = options.fetch(:client)
86
+ @waiter = Aws::Waiters::Waiter.new({
87
+ max_attempts: 40,
88
+ delay: 15,
89
+ poller: Aws::Waiters::Poller.new(
90
+ operation_name: :describe_firewall_policy,
91
+ acceptors: [
92
+ {
93
+ "expected" => "ACTIVE",
94
+ "matcher" => "path",
95
+ "state" => "success",
96
+ "argument" => "firewall_policy_response.firewall_policy_status"
97
+ },
98
+ {
99
+ "expected" => "ERROR",
100
+ "matcher" => "path",
101
+ "state" => "failure",
102
+ "argument" => "firewall_policy_response.firewall_policy_status"
103
+ }
104
+ ]
105
+ )
106
+ }.merge(options))
107
+ end
108
+
109
+ # @option (see Client#describe_firewall_policy)
110
+ # @return (see Client#describe_firewall_policy)
111
+ def wait(params = {})
112
+ @waiter.wait(client: @client, params: params)
113
+ end
114
+
115
+ # @api private
116
+ attr_reader :waiter
117
+
118
+ end
119
+ end
120
+ end
@@ -49,12 +49,13 @@ module Aws::NetworkFirewall
49
49
  end
50
50
  autoload :Client, 'aws-sdk-networkfirewall/client'
51
51
  autoload :Errors, 'aws-sdk-networkfirewall/errors'
52
+ autoload :Waiters, 'aws-sdk-networkfirewall/waiters'
52
53
  autoload :Resource, 'aws-sdk-networkfirewall/resource'
53
54
  autoload :EndpointParameters, 'aws-sdk-networkfirewall/endpoint_parameters'
54
55
  autoload :EndpointProvider, 'aws-sdk-networkfirewall/endpoint_provider'
55
56
  autoload :Endpoints, 'aws-sdk-networkfirewall/endpoints'
56
57
 
57
- GEM_VERSION = '1.101.0'
58
+ GEM_VERSION = '1.102.0'
58
59
 
59
60
  end
60
61
 
data/sig/client.rbs CHANGED
@@ -684,6 +684,7 @@ module Aws
684
684
  include ::Seahorse::Client::_ResponseSuccess[Types::DescribeFlowOperationResponse]
685
685
  def firewall_arn: () -> ::String
686
686
  def availability_zone: () -> ::String
687
+ def availability_zone_id: () -> ::String
687
688
  def vpc_endpoint_association_arn: () -> ::String
688
689
  def vpc_endpoint_id: () -> ::String
689
690
  def flow_operation_id: () -> ::String
@@ -697,6 +698,7 @@ module Aws
697
698
  def describe_flow_operation: (
698
699
  firewall_arn: ::String,
699
700
  ?availability_zone: ::String,
701
+ ?availability_zone_id: ::String,
700
702
  ?vpc_endpoint_association_arn: ::String,
701
703
  ?vpc_endpoint_id: ::String,
702
704
  flow_operation_id: ::String
@@ -975,6 +977,7 @@ module Aws
975
977
  include ::Seahorse::Client::_ResponseSuccess[Types::ListFlowOperationResultsResponse]
976
978
  def firewall_arn: () -> ::String
977
979
  def availability_zone: () -> ::String
980
+ def availability_zone_id: () -> ::String
978
981
  def vpc_endpoint_association_arn: () -> ::String
979
982
  def vpc_endpoint_id: () -> ::String
980
983
  def flow_operation_id: () -> ::String
@@ -991,6 +994,7 @@ module Aws
991
994
  ?next_token: ::String,
992
995
  ?max_results: ::Integer,
993
996
  ?availability_zone: ::String,
997
+ ?availability_zone_id: ::String,
994
998
  ?vpc_endpoint_id: ::String,
995
999
  ?vpc_endpoint_association_arn: ::String
996
1000
  ) -> _ListFlowOperationResultsResponseSuccess
@@ -1005,6 +1009,7 @@ module Aws
1005
1009
  def list_flow_operations: (
1006
1010
  firewall_arn: ::String,
1007
1011
  ?availability_zone: ::String,
1012
+ ?availability_zone_id: ::String,
1008
1013
  ?vpc_endpoint_association_arn: ::String,
1009
1014
  ?vpc_endpoint_id: ::String,
1010
1015
  ?flow_operation_type: ("FLOW_FLUSH" | "FLOW_CAPTURE"),
@@ -1146,6 +1151,7 @@ module Aws
1146
1151
  def start_flow_capture: (
1147
1152
  firewall_arn: ::String,
1148
1153
  ?availability_zone: ::String,
1154
+ ?availability_zone_id: ::String,
1149
1155
  ?vpc_endpoint_association_arn: ::String,
1150
1156
  ?vpc_endpoint_id: ::String,
1151
1157
  ?minimum_flow_age_in_seconds: ::Integer,
@@ -1165,6 +1171,7 @@ module Aws
1165
1171
  def start_flow_flush: (
1166
1172
  firewall_arn: ::String,
1167
1173
  ?availability_zone: ::String,
1174
+ ?availability_zone_id: ::String,
1168
1175
  ?vpc_endpoint_association_arn: ::String,
1169
1176
  ?vpc_endpoint_id: ::String,
1170
1177
  ?minimum_flow_age_in_seconds: ::Integer,
@@ -1588,6 +1595,13 @@ module Aws
1588
1595
  update_token: ::String
1589
1596
  ) -> _UpdateTLSInspectionConfigurationResponseSuccess
1590
1597
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateTLSInspectionConfigurationResponseSuccess
1598
+
1599
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/NetworkFirewall/Client.html#wait_until-instance_method
1600
+ def wait_until: (:firewall_policy_active waiter_name,
1601
+ ?firewall_policy_name: ::String,
1602
+ ?firewall_policy_arn: ::String
1603
+ ) -> Client::_DescribeFirewallPolicyResponseSuccess
1604
+ | (:firewall_policy_active waiter_name, ?Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> Client::_DescribeFirewallPolicyResponseSuccess
1591
1605
  end
1592
1606
  end
1593
1607
  end
data/sig/params.rbs CHANGED
@@ -8,6 +8,22 @@
8
8
  module Aws
9
9
  module NetworkFirewall
10
10
  module Params
11
+ type route_53_resolved_ip_validation = {
12
+ action: ("REJECT" | "DROP" | "ALERT"),
13
+ dns_firewall_rule_group_id: ::String,
14
+ dns_expiry_exception_policy: ("REJECT" | "DROP" | "CONTINUE"),
15
+ bypass_destination_validation_ip_ranges: Array[
16
+ {
17
+ address_definition: ::String
18
+ }
19
+ ]?,
20
+ source_ip_ranges: Array[
21
+ {
22
+ address_definition: ::String
23
+ }
24
+ ]?
25
+ }
26
+
11
27
  type firewall_policy = {
12
28
  stateless_rule_group_references: Array[
13
29
  {
@@ -37,7 +53,8 @@ module Aws
37
53
  definition: Array[::String]
38
54
  }]?
39
55
  }?,
40
- enable_tls_session_holding: bool?
56
+ enable_tls_session_holding: bool?,
57
+ route_53_resolved_ip_validation: Params::route_53_resolved_ip_validation?
41
58
  }
42
59
 
43
60
  type custom_action = {
@@ -111,7 +128,7 @@ module Aws
111
128
  rules_string: ::String?,
112
129
  rules_source_list: {
113
130
  targets: Array[::String],
114
- target_types: Array[("TLS_SNI" | "HTTP_HOST")],
131
+ target_types: Array[("TLS_SNI" | "HTTP_HOST" | "AWS_ROUTE_53_RESOLVED_DOMAIN")],
115
132
  generated_rules_type: ("ALLOWLIST" | "DENYLIST" | "REJECTLIST" | "ALERTLIST")
116
133
  }?,
117
134
  stateful_rules: Array[
data/sig/types.rbs CHANGED
@@ -578,6 +578,7 @@ module Aws::NetworkFirewall
578
578
  class DescribeFlowOperationRequest
579
579
  attr_accessor firewall_arn: ::String
580
580
  attr_accessor availability_zone: ::String
581
+ attr_accessor availability_zone_id: ::String
581
582
  attr_accessor vpc_endpoint_association_arn: ::String
582
583
  attr_accessor vpc_endpoint_id: ::String
583
584
  attr_accessor flow_operation_id: ::String
@@ -587,6 +588,7 @@ module Aws::NetworkFirewall
587
588
  class DescribeFlowOperationResponse
588
589
  attr_accessor firewall_arn: ::String
589
590
  attr_accessor availability_zone: ::String
591
+ attr_accessor availability_zone_id: ::String
590
592
  attr_accessor vpc_endpoint_association_arn: ::String
591
593
  attr_accessor vpc_endpoint_id: ::String
592
594
  attr_accessor flow_operation_id: ::String
@@ -867,6 +869,14 @@ module Aws::NetworkFirewall
867
869
  attr_accessor tls_inspection_configuration_arn: ::String
868
870
  attr_accessor policy_variables: Types::PolicyVariables
869
871
  attr_accessor enable_tls_session_holding: bool
872
+ attr_accessor route_53_resolved_ip_validation: Types::Route53ResolvedIPValidation
873
+ SENSITIVE: []
874
+ end
875
+
876
+ class FirewallPolicyError
877
+ attr_accessor code: ("DNS_FIREWALL_RULE_GROUP_UNAVAILABLE" | "ROUTE53_RESOLVED_IP_VALIDATION_MISSING")
878
+ attr_accessor message: ::String
879
+ attr_accessor resource_id: ::String
870
880
  SENSITIVE: []
871
881
  end
872
882
 
@@ -881,13 +891,15 @@ module Aws::NetworkFirewall
881
891
  attr_accessor firewall_policy_arn: ::String
882
892
  attr_accessor firewall_policy_id: ::String
883
893
  attr_accessor description: ::String
884
- attr_accessor firewall_policy_status: ("ACTIVE" | "DELETING" | "ERROR")
894
+ attr_accessor firewall_policy_status: ("ACTIVE" | "DELETING" | "ERROR" | "UPDATING")
895
+ attr_accessor status_message: ::String
885
896
  attr_accessor tags: ::Array[Types::Tag]
886
897
  attr_accessor consumed_stateless_rule_capacity: ::Integer
887
898
  attr_accessor consumed_stateful_rule_capacity: ::Integer
888
899
  attr_accessor consumed_stateful_domain_capacity: ::Integer
889
900
  attr_accessor number_of_associations: ::Integer
890
901
  attr_accessor encryption_configuration: Types::EncryptionConfiguration
902
+ attr_accessor errors: ::Array[Types::FirewallPolicyError]
891
903
  attr_accessor last_modified_time: ::Time
892
904
  SENSITIVE: []
893
905
  end
@@ -1083,6 +1095,7 @@ module Aws::NetworkFirewall
1083
1095
  attr_accessor next_token: ::String
1084
1096
  attr_accessor max_results: ::Integer
1085
1097
  attr_accessor availability_zone: ::String
1098
+ attr_accessor availability_zone_id: ::String
1086
1099
  attr_accessor vpc_endpoint_id: ::String
1087
1100
  attr_accessor vpc_endpoint_association_arn: ::String
1088
1101
  SENSITIVE: []
@@ -1091,6 +1104,7 @@ module Aws::NetworkFirewall
1091
1104
  class ListFlowOperationResultsResponse
1092
1105
  attr_accessor firewall_arn: ::String
1093
1106
  attr_accessor availability_zone: ::String
1107
+ attr_accessor availability_zone_id: ::String
1094
1108
  attr_accessor vpc_endpoint_association_arn: ::String
1095
1109
  attr_accessor vpc_endpoint_id: ::String
1096
1110
  attr_accessor flow_operation_id: ::String
@@ -1105,6 +1119,7 @@ module Aws::NetworkFirewall
1105
1119
  class ListFlowOperationsRequest
1106
1120
  attr_accessor firewall_arn: ::String
1107
1121
  attr_accessor availability_zone: ::String
1122
+ attr_accessor availability_zone_id: ::String
1108
1123
  attr_accessor vpc_endpoint_association_arn: ::String
1109
1124
  attr_accessor vpc_endpoint_id: ::String
1110
1125
  attr_accessor flow_operation_type: ("FLOW_FLUSH" | "FLOW_CAPTURE")
@@ -1449,6 +1464,15 @@ module Aws::NetworkFirewall
1449
1464
  SENSITIVE: []
1450
1465
  end
1451
1466
 
1467
+ class Route53ResolvedIPValidation
1468
+ attr_accessor action: ("REJECT" | "DROP" | "ALERT")
1469
+ attr_accessor dns_firewall_rule_group_id: ::String
1470
+ attr_accessor dns_expiry_exception_policy: ("REJECT" | "DROP" | "CONTINUE")
1471
+ attr_accessor bypass_destination_validation_ip_ranges: ::Array[Types::Address]
1472
+ attr_accessor source_ip_ranges: ::Array[Types::Address]
1473
+ SENSITIVE: []
1474
+ end
1475
+
1452
1476
  class RuleDefinition
1453
1477
  attr_accessor match_attributes: Types::MatchAttributes
1454
1478
  attr_accessor actions: ::Array[::String]
@@ -1477,7 +1501,7 @@ module Aws::NetworkFirewall
1477
1501
  attr_accessor description: ::String
1478
1502
  attr_accessor type: ("STATELESS" | "STATEFUL" | "STATEFUL_DOMAIN")
1479
1503
  attr_accessor capacity: ::Integer
1480
- attr_accessor rule_group_status: ("ACTIVE" | "DELETING" | "ERROR")
1504
+ attr_accessor rule_group_status: ("ACTIVE" | "DELETING" | "ERROR" | "UPDATING")
1481
1505
  attr_accessor tags: ::Array[Types::Tag]
1482
1506
  attr_accessor consumed_capacity: ::Integer
1483
1507
  attr_accessor number_of_associations: ::Integer
@@ -1519,7 +1543,7 @@ module Aws::NetworkFirewall
1519
1543
 
1520
1544
  class RulesSourceList
1521
1545
  attr_accessor targets: ::Array[::String]
1522
- attr_accessor target_types: ::Array[("TLS_SNI" | "HTTP_HOST")]
1546
+ attr_accessor target_types: ::Array[("TLS_SNI" | "HTTP_HOST" | "AWS_ROUTE_53_RESOLVED_DOMAIN")]
1523
1547
  attr_accessor generated_rules_type: ("ALLOWLIST" | "DENYLIST" | "REJECTLIST" | "ALERTLIST")
1524
1548
  SENSITIVE: []
1525
1549
  end
@@ -1567,6 +1591,7 @@ module Aws::NetworkFirewall
1567
1591
  class StartFlowCaptureRequest
1568
1592
  attr_accessor firewall_arn: ::String
1569
1593
  attr_accessor availability_zone: ::String
1594
+ attr_accessor availability_zone_id: ::String
1570
1595
  attr_accessor vpc_endpoint_association_arn: ::String
1571
1596
  attr_accessor vpc_endpoint_id: ::String
1572
1597
  attr_accessor minimum_flow_age_in_seconds: ::Integer
@@ -1584,6 +1609,7 @@ module Aws::NetworkFirewall
1584
1609
  class StartFlowFlushRequest
1585
1610
  attr_accessor firewall_arn: ::String
1586
1611
  attr_accessor availability_zone: ::String
1612
+ attr_accessor availability_zone_id: ::String
1587
1613
  attr_accessor vpc_endpoint_association_arn: ::String
1588
1614
  attr_accessor vpc_endpoint_id: ::String
1589
1615
  attr_accessor minimum_flow_age_in_seconds: ::Integer
@@ -1692,7 +1718,7 @@ module Aws::NetworkFirewall
1692
1718
  attr_accessor tls_inspection_configuration_arn: ::String
1693
1719
  attr_accessor tls_inspection_configuration_name: ::String
1694
1720
  attr_accessor tls_inspection_configuration_id: ::String
1695
- attr_accessor tls_inspection_configuration_status: ("ACTIVE" | "DELETING" | "ERROR")
1721
+ attr_accessor tls_inspection_configuration_status: ("ACTIVE" | "DELETING" | "ERROR" | "UPDATING")
1696
1722
  attr_accessor description: ::String
1697
1723
  attr_accessor tags: ::Array[Types::Tag]
1698
1724
  attr_accessor last_modified_time: ::Time
data/sig/waiters.rbs CHANGED
@@ -8,6 +8,17 @@
8
8
  module Aws
9
9
  module NetworkFirewall
10
10
  module Waiters
11
+
12
+ class FirewallPolicyActive
13
+ def initialize: (?client: Client, ?max_attempts: Integer, ?delay: Integer, ?before_attempt: Proc, ?before_wait: Proc) -> void
14
+ | (?Hash[Symbol, untyped]) -> void
15
+
16
+ def wait: (
17
+ ?firewall_policy_name: ::String,
18
+ ?firewall_policy_arn: ::String
19
+ ) -> Client::_DescribeFirewallPolicyResponseSuccess
20
+ | (?Hash[Symbol, untyped]) -> Client::_DescribeFirewallPolicyResponseSuccess
21
+ end
11
22
  end
12
23
  end
13
24
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-networkfirewall
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.101.0
4
+ version: 1.102.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
@@ -18,7 +18,7 @@ dependencies:
18
18
  version: '3'
19
19
  - - ">="
20
20
  - !ruby/object:Gem::Version
21
- version: 3.258.0
21
+ version: 3.260.0
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
@@ -28,7 +28,7 @@ dependencies:
28
28
  version: '3'
29
29
  - - ">="
30
30
  - !ruby/object:Gem::Version
31
- version: 3.258.0
31
+ version: 3.260.0
32
32
  - !ruby/object:Gem::Dependency
33
33
  name: aws-sigv4
34
34
  requirement: !ruby/object:Gem::Requirement
@@ -65,6 +65,7 @@ files:
65
65
  - lib/aws-sdk-networkfirewall/plugins/endpoints.rb
66
66
  - lib/aws-sdk-networkfirewall/resource.rb
67
67
  - lib/aws-sdk-networkfirewall/types.rb
68
+ - lib/aws-sdk-networkfirewall/waiters.rb
68
69
  - sig/client.rbs
69
70
  - sig/errors.rbs
70
71
  - sig/params.rbs