aws-sdk-networkfirewall 1.35.0 → 1.37.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 93f906c49425708a99fefe392ecc65c744ed614c3731a9449151acf53512963b
4
- data.tar.gz: cba122ba325f3fc897c5d8303d76244f9b984114ab4ebdde8c6525a0c78bcc96
3
+ metadata.gz: 1ead7232a47e4248e5f8e27ffea9f25c2440d542fc0bfa6578c81b9486b7b07b
4
+ data.tar.gz: c85889a00b03ab03b4b4497d90bc5d43b820a91ed2138c8794e65bd58f5eba3e
5
5
  SHA512:
6
- metadata.gz: 43149af37997bf292ad1d3da81402f90a52e89f512b437300bd5778529a93413a02716ee61b0523da651d9af9909e402671124ecdc17753dfabe4e82b23a43fb
7
- data.tar.gz: 29ff4749347cae6fa3d96730e7aab182271168077a16b8da3e9b4f27a9edaa89ebbc4a13c359f3079da293f1b0f0bae8ac6d2ab35e3f8bc2e6aa7d15f090b9da
6
+ metadata.gz: 0f9693651148e310a4006394e3381083ef03f7eff5d883e8cf5e9ac9957d55ec79b1cce56c4251feca36e702c1136804a58740568ccd3b7088a321edad22af15
7
+ data.tar.gz: dfc2ed10eb6ad18b5191eddc9c48ce7d233239c5fe911503882d981891d126e7a0c6ae6e2c189ee1ce8344051a4b8dfc3b44a7396a7cd5c97c878027e8831fbe
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.37.0 (2023-11-02)
5
+ ------------------
6
+
7
+ * Feature - This release introduces the stateless rule analyzer, which enables you to analyze your stateless rules for asymmetric routing.
8
+
9
+ 1.36.0 (2023-10-26)
10
+ ------------------
11
+
12
+ * Feature - Network Firewall now supports inspection of outbound SSL/TLS traffic.
13
+
4
14
  1.35.0 (2023-09-27)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.35.0
1
+ 1.37.0
@@ -818,7 +818,7 @@ module Aws::NetworkFirewall
818
818
  # resp.firewall_policy_response.firewall_policy_arn #=> String
819
819
  # resp.firewall_policy_response.firewall_policy_id #=> String
820
820
  # resp.firewall_policy_response.description #=> String
821
- # resp.firewall_policy_response.firewall_policy_status #=> String, one of "ACTIVE", "DELETING"
821
+ # resp.firewall_policy_response.firewall_policy_status #=> String, one of "ACTIVE", "DELETING", "ERROR"
822
822
  # resp.firewall_policy_response.tags #=> Array
823
823
  # resp.firewall_policy_response.tags[0].key #=> String
824
824
  # resp.firewall_policy_response.tags[0].value #=> String
@@ -955,6 +955,13 @@ module Aws::NetworkFirewall
955
955
  # own rule group is copied from. You can use the metadata to keep track
956
956
  # of updates made to the originating rule group.
957
957
  #
958
+ # @option params [Boolean] :analyze_rule_group
959
+ # Indicates whether you want Network Firewall to analyze the stateless
960
+ # rules in the rule group for rule behavior such as asymmetric routing.
961
+ # If set to `TRUE`, Network Firewall runs the analysis and then creates
962
+ # the rule group for you. To run the stateless rule group analyzer
963
+ # without creating the rule group, set `DryRun` to `TRUE`.
964
+ #
958
965
  # @return [Types::CreateRuleGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
959
966
  #
960
967
  # * {Types::CreateRuleGroupResponse#update_token #update_token} => String
@@ -1089,6 +1096,7 @@ module Aws::NetworkFirewall
1089
1096
  # source_arn: "ResourceArn",
1090
1097
  # source_update_token: "UpdateToken",
1091
1098
  # },
1099
+ # analyze_rule_group: false,
1092
1100
  # })
1093
1101
  #
1094
1102
  # @example Response structure
@@ -1100,7 +1108,7 @@ module Aws::NetworkFirewall
1100
1108
  # resp.rule_group_response.description #=> String
1101
1109
  # resp.rule_group_response.type #=> String, one of "STATELESS", "STATEFUL"
1102
1110
  # resp.rule_group_response.capacity #=> Integer
1103
- # resp.rule_group_response.rule_group_status #=> String, one of "ACTIVE", "DELETING"
1111
+ # resp.rule_group_response.rule_group_status #=> String, one of "ACTIVE", "DELETING", "ERROR"
1104
1112
  # resp.rule_group_response.tags #=> Array
1105
1113
  # resp.rule_group_response.tags[0].key #=> String
1106
1114
  # resp.rule_group_response.tags[0].value #=> String
@@ -1112,6 +1120,11 @@ module Aws::NetworkFirewall
1112
1120
  # resp.rule_group_response.source_metadata.source_update_token #=> String
1113
1121
  # resp.rule_group_response.sns_topic #=> String
1114
1122
  # resp.rule_group_response.last_modified_time #=> Time
1123
+ # resp.rule_group_response.analysis_results #=> Array
1124
+ # resp.rule_group_response.analysis_results[0].identified_rule_ids #=> Array
1125
+ # resp.rule_group_response.analysis_results[0].identified_rule_ids[0] #=> String
1126
+ # resp.rule_group_response.analysis_results[0].identified_type #=> String, one of "STATELESS_RULE_FORWARDING_ASYMMETRICALLY", "STATELESS_RULE_CONTAINS_TCP_FLAGS"
1127
+ # resp.rule_group_response.analysis_results[0].analysis_detail #=> String
1115
1128
  #
1116
1129
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/CreateRuleGroup AWS API Documentation
1117
1130
  #
@@ -1123,12 +1136,13 @@ module Aws::NetworkFirewall
1123
1136
  end
1124
1137
 
1125
1138
  # Creates an Network Firewall TLS inspection configuration. A TLS
1126
- # inspection configuration contains the Certificate Manager certificate
1127
- # references that Network Firewall uses to decrypt and re-encrypt
1128
- # inbound traffic.
1139
+ # inspection configuration contains Certificate Manager certificate
1140
+ # associations between and the scope configurations that Network
1141
+ # Firewall uses to decrypt and re-encrypt traffic traveling through your
1142
+ # firewall.
1129
1143
  #
1130
- # After you create a TLS inspection configuration, you associate it with
1131
- # a new firewall policy.
1144
+ # After you create a TLS inspection configuration, you can associate it
1145
+ # with a new firewall policy.
1132
1146
  #
1133
1147
  # To update the settings for a TLS inspection configuration, use
1134
1148
  # UpdateTLSInspectionConfiguration.
@@ -1142,7 +1156,7 @@ module Aws::NetworkFirewall
1142
1156
  # DescribeTLSInspectionConfiguration.
1143
1157
  #
1144
1158
  # For more information about TLS inspection configurations, see
1145
- # [Decrypting SSL/TLS traffic with TLS inspection configurations][1] in
1159
+ # [Inspecting SSL/TLS traffic with TLS inspection configurations][1] in
1146
1160
  # the *Network Firewall Developer Guide*.
1147
1161
  #
1148
1162
  #
@@ -1166,12 +1180,12 @@ module Aws::NetworkFirewall
1166
1180
  # To use a TLS inspection configuration, you add it to a new Network
1167
1181
  # Firewall firewall policy, then you apply the firewall policy to a
1168
1182
  # firewall. Network Firewall acts as a proxy service to decrypt and
1169
- # inspect inbound traffic. You can reference a TLS inspection
1170
- # configuration from more than one firewall policy, and you can use a
1171
- # firewall policy in more than one firewall. For more information about
1172
- # using TLS inspection configurations, see [Decrypting SSL/TLS traffic
1173
- # with TLS inspection configurations][1] in the *Network Firewall
1174
- # Developer Guide*.
1183
+ # inspect the traffic traveling through your firewalls. You can
1184
+ # reference a TLS inspection configuration from more than one firewall
1185
+ # policy, and you can use a firewall policy in more than one firewall.
1186
+ # For more information about using TLS inspection configurations, see
1187
+ # [Inspecting SSL/TLS traffic with TLS inspection configurations][1] in
1188
+ # the *Network Firewall Developer Guide*.
1175
1189
  #
1176
1190
  #
1177
1191
  #
@@ -1242,6 +1256,11 @@ module Aws::NetworkFirewall
1242
1256
  # protocols: [1],
1243
1257
  # },
1244
1258
  # ],
1259
+ # certificate_authority_arn: "ResourceArn",
1260
+ # check_certificate_revocation_status: {
1261
+ # revoked_status_action: "PASS", # accepts PASS, DROP, REJECT
1262
+ # unknown_status_action: "PASS", # accepts PASS, DROP, REJECT
1263
+ # },
1245
1264
  # },
1246
1265
  # ],
1247
1266
  # },
@@ -1264,7 +1283,7 @@ module Aws::NetworkFirewall
1264
1283
  # resp.tls_inspection_configuration_response.tls_inspection_configuration_arn #=> String
1265
1284
  # resp.tls_inspection_configuration_response.tls_inspection_configuration_name #=> String
1266
1285
  # resp.tls_inspection_configuration_response.tls_inspection_configuration_id #=> String
1267
- # resp.tls_inspection_configuration_response.tls_inspection_configuration_status #=> String, one of "ACTIVE", "DELETING"
1286
+ # resp.tls_inspection_configuration_response.tls_inspection_configuration_status #=> String, one of "ACTIVE", "DELETING", "ERROR"
1268
1287
  # resp.tls_inspection_configuration_response.description #=> String
1269
1288
  # resp.tls_inspection_configuration_response.tags #=> Array
1270
1289
  # resp.tls_inspection_configuration_response.tags[0].key #=> String
@@ -1278,6 +1297,10 @@ module Aws::NetworkFirewall
1278
1297
  # resp.tls_inspection_configuration_response.certificates[0].certificate_serial #=> String
1279
1298
  # resp.tls_inspection_configuration_response.certificates[0].status #=> String
1280
1299
  # resp.tls_inspection_configuration_response.certificates[0].status_message #=> String
1300
+ # resp.tls_inspection_configuration_response.certificate_authority.certificate_arn #=> String
1301
+ # resp.tls_inspection_configuration_response.certificate_authority.certificate_serial #=> String
1302
+ # resp.tls_inspection_configuration_response.certificate_authority.status #=> String
1303
+ # resp.tls_inspection_configuration_response.certificate_authority.status_message #=> String
1281
1304
  #
1282
1305
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/CreateTLSInspectionConfiguration AWS API Documentation
1283
1306
  #
@@ -1400,7 +1423,7 @@ module Aws::NetworkFirewall
1400
1423
  # resp.firewall_policy_response.firewall_policy_arn #=> String
1401
1424
  # resp.firewall_policy_response.firewall_policy_id #=> String
1402
1425
  # resp.firewall_policy_response.description #=> String
1403
- # resp.firewall_policy_response.firewall_policy_status #=> String, one of "ACTIVE", "DELETING"
1426
+ # resp.firewall_policy_response.firewall_policy_status #=> String, one of "ACTIVE", "DELETING", "ERROR"
1404
1427
  # resp.firewall_policy_response.tags #=> Array
1405
1428
  # resp.firewall_policy_response.tags[0].key #=> String
1406
1429
  # resp.firewall_policy_response.tags[0].value #=> String
@@ -1487,7 +1510,7 @@ module Aws::NetworkFirewall
1487
1510
  # resp.rule_group_response.description #=> String
1488
1511
  # resp.rule_group_response.type #=> String, one of "STATELESS", "STATEFUL"
1489
1512
  # resp.rule_group_response.capacity #=> Integer
1490
- # resp.rule_group_response.rule_group_status #=> String, one of "ACTIVE", "DELETING"
1513
+ # resp.rule_group_response.rule_group_status #=> String, one of "ACTIVE", "DELETING", "ERROR"
1491
1514
  # resp.rule_group_response.tags #=> Array
1492
1515
  # resp.rule_group_response.tags[0].key #=> String
1493
1516
  # resp.rule_group_response.tags[0].value #=> String
@@ -1499,6 +1522,11 @@ module Aws::NetworkFirewall
1499
1522
  # resp.rule_group_response.source_metadata.source_update_token #=> String
1500
1523
  # resp.rule_group_response.sns_topic #=> String
1501
1524
  # resp.rule_group_response.last_modified_time #=> Time
1525
+ # resp.rule_group_response.analysis_results #=> Array
1526
+ # resp.rule_group_response.analysis_results[0].identified_rule_ids #=> Array
1527
+ # resp.rule_group_response.analysis_results[0].identified_rule_ids[0] #=> String
1528
+ # resp.rule_group_response.analysis_results[0].identified_type #=> String, one of "STATELESS_RULE_FORWARDING_ASYMMETRICALLY", "STATELESS_RULE_CONTAINS_TCP_FLAGS"
1529
+ # resp.rule_group_response.analysis_results[0].analysis_detail #=> String
1502
1530
  #
1503
1531
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DeleteRuleGroup AWS API Documentation
1504
1532
  #
@@ -1538,7 +1566,7 @@ module Aws::NetworkFirewall
1538
1566
  # resp.tls_inspection_configuration_response.tls_inspection_configuration_arn #=> String
1539
1567
  # resp.tls_inspection_configuration_response.tls_inspection_configuration_name #=> String
1540
1568
  # resp.tls_inspection_configuration_response.tls_inspection_configuration_id #=> String
1541
- # resp.tls_inspection_configuration_response.tls_inspection_configuration_status #=> String, one of "ACTIVE", "DELETING"
1569
+ # resp.tls_inspection_configuration_response.tls_inspection_configuration_status #=> String, one of "ACTIVE", "DELETING", "ERROR"
1542
1570
  # resp.tls_inspection_configuration_response.description #=> String
1543
1571
  # resp.tls_inspection_configuration_response.tags #=> Array
1544
1572
  # resp.tls_inspection_configuration_response.tags[0].key #=> String
@@ -1552,6 +1580,10 @@ module Aws::NetworkFirewall
1552
1580
  # resp.tls_inspection_configuration_response.certificates[0].certificate_serial #=> String
1553
1581
  # resp.tls_inspection_configuration_response.certificates[0].status #=> String
1554
1582
  # resp.tls_inspection_configuration_response.certificates[0].status_message #=> String
1583
+ # resp.tls_inspection_configuration_response.certificate_authority.certificate_arn #=> String
1584
+ # resp.tls_inspection_configuration_response.certificate_authority.certificate_serial #=> String
1585
+ # resp.tls_inspection_configuration_response.certificate_authority.status #=> String
1586
+ # resp.tls_inspection_configuration_response.certificate_authority.status_message #=> String
1555
1587
  #
1556
1588
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DeleteTLSInspectionConfiguration AWS API Documentation
1557
1589
  #
@@ -1665,7 +1697,7 @@ module Aws::NetworkFirewall
1665
1697
  # resp.firewall_policy_response.firewall_policy_arn #=> String
1666
1698
  # resp.firewall_policy_response.firewall_policy_id #=> String
1667
1699
  # resp.firewall_policy_response.description #=> String
1668
- # resp.firewall_policy_response.firewall_policy_status #=> String, one of "ACTIVE", "DELETING"
1700
+ # resp.firewall_policy_response.firewall_policy_status #=> String, one of "ACTIVE", "DELETING", "ERROR"
1669
1701
  # resp.firewall_policy_response.tags #=> Array
1670
1702
  # resp.firewall_policy_response.tags[0].key #=> String
1671
1703
  # resp.firewall_policy_response.tags[0].value #=> String
@@ -1804,6 +1836,11 @@ module Aws::NetworkFirewall
1804
1836
  #
1805
1837
  # </note>
1806
1838
  #
1839
+ # @option params [Boolean] :analyze_rule_group
1840
+ # Indicates whether you want Network Firewall to analyze the stateless
1841
+ # rules in the rule group for rule behavior such as asymmetric routing.
1842
+ # If set to `TRUE`, Network Firewall runs the analysis.
1843
+ #
1807
1844
  # @return [Types::DescribeRuleGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1808
1845
  #
1809
1846
  # * {Types::DescribeRuleGroupResponse#update_token #update_token} => String
@@ -1816,6 +1853,7 @@ module Aws::NetworkFirewall
1816
1853
  # rule_group_name: "ResourceName",
1817
1854
  # rule_group_arn: "ResourceArn",
1818
1855
  # type: "STATELESS", # accepts STATELESS, STATEFUL
1856
+ # analyze_rule_group: false,
1819
1857
  # })
1820
1858
  #
1821
1859
  # @example Response structure
@@ -1879,7 +1917,7 @@ module Aws::NetworkFirewall
1879
1917
  # resp.rule_group_response.description #=> String
1880
1918
  # resp.rule_group_response.type #=> String, one of "STATELESS", "STATEFUL"
1881
1919
  # resp.rule_group_response.capacity #=> Integer
1882
- # resp.rule_group_response.rule_group_status #=> String, one of "ACTIVE", "DELETING"
1920
+ # resp.rule_group_response.rule_group_status #=> String, one of "ACTIVE", "DELETING", "ERROR"
1883
1921
  # resp.rule_group_response.tags #=> Array
1884
1922
  # resp.rule_group_response.tags[0].key #=> String
1885
1923
  # resp.rule_group_response.tags[0].value #=> String
@@ -1891,6 +1929,11 @@ module Aws::NetworkFirewall
1891
1929
  # resp.rule_group_response.source_metadata.source_update_token #=> String
1892
1930
  # resp.rule_group_response.sns_topic #=> String
1893
1931
  # resp.rule_group_response.last_modified_time #=> Time
1932
+ # resp.rule_group_response.analysis_results #=> Array
1933
+ # resp.rule_group_response.analysis_results[0].identified_rule_ids #=> Array
1934
+ # resp.rule_group_response.analysis_results[0].identified_rule_ids[0] #=> String
1935
+ # resp.rule_group_response.analysis_results[0].identified_type #=> String, one of "STATELESS_RULE_FORWARDING_ASYMMETRICALLY", "STATELESS_RULE_CONTAINS_TCP_FLAGS"
1936
+ # resp.rule_group_response.analysis_results[0].analysis_detail #=> String
1894
1937
  #
1895
1938
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DescribeRuleGroup AWS API Documentation
1896
1939
  #
@@ -2011,10 +2054,13 @@ module Aws::NetworkFirewall
2011
2054
  # resp.tls_inspection_configuration.server_certificate_configurations[0].scopes[0].destination_ports[0].to_port #=> Integer
2012
2055
  # resp.tls_inspection_configuration.server_certificate_configurations[0].scopes[0].protocols #=> Array
2013
2056
  # resp.tls_inspection_configuration.server_certificate_configurations[0].scopes[0].protocols[0] #=> Integer
2057
+ # resp.tls_inspection_configuration.server_certificate_configurations[0].certificate_authority_arn #=> String
2058
+ # resp.tls_inspection_configuration.server_certificate_configurations[0].check_certificate_revocation_status.revoked_status_action #=> String, one of "PASS", "DROP", "REJECT"
2059
+ # resp.tls_inspection_configuration.server_certificate_configurations[0].check_certificate_revocation_status.unknown_status_action #=> String, one of "PASS", "DROP", "REJECT"
2014
2060
  # resp.tls_inspection_configuration_response.tls_inspection_configuration_arn #=> String
2015
2061
  # resp.tls_inspection_configuration_response.tls_inspection_configuration_name #=> String
2016
2062
  # resp.tls_inspection_configuration_response.tls_inspection_configuration_id #=> String
2017
- # resp.tls_inspection_configuration_response.tls_inspection_configuration_status #=> String, one of "ACTIVE", "DELETING"
2063
+ # resp.tls_inspection_configuration_response.tls_inspection_configuration_status #=> String, one of "ACTIVE", "DELETING", "ERROR"
2018
2064
  # resp.tls_inspection_configuration_response.description #=> String
2019
2065
  # resp.tls_inspection_configuration_response.tags #=> Array
2020
2066
  # resp.tls_inspection_configuration_response.tags[0].key #=> String
@@ -2028,6 +2074,10 @@ module Aws::NetworkFirewall
2028
2074
  # resp.tls_inspection_configuration_response.certificates[0].certificate_serial #=> String
2029
2075
  # resp.tls_inspection_configuration_response.certificates[0].status #=> String
2030
2076
  # resp.tls_inspection_configuration_response.certificates[0].status_message #=> String
2077
+ # resp.tls_inspection_configuration_response.certificate_authority.certificate_arn #=> String
2078
+ # resp.tls_inspection_configuration_response.certificate_authority.certificate_serial #=> String
2079
+ # resp.tls_inspection_configuration_response.certificate_authority.status #=> String
2080
+ # resp.tls_inspection_configuration_response.certificate_authority.status_message #=> String
2031
2081
  #
2032
2082
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DescribeTLSInspectionConfiguration AWS API Documentation
2033
2083
  #
@@ -2880,7 +2930,7 @@ module Aws::NetworkFirewall
2880
2930
  # resp.firewall_policy_response.firewall_policy_arn #=> String
2881
2931
  # resp.firewall_policy_response.firewall_policy_id #=> String
2882
2932
  # resp.firewall_policy_response.description #=> String
2883
- # resp.firewall_policy_response.firewall_policy_status #=> String, one of "ACTIVE", "DELETING"
2933
+ # resp.firewall_policy_response.firewall_policy_status #=> String, one of "ACTIVE", "DELETING", "ERROR"
2884
2934
  # resp.firewall_policy_response.tags #=> Array
2885
2935
  # resp.firewall_policy_response.tags[0].key #=> String
2886
2936
  # resp.firewall_policy_response.tags[0].value #=> String
@@ -3149,6 +3199,13 @@ module Aws::NetworkFirewall
3149
3199
  # own rule group is copied from. You can use the metadata to keep track
3150
3200
  # of updates made to the originating rule group.
3151
3201
  #
3202
+ # @option params [Boolean] :analyze_rule_group
3203
+ # Indicates whether you want Network Firewall to analyze the stateless
3204
+ # rules in the rule group for rule behavior such as asymmetric routing.
3205
+ # If set to `TRUE`, Network Firewall runs the analysis and then updates
3206
+ # the rule group for you. To run the stateless rule group analyzer
3207
+ # without updating the rule group, set `DryRun` to `TRUE`.
3208
+ #
3152
3209
  # @return [Types::UpdateRuleGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3153
3210
  #
3154
3211
  # * {Types::UpdateRuleGroupResponse#update_token #update_token} => String
@@ -3278,6 +3335,7 @@ module Aws::NetworkFirewall
3278
3335
  # source_arn: "ResourceArn",
3279
3336
  # source_update_token: "UpdateToken",
3280
3337
  # },
3338
+ # analyze_rule_group: false,
3281
3339
  # })
3282
3340
  #
3283
3341
  # @example Response structure
@@ -3289,7 +3347,7 @@ module Aws::NetworkFirewall
3289
3347
  # resp.rule_group_response.description #=> String
3290
3348
  # resp.rule_group_response.type #=> String, one of "STATELESS", "STATEFUL"
3291
3349
  # resp.rule_group_response.capacity #=> Integer
3292
- # resp.rule_group_response.rule_group_status #=> String, one of "ACTIVE", "DELETING"
3350
+ # resp.rule_group_response.rule_group_status #=> String, one of "ACTIVE", "DELETING", "ERROR"
3293
3351
  # resp.rule_group_response.tags #=> Array
3294
3352
  # resp.rule_group_response.tags[0].key #=> String
3295
3353
  # resp.rule_group_response.tags[0].value #=> String
@@ -3301,6 +3359,11 @@ module Aws::NetworkFirewall
3301
3359
  # resp.rule_group_response.source_metadata.source_update_token #=> String
3302
3360
  # resp.rule_group_response.sns_topic #=> String
3303
3361
  # resp.rule_group_response.last_modified_time #=> Time
3362
+ # resp.rule_group_response.analysis_results #=> Array
3363
+ # resp.rule_group_response.analysis_results[0].identified_rule_ids #=> Array
3364
+ # resp.rule_group_response.analysis_results[0].identified_rule_ids[0] #=> String
3365
+ # resp.rule_group_response.analysis_results[0].identified_type #=> String, one of "STATELESS_RULE_FORWARDING_ASYMMETRICALLY", "STATELESS_RULE_CONTAINS_TCP_FLAGS"
3366
+ # resp.rule_group_response.analysis_results[0].analysis_detail #=> String
3304
3367
  #
3305
3368
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/UpdateRuleGroup AWS API Documentation
3306
3369
  #
@@ -3382,9 +3445,9 @@ module Aws::NetworkFirewall
3382
3445
 
3383
3446
  # Updates the TLS inspection configuration settings for the specified
3384
3447
  # TLS inspection configuration. You use a TLS inspection configuration
3385
- # by reference in one or more firewall policies. When you modify a TLS
3386
- # inspection configuration, you modify all firewall policies that use
3387
- # the TLS inspection configuration.
3448
+ # by referencing it in one or more firewall policies. When you modify a
3449
+ # TLS inspection configuration, you modify all firewall policies that
3450
+ # use the TLS inspection configuration.
3388
3451
  #
3389
3452
  # To update a TLS inspection configuration, first call
3390
3453
  # DescribeTLSInspectionConfiguration to retrieve the current
@@ -3411,12 +3474,12 @@ module Aws::NetworkFirewall
3411
3474
  # To use a TLS inspection configuration, you add it to a new Network
3412
3475
  # Firewall firewall policy, then you apply the firewall policy to a
3413
3476
  # firewall. Network Firewall acts as a proxy service to decrypt and
3414
- # inspect inbound traffic. You can reference a TLS inspection
3415
- # configuration from more than one firewall policy, and you can use a
3416
- # firewall policy in more than one firewall. For more information about
3417
- # using TLS inspection configurations, see [Decrypting SSL/TLS traffic
3418
- # with TLS inspection configurations][1] in the *Network Firewall
3419
- # Developer Guide*.
3477
+ # inspect the traffic traveling through your firewalls. You can
3478
+ # reference a TLS inspection configuration from more than one firewall
3479
+ # policy, and you can use a firewall policy in more than one firewall.
3480
+ # For more information about using TLS inspection configurations, see
3481
+ # [Inspecting SSL/TLS traffic with TLS inspection configurations][1] in
3482
+ # the *Network Firewall Developer Guide*.
3420
3483
  #
3421
3484
  #
3422
3485
  #
@@ -3489,6 +3552,11 @@ module Aws::NetworkFirewall
3489
3552
  # protocols: [1],
3490
3553
  # },
3491
3554
  # ],
3555
+ # certificate_authority_arn: "ResourceArn",
3556
+ # check_certificate_revocation_status: {
3557
+ # revoked_status_action: "PASS", # accepts PASS, DROP, REJECT
3558
+ # unknown_status_action: "PASS", # accepts PASS, DROP, REJECT
3559
+ # },
3492
3560
  # },
3493
3561
  # ],
3494
3562
  # },
@@ -3506,7 +3574,7 @@ module Aws::NetworkFirewall
3506
3574
  # resp.tls_inspection_configuration_response.tls_inspection_configuration_arn #=> String
3507
3575
  # resp.tls_inspection_configuration_response.tls_inspection_configuration_name #=> String
3508
3576
  # resp.tls_inspection_configuration_response.tls_inspection_configuration_id #=> String
3509
- # resp.tls_inspection_configuration_response.tls_inspection_configuration_status #=> String, one of "ACTIVE", "DELETING"
3577
+ # resp.tls_inspection_configuration_response.tls_inspection_configuration_status #=> String, one of "ACTIVE", "DELETING", "ERROR"
3510
3578
  # resp.tls_inspection_configuration_response.description #=> String
3511
3579
  # resp.tls_inspection_configuration_response.tags #=> Array
3512
3580
  # resp.tls_inspection_configuration_response.tags[0].key #=> String
@@ -3520,6 +3588,10 @@ module Aws::NetworkFirewall
3520
3588
  # resp.tls_inspection_configuration_response.certificates[0].certificate_serial #=> String
3521
3589
  # resp.tls_inspection_configuration_response.certificates[0].status #=> String
3522
3590
  # resp.tls_inspection_configuration_response.certificates[0].status_message #=> String
3591
+ # resp.tls_inspection_configuration_response.certificate_authority.certificate_arn #=> String
3592
+ # resp.tls_inspection_configuration_response.certificate_authority.certificate_serial #=> String
3593
+ # resp.tls_inspection_configuration_response.certificate_authority.status #=> String
3594
+ # resp.tls_inspection_configuration_response.certificate_authority.status_message #=> String
3523
3595
  #
3524
3596
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/UpdateTLSInspectionConfiguration AWS API Documentation
3525
3597
  #
@@ -3543,7 +3615,7 @@ module Aws::NetworkFirewall
3543
3615
  params: params,
3544
3616
  config: config)
3545
3617
  context[:gem_name] = 'aws-sdk-networkfirewall'
3546
- context[:gem_version] = '1.35.0'
3618
+ context[:gem_version] = '1.37.0'
3547
3619
  Seahorse::Client::Request.new(handlers, context)
3548
3620
  end
3549
3621
 
@@ -18,6 +18,8 @@ module Aws::NetworkFirewall
18
18
  Address = Shapes::StructureShape.new(name: 'Address')
19
19
  AddressDefinition = Shapes::StringShape.new(name: 'AddressDefinition')
20
20
  Addresses = Shapes::ListShape.new(name: 'Addresses')
21
+ AnalysisResult = Shapes::StructureShape.new(name: 'AnalysisResult')
22
+ AnalysisResultList = Shapes::ListShape.new(name: 'AnalysisResultList')
21
23
  AssociateFirewallPolicyRequest = Shapes::StructureShape.new(name: 'AssociateFirewallPolicyRequest')
22
24
  AssociateFirewallPolicyResponse = Shapes::StructureShape.new(name: 'AssociateFirewallPolicyResponse')
23
25
  AssociateSubnetsRequest = Shapes::StructureShape.new(name: 'AssociateSubnetsRequest')
@@ -32,6 +34,7 @@ module Aws::NetworkFirewall
32
34
  CIDRSummary = Shapes::StructureShape.new(name: 'CIDRSummary')
33
35
  CapacityUsageSummary = Shapes::StructureShape.new(name: 'CapacityUsageSummary')
34
36
  Certificates = Shapes::ListShape.new(name: 'Certificates')
37
+ CheckCertificateRevocationStatusActions = Shapes::StructureShape.new(name: 'CheckCertificateRevocationStatusActions')
35
38
  CollectionMember_String = Shapes::StringShape.new(name: 'CollectionMember_String')
36
39
  ConfigurationSyncState = Shapes::StringShape.new(name: 'ConfigurationSyncState')
37
40
  CreateFirewallPolicyRequest = Shapes::StructureShape.new(name: 'CreateFirewallPolicyRequest')
@@ -102,6 +105,7 @@ module Aws::NetworkFirewall
102
105
  IPSetReferenceMap = Shapes::MapShape.new(name: 'IPSetReferenceMap')
103
106
  IPSetReferenceName = Shapes::StringShape.new(name: 'IPSetReferenceName')
104
107
  IPSets = Shapes::MapShape.new(name: 'IPSets')
108
+ IdentifiedType = Shapes::StringShape.new(name: 'IdentifiedType')
105
109
  InsufficientCapacityException = Shapes::StructureShape.new(name: 'InsufficientCapacityException')
106
110
  InternalServerError = Shapes::StructureShape.new(name: 'InternalServerError')
107
111
  InvalidOperationException = Shapes::StructureShape.new(name: 'InvalidOperationException')
@@ -159,6 +163,7 @@ module Aws::NetworkFirewall
159
163
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
160
164
  ResourceOwnerCheckException = Shapes::StructureShape.new(name: 'ResourceOwnerCheckException')
161
165
  ResourceStatus = Shapes::StringShape.new(name: 'ResourceStatus')
166
+ RevocationCheckAction = Shapes::StringShape.new(name: 'RevocationCheckAction')
162
167
  RuleCapacity = Shapes::IntegerShape.new(name: 'RuleCapacity')
163
168
  RuleDefinition = Shapes::StructureShape.new(name: 'RuleDefinition')
164
169
  RuleGroup = Shapes::StructureShape.new(name: 'RuleGroup')
@@ -166,6 +171,7 @@ module Aws::NetworkFirewall
166
171
  RuleGroupResponse = Shapes::StructureShape.new(name: 'RuleGroupResponse')
167
172
  RuleGroupType = Shapes::StringShape.new(name: 'RuleGroupType')
168
173
  RuleGroups = Shapes::ListShape.new(name: 'RuleGroups')
174
+ RuleIdList = Shapes::ListShape.new(name: 'RuleIdList')
169
175
  RuleOption = Shapes::StructureShape.new(name: 'RuleOption')
170
176
  RuleOptions = Shapes::ListShape.new(name: 'RuleOptions')
171
177
  RuleOrder = Shapes::StringShape.new(name: 'RuleOrder')
@@ -264,6 +270,13 @@ module Aws::NetworkFirewall
264
270
 
265
271
  Addresses.member = Shapes::ShapeRef.new(shape: Address)
266
272
 
273
+ AnalysisResult.add_member(:identified_rule_ids, Shapes::ShapeRef.new(shape: RuleIdList, location_name: "IdentifiedRuleIds"))
274
+ AnalysisResult.add_member(:identified_type, Shapes::ShapeRef.new(shape: IdentifiedType, location_name: "IdentifiedType"))
275
+ AnalysisResult.add_member(:analysis_detail, Shapes::ShapeRef.new(shape: CollectionMember_String, location_name: "AnalysisDetail"))
276
+ AnalysisResult.struct_class = Types::AnalysisResult
277
+
278
+ AnalysisResultList.member = Shapes::ShapeRef.new(shape: AnalysisResult)
279
+
267
280
  AssociateFirewallPolicyRequest.add_member(:update_token, Shapes::ShapeRef.new(shape: UpdateToken, location_name: "UpdateToken"))
268
281
  AssociateFirewallPolicyRequest.add_member(:firewall_arn, Shapes::ShapeRef.new(shape: ResourceArn, location_name: "FirewallArn"))
269
282
  AssociateFirewallPolicyRequest.add_member(:firewall_name, Shapes::ShapeRef.new(shape: ResourceName, location_name: "FirewallName"))
@@ -306,6 +319,10 @@ module Aws::NetworkFirewall
306
319
 
307
320
  Certificates.member = Shapes::ShapeRef.new(shape: TlsCertificateData)
308
321
 
322
+ CheckCertificateRevocationStatusActions.add_member(:revoked_status_action, Shapes::ShapeRef.new(shape: RevocationCheckAction, location_name: "RevokedStatusAction"))
323
+ CheckCertificateRevocationStatusActions.add_member(:unknown_status_action, Shapes::ShapeRef.new(shape: RevocationCheckAction, location_name: "UnknownStatusAction"))
324
+ CheckCertificateRevocationStatusActions.struct_class = Types::CheckCertificateRevocationStatusActions
325
+
309
326
  CreateFirewallPolicyRequest.add_member(:firewall_policy_name, Shapes::ShapeRef.new(shape: ResourceName, required: true, location_name: "FirewallPolicyName"))
310
327
  CreateFirewallPolicyRequest.add_member(:firewall_policy, Shapes::ShapeRef.new(shape: FirewallPolicy, required: true, location_name: "FirewallPolicy"))
311
328
  CreateFirewallPolicyRequest.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "Description"))
@@ -344,6 +361,7 @@ module Aws::NetworkFirewall
344
361
  CreateRuleGroupRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
345
362
  CreateRuleGroupRequest.add_member(:encryption_configuration, Shapes::ShapeRef.new(shape: EncryptionConfiguration, location_name: "EncryptionConfiguration"))
346
363
  CreateRuleGroupRequest.add_member(:source_metadata, Shapes::ShapeRef.new(shape: SourceMetadata, location_name: "SourceMetadata"))
364
+ CreateRuleGroupRequest.add_member(:analyze_rule_group, Shapes::ShapeRef.new(shape: Boolean, location_name: "AnalyzeRuleGroup"))
347
365
  CreateRuleGroupRequest.struct_class = Types::CreateRuleGroupRequest
348
366
 
349
367
  CreateRuleGroupResponse.add_member(:update_token, Shapes::ShapeRef.new(shape: UpdateToken, required: true, location_name: "UpdateToken"))
@@ -451,6 +469,7 @@ module Aws::NetworkFirewall
451
469
  DescribeRuleGroupRequest.add_member(:rule_group_name, Shapes::ShapeRef.new(shape: ResourceName, location_name: "RuleGroupName"))
452
470
  DescribeRuleGroupRequest.add_member(:rule_group_arn, Shapes::ShapeRef.new(shape: ResourceArn, location_name: "RuleGroupArn"))
453
471
  DescribeRuleGroupRequest.add_member(:type, Shapes::ShapeRef.new(shape: RuleGroupType, location_name: "Type"))
472
+ DescribeRuleGroupRequest.add_member(:analyze_rule_group, Shapes::ShapeRef.new(shape: Boolean, location_name: "AnalyzeRuleGroup"))
454
473
  DescribeRuleGroupRequest.struct_class = Types::DescribeRuleGroupRequest
455
474
 
456
475
  DescribeRuleGroupResponse.add_member(:update_token, Shapes::ShapeRef.new(shape: UpdateToken, required: true, location_name: "UpdateToken"))
@@ -729,10 +748,13 @@ module Aws::NetworkFirewall
729
748
  RuleGroupResponse.add_member(:source_metadata, Shapes::ShapeRef.new(shape: SourceMetadata, location_name: "SourceMetadata"))
730
749
  RuleGroupResponse.add_member(:sns_topic, Shapes::ShapeRef.new(shape: ResourceArn, location_name: "SnsTopic"))
731
750
  RuleGroupResponse.add_member(:last_modified_time, Shapes::ShapeRef.new(shape: LastUpdateTime, location_name: "LastModifiedTime"))
751
+ RuleGroupResponse.add_member(:analysis_results, Shapes::ShapeRef.new(shape: AnalysisResultList, location_name: "AnalysisResults"))
732
752
  RuleGroupResponse.struct_class = Types::RuleGroupResponse
733
753
 
734
754
  RuleGroups.member = Shapes::ShapeRef.new(shape: RuleGroupMetadata)
735
755
 
756
+ RuleIdList.member = Shapes::ShapeRef.new(shape: CollectionMember_String)
757
+
736
758
  RuleOption.add_member(:keyword, Shapes::ShapeRef.new(shape: Keyword, required: true, location_name: "Keyword"))
737
759
  RuleOption.add_member(:settings, Shapes::ShapeRef.new(shape: Settings, location_name: "Settings"))
738
760
  RuleOption.struct_class = Types::RuleOption
@@ -761,6 +783,8 @@ module Aws::NetworkFirewall
761
783
 
762
784
  ServerCertificateConfiguration.add_member(:server_certificates, Shapes::ShapeRef.new(shape: ServerCertificates, location_name: "ServerCertificates"))
763
785
  ServerCertificateConfiguration.add_member(:scopes, Shapes::ShapeRef.new(shape: ServerCertificateScopes, location_name: "Scopes"))
786
+ ServerCertificateConfiguration.add_member(:certificate_authority_arn, Shapes::ShapeRef.new(shape: ResourceArn, location_name: "CertificateAuthorityArn"))
787
+ ServerCertificateConfiguration.add_member(:check_certificate_revocation_status, Shapes::ShapeRef.new(shape: CheckCertificateRevocationStatusActions, location_name: "CheckCertificateRevocationStatus"))
764
788
  ServerCertificateConfiguration.struct_class = Types::ServerCertificateConfiguration
765
789
 
766
790
  ServerCertificateConfigurations.member = Shapes::ShapeRef.new(shape: ServerCertificateConfiguration)
@@ -865,6 +889,7 @@ module Aws::NetworkFirewall
865
889
  TLSInspectionConfigurationResponse.add_member(:number_of_associations, Shapes::ShapeRef.new(shape: NumberOfAssociations, location_name: "NumberOfAssociations"))
866
890
  TLSInspectionConfigurationResponse.add_member(:encryption_configuration, Shapes::ShapeRef.new(shape: EncryptionConfiguration, location_name: "EncryptionConfiguration"))
867
891
  TLSInspectionConfigurationResponse.add_member(:certificates, Shapes::ShapeRef.new(shape: Certificates, location_name: "Certificates"))
892
+ TLSInspectionConfigurationResponse.add_member(:certificate_authority, Shapes::ShapeRef.new(shape: TlsCertificateData, location_name: "CertificateAuthority"))
868
893
  TLSInspectionConfigurationResponse.struct_class = Types::TLSInspectionConfigurationResponse
869
894
 
870
895
  TLSInspectionConfigurations.member = Shapes::ShapeRef.new(shape: TLSInspectionConfigurationMetadata)
@@ -984,6 +1009,7 @@ module Aws::NetworkFirewall
984
1009
  UpdateRuleGroupRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
985
1010
  UpdateRuleGroupRequest.add_member(:encryption_configuration, Shapes::ShapeRef.new(shape: EncryptionConfiguration, location_name: "EncryptionConfiguration"))
986
1011
  UpdateRuleGroupRequest.add_member(:source_metadata, Shapes::ShapeRef.new(shape: SourceMetadata, location_name: "SourceMetadata"))
1012
+ UpdateRuleGroupRequest.add_member(:analyze_rule_group, Shapes::ShapeRef.new(shape: Boolean, location_name: "AnalyzeRuleGroup"))
987
1013
  UpdateRuleGroupRequest.struct_class = Types::UpdateRuleGroupRequest
988
1014
 
989
1015
  UpdateRuleGroupResponse.add_member(:update_token, Shapes::ShapeRef.new(shape: UpdateToken, required: true, location_name: "UpdateToken"))
@@ -32,7 +32,7 @@ module Aws::NetworkFirewall
32
32
  raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
33
33
  end
34
34
  if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
35
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
35
+ if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true)
36
36
  return Aws::Endpoints::Endpoint.new(url: "https://network-firewall-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
37
37
  end
38
38
  raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
@@ -74,6 +74,70 @@ module Aws::NetworkFirewall
74
74
  include Aws::Structure
75
75
  end
76
76
 
77
+ # The analysis result for Network Firewall's stateless rule group
78
+ # analyzer. Every time you call CreateRuleGroup, UpdateRuleGroup, or
79
+ # DescribeRuleGroup on a stateless rule group, Network Firewall analyzes
80
+ # the stateless rule groups in your account and identifies the rules
81
+ # that might adversely effect your firewall's functionality. For
82
+ # example, if Network Firewall detects a rule that's routing traffic
83
+ # asymmetrically, which impacts the service's ability to properly
84
+ # process traffic, the service includes the rule in a list of analysis
85
+ # results.
86
+ #
87
+ # @!attribute [rw] identified_rule_ids
88
+ # The priority number of the stateless rules identified in the
89
+ # analysis.
90
+ # @return [Array<String>]
91
+ #
92
+ # @!attribute [rw] identified_type
93
+ # The types of rule configurations that Network Firewall analyzes your
94
+ # rule groups for. Network Firewall analyzes stateless rule groups for
95
+ # the following types of rule configurations:
96
+ #
97
+ # * `STATELESS_RULE_FORWARDING_ASYMMETRICALLY`
98
+ #
99
+ # Cause: One or more stateless rules with the action `pass` or
100
+ # `forward` are forwarding traffic asymmetrically. Specifically, the
101
+ # rule's set of source IP addresses or their associated port
102
+ # numbers, don't match the set of destination IP addresses or their
103
+ # associated port numbers.
104
+ #
105
+ # To mitigate: Make sure that there's an existing return path. For
106
+ # example, if the rule allows traffic from source 10.1.0.0/24 to
107
+ # destination 20.1.0.0/24, you should allow return traffic from
108
+ # source 20.1.0.0/24 to destination 10.1.0.0/24.
109
+ #
110
+ # * `STATELESS_RULE_CONTAINS_TCP_FLAGS`
111
+ #
112
+ # Cause: At least one stateless rule with the action `pass`
113
+ # or`forward` contains TCP flags that are inconsistent in the
114
+ # forward and return directions.
115
+ #
116
+ # To mitigate: Prevent asymmetric routing issues caused by TCP flags
117
+ # by following these actions:
118
+ #
119
+ # * Remove unnecessary TCP flag inspections from the rules.
120
+ #
121
+ # * If you need to inspect TCP flags, check that the rules correctly
122
+ # account for changes in TCP flags throughout the TCP connection
123
+ # cycle, for example `SYN` and `ACK` flags used in a 3-way TCP
124
+ # handshake.
125
+ # @return [String]
126
+ #
127
+ # @!attribute [rw] analysis_detail
128
+ # Provides analysis details for the identified rule.
129
+ # @return [String]
130
+ #
131
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/AnalysisResult AWS API Documentation
132
+ #
133
+ class AnalysisResult < Struct.new(
134
+ :identified_rule_ids,
135
+ :identified_type,
136
+ :analysis_detail)
137
+ SENSITIVE = []
138
+ include Aws::Structure
139
+ end
140
+
77
141
  # @!attribute [rw] update_token
78
142
  # An optional token that you can use for optimistic locking. Network
79
143
  # Firewall returns a token to your requests that access the firewall.
@@ -355,6 +419,55 @@ module Aws::NetworkFirewall
355
419
  include Aws::Structure
356
420
  end
357
421
 
422
+ # Defines the actions to take on the SSL/TLS connection if the
423
+ # certificate presented by the server in the connection has a revoked or
424
+ # unknown status.
425
+ #
426
+ # @!attribute [rw] revoked_status_action
427
+ # Configures how Network Firewall processes traffic when it determines
428
+ # that the certificate presented by the server in the SSL/TLS
429
+ # connection has a revoked status.
430
+ #
431
+ # * **PASS** - Allow the connection to continue, and pass subsequent
432
+ # packets to the stateful engine for inspection.
433
+ #
434
+ # * **DROP** - Network Firewall closes the connection and drops
435
+ # subsequent packets for that connection.
436
+ #
437
+ # * **REJECT** - Network Firewall sends a TCP reject packet back to
438
+ # your client. The service closes the connection and drops
439
+ # subsequent packets for that connection. `REJECT` is available only
440
+ # for TCP traffic.
441
+ # @return [String]
442
+ #
443
+ # @!attribute [rw] unknown_status_action
444
+ # Configures how Network Firewall processes traffic when it determines
445
+ # that the certificate presented by the server in the SSL/TLS
446
+ # connection has an unknown status, or a status that cannot be
447
+ # determined for any other reason, including when the service is
448
+ # unable to connect to the OCSP and CRL endpoints for the certificate.
449
+ #
450
+ # * **PASS** - Allow the connection to continue, and pass subsequent
451
+ # packets to the stateful engine for inspection.
452
+ #
453
+ # * **DROP** - Network Firewall closes the connection and drops
454
+ # subsequent packets for that connection.
455
+ #
456
+ # * **REJECT** - Network Firewall sends a TCP reject packet back to
457
+ # your client. The service closes the connection and drops
458
+ # subsequent packets for that connection. `REJECT` is available only
459
+ # for TCP traffic.
460
+ # @return [String]
461
+ #
462
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/CheckCertificateRevocationStatusActions AWS API Documentation
463
+ #
464
+ class CheckCertificateRevocationStatusActions < Struct.new(
465
+ :revoked_status_action,
466
+ :unknown_status_action)
467
+ SENSITIVE = []
468
+ include Aws::Structure
469
+ end
470
+
358
471
  # @!attribute [rw] firewall_policy_name
359
472
  # The descriptive name of the firewall policy. You can't change the
360
473
  # name of a firewall policy after you create it.
@@ -655,6 +768,14 @@ module Aws::NetworkFirewall
655
768
  # track of updates made to the originating rule group.
656
769
  # @return [Types::SourceMetadata]
657
770
  #
771
+ # @!attribute [rw] analyze_rule_group
772
+ # Indicates whether you want Network Firewall to analyze the stateless
773
+ # rules in the rule group for rule behavior such as asymmetric
774
+ # routing. If set to `TRUE`, Network Firewall runs the analysis and
775
+ # then creates the rule group for you. To run the stateless rule group
776
+ # analyzer without creating the rule group, set `DryRun` to `TRUE`.
777
+ # @return [Boolean]
778
+ #
658
779
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/CreateRuleGroupRequest AWS API Documentation
659
780
  #
660
781
  class CreateRuleGroupRequest < Struct.new(
@@ -667,7 +788,8 @@ module Aws::NetworkFirewall
667
788
  :tags,
668
789
  :dry_run,
669
790
  :encryption_configuration,
670
- :source_metadata)
791
+ :source_metadata,
792
+ :analyze_rule_group)
671
793
  SENSITIVE = []
672
794
  include Aws::Structure
673
795
  end
@@ -720,12 +842,12 @@ module Aws::NetworkFirewall
720
842
  # To use a TLS inspection configuration, you add it to a new Network
721
843
  # Firewall firewall policy, then you apply the firewall policy to a
722
844
  # firewall. Network Firewall acts as a proxy service to decrypt and
723
- # inspect inbound traffic. You can reference a TLS inspection
724
- # configuration from more than one firewall policy, and you can use a
725
- # firewall policy in more than one firewall. For more information
726
- # about using TLS inspection configurations, see [Decrypting SSL/TLS
727
- # traffic with TLS inspection configurations][1] in the *Network
728
- # Firewall Developer Guide*.
845
+ # inspect the traffic traveling through your firewalls. You can
846
+ # reference a TLS inspection configuration from more than one firewall
847
+ # policy, and you can use a firewall policy in more than one firewall.
848
+ # For more information about using TLS inspection configurations, see
849
+ # [Inspecting SSL/TLS traffic with TLS inspection configurations][1]
850
+ # in the *Network Firewall Developer Guide*.
729
851
  #
730
852
  #
731
853
  #
@@ -1333,12 +1455,19 @@ module Aws::NetworkFirewall
1333
1455
  # </note>
1334
1456
  # @return [String]
1335
1457
  #
1458
+ # @!attribute [rw] analyze_rule_group
1459
+ # Indicates whether you want Network Firewall to analyze the stateless
1460
+ # rules in the rule group for rule behavior such as asymmetric
1461
+ # routing. If set to `TRUE`, Network Firewall runs the analysis.
1462
+ # @return [Boolean]
1463
+ #
1336
1464
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DescribeRuleGroupRequest AWS API Documentation
1337
1465
  #
1338
1466
  class DescribeRuleGroupRequest < Struct.new(
1339
1467
  :rule_group_name,
1340
1468
  :rule_group_arn,
1341
- :type)
1469
+ :type,
1470
+ :analyze_rule_group)
1342
1471
  SENSITIVE = []
1343
1472
  include Aws::Structure
1344
1473
  end
@@ -1441,12 +1570,12 @@ module Aws::NetworkFirewall
1441
1570
  # To use a TLS inspection configuration, you add it to a new Network
1442
1571
  # Firewall firewall policy, then you apply the firewall policy to a
1443
1572
  # firewall. Network Firewall acts as a proxy service to decrypt and
1444
- # inspect inbound traffic. You can reference a TLS inspection
1445
- # configuration from more than one firewall policy, and you can use a
1446
- # firewall policy in more than one firewall. For more information
1447
- # about using TLS inspection configurations, see [Decrypting SSL/TLS
1448
- # traffic with TLS inspection configurations][1] in the *Network
1449
- # Firewall Developer Guide*.
1573
+ # inspect the traffic traveling through your firewalls. You can
1574
+ # reference a TLS inspection configuration from more than one firewall
1575
+ # policy, and you can use a firewall policy in more than one firewall.
1576
+ # For more information about using TLS inspection configurations, see
1577
+ # [Inspecting SSL/TLS traffic with TLS inspection configurations][1]
1578
+ # in the *Network Firewall Developer Guide*.
1450
1579
  #
1451
1580
  #
1452
1581
  #
@@ -2210,7 +2339,7 @@ module Aws::NetworkFirewall
2210
2339
  include Aws::Structure
2211
2340
  end
2212
2341
 
2213
- # Your request is valid, but Network Firewall couldnt perform the
2342
+ # Your request is valid, but Network Firewall couldn't perform the
2214
2343
  # operation because of a system problem. Retry your request.
2215
2344
  #
2216
2345
  # @!attribute [rw] message
@@ -2984,7 +3113,12 @@ module Aws::NetworkFirewall
2984
3113
  # Additional options governing how Network Firewall handles stateful
2985
3114
  # rules. The policies where you use your stateful rule group must have
2986
3115
  # stateful rule options settings that are compatible with these
2987
- # settings.
3116
+ # settings. Some limitations apply; for more information, see [Strict
3117
+ # evaluation order][1] in the *Network Firewall Developer Guide*.
3118
+ #
3119
+ #
3120
+ #
3121
+ # [1]: https://docs.aws.amazon.com/network-firewall/latest/developerguide/suricata-limitations-caveats.html
2988
3122
  # @return [Types::StatefulRuleOptions]
2989
3123
  #
2990
3124
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/RuleGroup AWS API Documentation
@@ -3110,6 +3244,17 @@ module Aws::NetworkFirewall
3110
3244
  # The last time that the rule group was changed.
3111
3245
  # @return [Time]
3112
3246
  #
3247
+ # @!attribute [rw] analysis_results
3248
+ # The list of analysis results for `AnalyzeRuleGroup`. If you set
3249
+ # `AnalyzeRuleGroup` to `TRUE` in CreateRuleGroup, UpdateRuleGroup, or
3250
+ # DescribeRuleGroup, Network Firewall analyzes the rule group and
3251
+ # identifies the rules that might adversely effect your firewall's
3252
+ # functionality. For example, if Network Firewall detects a rule
3253
+ # that's routing traffic asymmetrically, which impacts the service's
3254
+ # ability to properly process traffic, the service includes the rule
3255
+ # in the list of analysis results.
3256
+ # @return [Array<Types::AnalysisResult>]
3257
+ #
3113
3258
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/RuleGroupResponse AWS API Documentation
3114
3259
  #
3115
3260
  class RuleGroupResponse < Struct.new(
@@ -3126,7 +3271,8 @@ module Aws::NetworkFirewall
3126
3271
  :encryption_configuration,
3127
3272
  :source_metadata,
3128
3273
  :sns_topic,
3129
- :last_modified_time)
3274
+ :last_modified_time,
3275
+ :analysis_results)
3130
3276
  SENSITIVE = []
3131
3277
  include Aws::Structure
3132
3278
  end
@@ -3190,14 +3336,18 @@ module Aws::NetworkFirewall
3190
3336
  # instance of this for either stateless rules or stateful rules.
3191
3337
  #
3192
3338
  # @!attribute [rw] rules_string
3193
- # Stateful inspection criteria, provided in Suricata compatible
3194
- # intrusion prevention system (IPS) rules. Suricata is an open-source
3195
- # network IPS that includes a standard rule-based language for network
3196
- # traffic inspection.
3339
+ # Stateful inspection criteria, provided in Suricata compatible rules.
3340
+ # Suricata is an open-source threat detection framework that includes
3341
+ # a standard rule-based language for network traffic inspection.
3197
3342
  #
3198
3343
  # These rules contain the inspection criteria and the action to take
3199
3344
  # for traffic that matches the criteria, so this type of rule group
3200
3345
  # doesn't have a separate action setting.
3346
+ #
3347
+ # <note markdown="1"> You can't use the `priority` keyword if the `RuleOrder` option in
3348
+ # StatefulRuleOptions is set to `STRICT_ORDER`.
3349
+ #
3350
+ # </note>
3201
3351
  # @return [String]
3202
3352
  #
3203
3353
  # @!attribute [rw] rules_source_list
@@ -3281,13 +3431,14 @@ module Aws::NetworkFirewall
3281
3431
  include Aws::Structure
3282
3432
  end
3283
3433
 
3284
- # Any Certificate Manager Secure Sockets Layer/Transport Layer Security
3285
- # (SSL/TLS) server certificate that's associated with a
3286
- # ServerCertificateConfiguration used in a TLSInspectionConfiguration.
3287
- # You must request or import a SSL/TLS certificate into ACM for each
3288
- # domain Network Firewall needs to decrypt and inspect. Network Firewall
3289
- # uses the SSL/TLS certificates to decrypt specified inbound SSL/TLS
3290
- # traffic going to your firewall. For information about working with
3434
+ # Any Certificate Manager (ACM) Secure Sockets Layer/Transport Layer
3435
+ # Security (SSL/TLS) server certificate that's associated with a
3436
+ # ServerCertificateConfiguration. Used in a TLSInspectionConfiguration
3437
+ # for inspection of inbound traffic to your firewall. You must request
3438
+ # or import a SSL/TLS certificate into ACM for each domain Network
3439
+ # Firewall needs to decrypt and inspect. Network Firewall uses the
3440
+ # SSL/TLS certificates to decrypt specified inbound SSL/TLS traffic
3441
+ # going to your firewall. For information about working with
3291
3442
  # certificates in Certificate Manager, see [Request a public certificate
3292
3443
  # ][1] or [Importing certificates][2] in the *Certificate Manager User
3293
3444
  # Guide*.
@@ -3299,7 +3450,7 @@ module Aws::NetworkFirewall
3299
3450
  #
3300
3451
  # @!attribute [rw] resource_arn
3301
3452
  # The Amazon Resource Name (ARN) of the Certificate Manager SSL/TLS
3302
- # server certificate.
3453
+ # server certificate that's used for inbound SSL/TLS inspection.
3303
3454
  # @return [String]
3304
3455
  #
3305
3456
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/ServerCertificate AWS API Documentation
@@ -3310,13 +3461,14 @@ module Aws::NetworkFirewall
3310
3461
  include Aws::Structure
3311
3462
  end
3312
3463
 
3313
- # Configures the associated Certificate Manager Secure Sockets
3314
- # Layer/Transport Layer Security (SSL/TLS) server certificates and scope
3315
- # settings Network Firewall uses to decrypt traffic in a
3316
- # TLSInspectionConfiguration. For information about working with SSL/TLS
3317
- # certificates for TLS inspection, see [ Requirements for using SSL/TLS
3318
- # server certficiates with TLS inspection configurations][1] in the
3319
- # *Network Firewall Developer Guide*.
3464
+ # Configures the Certificate Manager certificates and scope that Network
3465
+ # Firewall uses to decrypt and re-encrypt traffic using a
3466
+ # TLSInspectionConfiguration. You can configure `ServerCertificates` for
3467
+ # inbound SSL/TLS inspection, a `CertificateAuthorityArn` for outbound
3468
+ # SSL/TLS inspection, or both. For information about working with
3469
+ # certificates for TLS inspection, see [ Using SSL/TLS server
3470
+ # certficiates with TLS inspection configurations][1] in the *Network
3471
+ # Firewall Developer Guide*.
3320
3472
  #
3321
3473
  # <note markdown="1"> If a server certificate that's associated with your
3322
3474
  # TLSInspectionConfiguration is revoked, deleted, or expired it can
@@ -3329,19 +3481,58 @@ module Aws::NetworkFirewall
3329
3481
  # [1]: https://docs.aws.amazon.com/network-firewall/latest/developerguide/tls-inspection-certificate-requirements.html
3330
3482
  #
3331
3483
  # @!attribute [rw] server_certificates
3332
- # The list of a server certificate configuration's Certificate
3333
- # Manager SSL/TLS certificates.
3484
+ # The list of server certificates to use for inbound SSL/TLS
3485
+ # inspection.
3334
3486
  # @return [Array<Types::ServerCertificate>]
3335
3487
  #
3336
3488
  # @!attribute [rw] scopes
3337
- # A list of a server certificate configuration's scopes.
3489
+ # A list of scopes.
3338
3490
  # @return [Array<Types::ServerCertificateScope>]
3339
3491
  #
3492
+ # @!attribute [rw] certificate_authority_arn
3493
+ # The Amazon Resource Name (ARN) of the imported certificate authority
3494
+ # (CA) certificate within Certificate Manager (ACM) to use for
3495
+ # outbound SSL/TLS inspection.
3496
+ #
3497
+ # The following limitations apply:
3498
+ #
3499
+ # * You can use CA certificates that you imported into ACM, but you
3500
+ # can't generate CA certificates with ACM.
3501
+ #
3502
+ # * You can't use certificates issued by Private Certificate
3503
+ # Authority.
3504
+ #
3505
+ # For more information about configuring certificates for outbound
3506
+ # inspection, see [Using SSL/TLS certificates with certificates with
3507
+ # TLS inspection configurations][1] in the *Network Firewall Developer
3508
+ # Guide*.
3509
+ #
3510
+ # For information about working with certificates in ACM, see
3511
+ # [Importing certificates][2] in the *Certificate Manager User Guide*.
3512
+ #
3513
+ #
3514
+ #
3515
+ # [1]: https://docs.aws.amazon.com/network-firewall/latest/developerguide/tls-inspection-certificate-requirements.html
3516
+ # [2]: https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html
3517
+ # @return [String]
3518
+ #
3519
+ # @!attribute [rw] check_certificate_revocation_status
3520
+ # When enabled, Network Firewall checks if the server certificate
3521
+ # presented by the server in the SSL/TLS connection has a revoked or
3522
+ # unkown status. If the certificate has an unknown or revoked status,
3523
+ # you must specify the actions that Network Firewall takes on outbound
3524
+ # traffic. To check the certificate revocation status, you must also
3525
+ # specify a `CertificateAuthorityArn` in
3526
+ # ServerCertificateConfiguration.
3527
+ # @return [Types::CheckCertificateRevocationStatusActions]
3528
+ #
3340
3529
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/ServerCertificateConfiguration AWS API Documentation
3341
3530
  #
3342
3531
  class ServerCertificateConfiguration < Struct.new(
3343
3532
  :server_certificates,
3344
- :scopes)
3533
+ :scopes,
3534
+ :certificate_authority_arn,
3535
+ :check_certificate_revocation_status)
3345
3536
  SENSITIVE = []
3346
3537
  include Aws::Structure
3347
3538
  end
@@ -3436,11 +3627,17 @@ module Aws::NetworkFirewall
3436
3627
  #
3437
3628
  # @!attribute [rw] rule_order
3438
3629
  # Indicates how to manage the order of stateful rule evaluation for
3439
- # the policy. `DEFAULT_ACTION_ORDER` is the default behavior. Stateful
3440
- # rules are provided to the rule engine as Suricata compatible
3441
- # strings, and Suricata evaluates them based on certain settings. For
3442
- # more information, see [Evaluation order for stateful rules][1] in
3443
- # the *Network Firewall Developer Guide*.
3630
+ # the policy. `STRICT_ORDER` is the default and recommended option.
3631
+ # With `STRICT_ORDER`, provide your rules in the order that you want
3632
+ # them to be evaluated. You can then choose one or more default
3633
+ # actions for packets that don't match any rules. Choose
3634
+ # `STRICT_ORDER` to have the stateful rules engine determine the
3635
+ # evaluation order of your rules. The default action for this rule
3636
+ # order is `PASS`, followed by `DROP`, `REJECT`, and `ALERT` actions.
3637
+ # Stateful rules are provided to the rule engine as Suricata
3638
+ # compatible strings, and Suricata evaluates them based on your
3639
+ # settings. For more information, see [Evaluation order for stateful
3640
+ # rules][1] in the *Network Firewall Developer Guide*.
3444
3641
  #
3445
3642
  #
3446
3643
  #
@@ -3507,9 +3704,8 @@ module Aws::NetworkFirewall
3507
3704
  # destination and sends an alert log message, if alert logging is
3508
3705
  # configured in the Firewall LoggingConfiguration.
3509
3706
  #
3510
- # * **ALERT** - Permits the packets to go to the intended destination
3511
- # and sends an alert log message, if alert logging is configured in
3512
- # the Firewall LoggingConfiguration.
3707
+ # * **ALERT** - Sends an alert log message, if alert logging is
3708
+ # configured in the Firewall LoggingConfiguration.
3513
3709
  #
3514
3710
  # You can use this action to test a rule that you intend to use to
3515
3711
  # drop traffic. You can enable the rule with `ALERT` action, verify
@@ -3812,12 +4008,12 @@ module Aws::NetworkFirewall
3812
4008
  # To use a TLS inspection configuration, you add it to a new Network
3813
4009
  # Firewall firewall policy, then you apply the firewall policy to a
3814
4010
  # firewall. Network Firewall acts as a proxy service to decrypt and
3815
- # inspect inbound traffic. You can reference a TLS inspection
3816
- # configuration from more than one firewall policy, and you can use a
3817
- # firewall policy in more than one firewall. For more information about
3818
- # using TLS inspection configurations, see [Decrypting SSL/TLS traffic
3819
- # with TLS inspection configurations][1] in the *Network Firewall
3820
- # Developer Guide*.
4011
+ # inspect the traffic traveling through your firewalls. You can
4012
+ # reference a TLS inspection configuration from more than one firewall
4013
+ # policy, and you can use a firewall policy in more than one firewall.
4014
+ # For more information about using TLS inspection configurations, see
4015
+ # [Inspecting SSL/TLS traffic with TLS inspection configurations][1] in
4016
+ # the *Network Firewall Developer Guide*.
3821
4017
  #
3822
4018
  #
3823
4019
  #
@@ -3915,6 +4111,10 @@ module Aws::NetworkFirewall
3915
4111
  # configuration.
3916
4112
  # @return [Array<Types::TlsCertificateData>]
3917
4113
  #
4114
+ # @!attribute [rw] certificate_authority
4115
+ # Contains metadata about an Certificate Manager certificate.
4116
+ # @return [Types::TlsCertificateData]
4117
+ #
3918
4118
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/TLSInspectionConfigurationResponse AWS API Documentation
3919
4119
  #
3920
4120
  class TLSInspectionConfigurationResponse < Struct.new(
@@ -3927,7 +4127,8 @@ module Aws::NetworkFirewall
3927
4127
  :last_modified_time,
3928
4128
  :number_of_associations,
3929
4129
  :encryption_configuration,
3930
- :certificates)
4130
+ :certificates,
4131
+ :certificate_authority)
3931
4132
  SENSITIVE = []
3932
4133
  include Aws::Structure
3933
4134
  end
@@ -4709,6 +4910,14 @@ module Aws::NetworkFirewall
4709
4910
  # track of updates made to the originating rule group.
4710
4911
  # @return [Types::SourceMetadata]
4711
4912
  #
4913
+ # @!attribute [rw] analyze_rule_group
4914
+ # Indicates whether you want Network Firewall to analyze the stateless
4915
+ # rules in the rule group for rule behavior such as asymmetric
4916
+ # routing. If set to `TRUE`, Network Firewall runs the analysis and
4917
+ # then updates the rule group for you. To run the stateless rule group
4918
+ # analyzer without updating the rule group, set `DryRun` to `TRUE`.
4919
+ # @return [Boolean]
4920
+ #
4712
4921
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/UpdateRuleGroupRequest AWS API Documentation
4713
4922
  #
4714
4923
  class UpdateRuleGroupRequest < Struct.new(
@@ -4721,7 +4930,8 @@ module Aws::NetworkFirewall
4721
4930
  :description,
4722
4931
  :dry_run,
4723
4932
  :encryption_configuration,
4724
- :source_metadata)
4933
+ :source_metadata,
4934
+ :analyze_rule_group)
4725
4935
  SENSITIVE = []
4726
4936
  include Aws::Structure
4727
4937
  end
@@ -4878,12 +5088,12 @@ module Aws::NetworkFirewall
4878
5088
  # To use a TLS inspection configuration, you add it to a new Network
4879
5089
  # Firewall firewall policy, then you apply the firewall policy to a
4880
5090
  # firewall. Network Firewall acts as a proxy service to decrypt and
4881
- # inspect inbound traffic. You can reference a TLS inspection
4882
- # configuration from more than one firewall policy, and you can use a
4883
- # firewall policy in more than one firewall. For more information
4884
- # about using TLS inspection configurations, see [Decrypting SSL/TLS
4885
- # traffic with TLS inspection configurations][1] in the *Network
4886
- # Firewall Developer Guide*.
5091
+ # inspect the traffic traveling through your firewalls. You can
5092
+ # reference a TLS inspection configuration from more than one firewall
5093
+ # policy, and you can use a firewall policy in more than one firewall.
5094
+ # For more information about using TLS inspection configurations, see
5095
+ # [Inspecting SSL/TLS traffic with TLS inspection configurations][1]
5096
+ # in the *Network Firewall Developer Guide*.
4887
5097
  #
4888
5098
  #
4889
5099
  #
@@ -52,6 +52,6 @@ require_relative 'aws-sdk-networkfirewall/customizations'
52
52
  # @!group service
53
53
  module Aws::NetworkFirewall
54
54
 
55
- GEM_VERSION = '1.35.0'
55
+ GEM_VERSION = '1.37.0'
56
56
 
57
57
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-networkfirewall
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.35.0
4
+ version: 1.37.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-09-27 00:00:00.000000000 Z
11
+ date: 2023-11-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core