aws-sdk-networkfirewall 1.107.0 → 1.108.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 +4 -4
- data/CHANGELOG.md +5 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-networkfirewall/client.rb +1001 -36
- data/lib/aws-sdk-networkfirewall/client_api.rb +260 -0
- data/lib/aws-sdk-networkfirewall/types.rb +1227 -76
- data/lib/aws-sdk-networkfirewall.rb +1 -1
- data/sig/client.rbs +97 -9
- data/sig/params.rbs +105 -9
- data/sig/types.rbs +196 -9
- metadata +3 -3
|
@@ -264,7 +264,8 @@ module Aws::NetworkFirewall
|
|
|
264
264
|
# An integer representing the maximum number attempts that will be made for
|
|
265
265
|
# a single request, including the initial attempt. For example,
|
|
266
266
|
# setting this value to 5 will result in a request being retried up to
|
|
267
|
-
# 4 times. Used in `standard` and `adaptive` retry modes.
|
|
267
|
+
# 4 times. Used in `standard` and `adaptive` retry modes. Defaults to 3,
|
|
268
|
+
# except for DynamoDB and DynamoDB Streams, which default to 4.
|
|
268
269
|
#
|
|
269
270
|
# @option options [String] :profile ("default")
|
|
270
271
|
# Used when loading credentials from the shared credentials file at `HOME/.aws/credentials`.
|
|
@@ -327,15 +328,15 @@ module Aws::NetworkFirewall
|
|
|
327
328
|
# used by the default backoff function. This option is only used in the
|
|
328
329
|
# `legacy` retry mode.
|
|
329
330
|
#
|
|
330
|
-
# @option options [String] :retry_mode ("
|
|
331
|
+
# @option options [String] :retry_mode ("standard")
|
|
331
332
|
# Specifies which retry algorithm to use. Values are:
|
|
332
333
|
#
|
|
333
|
-
# * `legacy` - The pre-existing retry behavior.
|
|
334
|
-
# value if no retry mode is provided.
|
|
334
|
+
# * `legacy` - The pre-existing retry behavior.
|
|
335
335
|
#
|
|
336
336
|
# * `standard` - A standardized set of retry rules across the AWS SDKs.
|
|
337
337
|
# This includes support for retry quotas, which limit the number of
|
|
338
|
-
# unsuccessful retries a client can make.
|
|
338
|
+
# unsuccessful retries a client can make. This is the default value
|
|
339
|
+
# if no retry mode is provided.
|
|
339
340
|
#
|
|
340
341
|
# * `adaptive` - A retry mode that includes all the functionality of
|
|
341
342
|
# `standard` mode along with automatic client side throttling.
|
|
@@ -1394,6 +1395,232 @@ module Aws::NetworkFirewall
|
|
|
1394
1395
|
req.send_request(options)
|
|
1395
1396
|
end
|
|
1396
1397
|
|
|
1398
|
+
# Creates a Next Generation policy according to the specifications.
|
|
1399
|
+
#
|
|
1400
|
+
# A Next Generation policy defines the behavior of a firewall in a
|
|
1401
|
+
# collection of firewall engine and IPS engine rule groups and other
|
|
1402
|
+
# settings. You can use one firewall policy for multiple firewalls. For
|
|
1403
|
+
# more information, see [Next Generation policies][1] in the *Network
|
|
1404
|
+
# Firewall Developer Guide*.
|
|
1405
|
+
#
|
|
1406
|
+
#
|
|
1407
|
+
#
|
|
1408
|
+
# [1]: https://docs.aws.amazon.com/network-firewall/latest/developerguide/firewall-policies-v2.html
|
|
1409
|
+
#
|
|
1410
|
+
# @option params [required, String] :firewall_policy_v2_name
|
|
1411
|
+
# The descriptive name of the Next Generation policy. You can't change
|
|
1412
|
+
# the name of a firewall policy after you create it.
|
|
1413
|
+
#
|
|
1414
|
+
# @option params [required, Types::FirewallPolicyV2] :firewall_policy_v2
|
|
1415
|
+
# The rule groups and other settings that define the Next Generation
|
|
1416
|
+
# policy.
|
|
1417
|
+
#
|
|
1418
|
+
# @option params [String] :description
|
|
1419
|
+
# A description of the firewall policy.
|
|
1420
|
+
#
|
|
1421
|
+
# @option params [Array<Types::Tag>] :tags
|
|
1422
|
+
# The key:value pairs to associate with the resource.
|
|
1423
|
+
#
|
|
1424
|
+
# @option params [Boolean] :dry_run
|
|
1425
|
+
# Indicates whether you want Network Firewall to just check the validity
|
|
1426
|
+
# of the request, rather than run the request.
|
|
1427
|
+
#
|
|
1428
|
+
# If set to `TRUE`, Network Firewall checks whether the request can run
|
|
1429
|
+
# successfully, but doesn't actually make the requested changes. The
|
|
1430
|
+
# call returns the value that the request would return if you ran it
|
|
1431
|
+
# with dry run set to `FALSE`, but doesn't make additions or changes to
|
|
1432
|
+
# your resources. This option allows you to make sure that you have the
|
|
1433
|
+
# required permissions to run the request and that your request
|
|
1434
|
+
# parameters are valid.
|
|
1435
|
+
#
|
|
1436
|
+
# If set to `FALSE`, Network Firewall makes the requested changes to
|
|
1437
|
+
# your resources.
|
|
1438
|
+
#
|
|
1439
|
+
# @option params [Types::EncryptionConfiguration] :encryption_configuration
|
|
1440
|
+
# A complex type that contains settings for encryption of your firewall
|
|
1441
|
+
# policy resources.
|
|
1442
|
+
#
|
|
1443
|
+
# @return [Types::CreateFirewallPolicyV2Response] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
|
1444
|
+
#
|
|
1445
|
+
# * {Types::CreateFirewallPolicyV2Response#update_token #update_token} => String
|
|
1446
|
+
# * {Types::CreateFirewallPolicyV2Response#firewall_policy_v2_response #firewall_policy_v2_response} => Types::FirewallPolicyV2Response
|
|
1447
|
+
#
|
|
1448
|
+
# @example Request syntax with placeholder values
|
|
1449
|
+
#
|
|
1450
|
+
# resp = client.create_firewall_policy_v2({
|
|
1451
|
+
# firewall_policy_v2_name: "ResourceName", # required
|
|
1452
|
+
# firewall_policy_v2: { # required
|
|
1453
|
+
# firewall_rule_group_entries: [
|
|
1454
|
+
# {
|
|
1455
|
+
# priority: 1,
|
|
1456
|
+
# resource_arn: "ResourceArn",
|
|
1457
|
+
# inline_rule_group: {
|
|
1458
|
+
# rules_source: { # required
|
|
1459
|
+
# rules_string: "RulesString",
|
|
1460
|
+
# firewall_rules: [
|
|
1461
|
+
# {
|
|
1462
|
+
# action: "ACCEPT", # required, accepts ACCEPT, DROP, REJECT, REJECT_DST, REJECT_BOTH
|
|
1463
|
+
# action_scope: "FLOW", # required, accepts FLOW, TX, HOOK, PACKET
|
|
1464
|
+
# hook: "TCP_ALL", # required, accepts TCP_ALL, TCP_FLOW_START, TCP_PRE_FLOW, TCP_PRE_STREAM, SCTP_ALL, SCTP_FLOW_START, SCTP_PRE_FLOW, SCTP_PRE_STREAM, IPV6_ALL, IPV6_FLOW_START, IPV6_PRE_FLOW, IPV6_PRE_STREAM, ICMPV6_ALL, ICMPV6_FLOW_START, ICMPV6_PRE_FLOW, ICMPV6_PRE_STREAM, UDP_ALL, UDP_FLOW_START, UDP_PRE_FLOW, UDP_PRE_STREAM, ICMP_ALL, ICMP_FLOW_START, ICMP_PRE_FLOW, ICMP_PRE_STREAM, ICMPV4_ALL, ICMPV4_FLOW_START, ICMPV4_PRE_FLOW, ICMPV4_PRE_STREAM, IP_ALL, IP_FLOW_START, IP_PRE_FLOW, IP_PRE_STREAM, IPV4_ALL, IPV4_FLOW_START, IPV4_PRE_FLOW, IPV4_PRE_STREAM, TLS_CLIENT_STARTED, TLS_CLIENT_HELLO, TLS_CLIENT_CERT, TLS_CLIENT_DATA, TLS_CLIENT_FINISHED, TLS_SERVER_STARTED, TLS_SERVER_HELLO, TLS_SERVER_CERT, TLS_SERVER_DATA, TLS_SERVER_FINISHED, HTTP1_REQUEST_STARTED, HTTP1_REQUEST_LINE, HTTP1_REQUEST_HEADERS, HTTP1_REQUEST_BODY, HTTP1_REQUEST_TRAILER, HTTP1_REQUEST_COMPLETE, HTTP1_RESPONSE_STARTED, HTTP1_RESPONSE_LINE, HTTP1_RESPONSE_HEADERS, HTTP1_RESPONSE_BODY, HTTP1_RESPONSE_TRAILER, HTTP1_RESPONSE_COMPLETE, HTTP2_STREAM_REQUEST_STARTED, HTTP2_STREAM_REQUEST_HEADERS, HTTP2_STREAM_REQUEST_DATA, HTTP2_STREAM_REQUEST_CLOSED, HTTP2_STREAM_REQUEST_COMPLETE, HTTP2_STREAM_RESPONSE_STARTED, HTTP2_STREAM_RESPONSE_HEADERS, HTTP2_STREAM_RESPONSE_DATA, HTTP2_STREAM_RESPONSE_CLOSED, HTTP2_STREAM_RESPONSE_COMPLETE, HTTP2_GLOBAL_REQUEST_STARTED, HTTP2_GLOBAL_REQUEST_COMPLETE, HTTP2_GLOBAL_RESPONSE_STARTED, HTTP2_GLOBAL_RESPONSE_COMPLETE, DOH2_STREAM_REQUEST_STARTED, DOH2_STREAM_REQUEST_HEADERS, DOH2_STREAM_REQUEST_DATA, DOH2_STREAM_REQUEST_CLOSED, DOH2_STREAM_REQUEST_COMPLETE, DOH2_STREAM_RESPONSE_STARTED, DOH2_STREAM_RESPONSE_HEADERS, DOH2_STREAM_RESPONSE_DATA, DOH2_STREAM_RESPONSE_CLOSED, DOH2_STREAM_RESPONSE_COMPLETE, DOH2_GLOBAL_REQUEST_STARTED, DOH2_GLOBAL_REQUEST_COMPLETE, DOH2_GLOBAL_RESPONSE_STARTED, DOH2_GLOBAL_RESPONSE_COMPLETE, DNS_REQUEST_STARTED, DNS_REQUEST_COMPLETE, DNS_RESPONSE_STARTED, DNS_RESPONSE_COMPLETE, SMTP_REQUEST_STARTED, SMTP_REQUEST_DATA, SMTP_REQUEST_COMPLETE, SMTP_RESPONSE_STARTED, SMTP_RESPONSE_DATA, SMTP_RESPONSE_COMPLETE, FTP_REQUEST_STARTED, FTP_REQUEST_COMPLETE, FTP_RESPONSE_STARTED, FTP_RESPONSE_COMPLETE, FTP_DATA_REQUEST_STARTED, FTP_DATA_REQUEST_COMPLETE, FTP_DATA_RESPONSE_STARTED, FTP_DATA_RESPONSE_COMPLETE, SMB_REQUEST_STARTED, SMB_REQUEST_COMPLETE, SMB_RESPONSE_STARTED, SMB_RESPONSE_COMPLETE, DCERPC_REQUEST_STARTED, DCERPC_REQUEST_COMPLETE, DCERPC_RESPONSE_STARTED, DCERPC_RESPONSE_COMPLETE, NFS_REQUEST_STARTED, NFS_REQUEST_COMPLETE, NFS_RESPONSE_STARTED, NFS_RESPONSE_COMPLETE, KRB5_REQUEST_STARTED, KRB5_REQUEST_COMPLETE, KRB5_RESPONSE_STARTED, KRB5_RESPONSE_COMPLETE, IKE_REQUEST_STARTED, IKE_REQUEST_COMPLETE, IKE_RESPONSE_STARTED, IKE_RESPONSE_COMPLETE, TFTP_REQUEST_STARTED, TFTP_REQUEST_COMPLETE, TFTP_RESPONSE_STARTED, TFTP_RESPONSE_COMPLETE, DHCP_REQUEST_STARTED, DHCP_REQUEST_COMPLETE, DHCP_RESPONSE_STARTED, DHCP_RESPONSE_COMPLETE, QUIC_REQUEST_STARTED, QUIC_REQUEST_COMPLETE, QUIC_RESPONSE_STARTED, QUIC_RESPONSE_COMPLETE, RDP_REQUEST_STARTED, RDP_REQUEST_COMPLETE, RDP_RESPONSE_STARTED, RDP_RESPONSE_COMPLETE, RFB_REQUEST_STARTED, RFB_REQUEST_COMPLETE, RFB_RESPONSE_STARTED, RFB_RESPONSE_COMPLETE, MQTT_REQUEST_STARTED, MQTT_REQUEST_COMPLETE, MQTT_RESPONSE_STARTED, MQTT_RESPONSE_COMPLETE, PGSQL_REQUEST_STARTED, PGSQL_REQUEST_COMPLETE, PGSQL_RESPONSE_STARTED, PGSQL_RESPONSE_COMPLETE, SNMP_REQUEST_STARTED, SNMP_REQUEST_COMPLETE, SNMP_RESPONSE_STARTED, SNMP_RESPONSE_COMPLETE, NTP_REQUEST_STARTED, NTP_REQUEST_COMPLETE, NTP_RESPONSE_STARTED, NTP_RESPONSE_COMPLETE, TELNET_REQUEST_STARTED, TELNET_REQUEST_COMPLETE, TELNET_RESPONSE_STARTED, TELNET_RESPONSE_COMPLETE, WEBSOCKET_REQUEST_STARTED, WEBSOCKET_REQUEST_COMPLETE, WEBSOCKET_RESPONSE_STARTED, WEBSOCKET_RESPONSE_COMPLETE, LDAP_REQUEST_STARTED, LDAP_REQUEST_COMPLETE, LDAP_RESPONSE_STARTED, LDAP_RESPONSE_COMPLETE, POP3_REQUEST_STARTED, POP3_REQUEST_COMPLETE, POP3_RESPONSE_STARTED, POP3_RESPONSE_COMPLETE, MDNS_REQUEST_STARTED, MDNS_REQUEST_COMPLETE, MDNS_RESPONSE_STARTED, MDNS_RESPONSE_COMPLETE, BITTORRENT_DHT_REQUEST_STARTED, BITTORRENT_DHT_REQUEST_COMPLETE, BITTORRENT_DHT_RESPONSE_STARTED, BITTORRENT_DHT_RESPONSE_COMPLETE, DNP3_REQUEST_STARTED, DNP3_REQUEST_COMPLETE, DNP3_RESPONSE_STARTED, DNP3_RESPONSE_COMPLETE, SSH_REQUEST_IN_PROGRESS, SSH_REQUEST_BANNER_WAIT_EOL, SSH_REQUEST_BANNER_DONE, SSH_REQUEST_FINISHED, SSH_RESPONSE_IN_PROGRESS, SSH_RESPONSE_BANNER_WAIT_EOL, SSH_RESPONSE_BANNER_DONE, SSH_RESPONSE_FINISHED
|
|
1465
|
+
# protocol: "IP", # required, accepts IP, TCP, UDP, ICMP, HTTP, FTP, TLS, SMB, DNS, DCERPC, SSH, SMTP, MSN, KRB5, IKEV2, TFTP, NTP, DHCP, HTTP2, QUIC, ICMPV4, ICMPV6, SCTP, IPV4, IPV6, DOH2, FTP_DATA, NFS, RDP, RFB, MQTT, PGSQL, SNMP, TELNET, WEBSOCKET, LDAP, POP3, MDNS, BITTORRENT_DHT, DNP3
|
|
1466
|
+
# source_i_ps: "Source",
|
|
1467
|
+
# dest_i_ps: "Destination",
|
|
1468
|
+
# source_ports: "Port",
|
|
1469
|
+
# dest_ports: "Port",
|
|
1470
|
+
# rule_options: [
|
|
1471
|
+
# {
|
|
1472
|
+
# keyword: "Keyword", # required
|
|
1473
|
+
# settings: ["Setting"],
|
|
1474
|
+
# },
|
|
1475
|
+
# ],
|
|
1476
|
+
# accept_prior_hooks: false,
|
|
1477
|
+
# alert_enabled: false,
|
|
1478
|
+
# bypass_ips_enabled: false,
|
|
1479
|
+
# rule_metadata: {
|
|
1480
|
+
# rule_enabled: false,
|
|
1481
|
+
# rule_description: "RuleDescriptionText",
|
|
1482
|
+
# },
|
|
1483
|
+
# },
|
|
1484
|
+
# ],
|
|
1485
|
+
# rules_source_list: {
|
|
1486
|
+
# targets: ["CollectionMember_String"], # required
|
|
1487
|
+
# target_types: ["TLS_SNI"], # required, accepts TLS_SNI, HTTP_HOST, AWS_ROUTE_53_RESOLVED_DOMAIN
|
|
1488
|
+
# generated_rules_type: "ALLOWLIST", # required, accepts ALLOWLIST, DENYLIST, REJECTLIST, ALERTLIST
|
|
1489
|
+
# },
|
|
1490
|
+
# },
|
|
1491
|
+
# rule_variables: {
|
|
1492
|
+
# ip_sets: {
|
|
1493
|
+
# "RuleVariableName" => {
|
|
1494
|
+
# definition: ["VariableDefinition"], # required
|
|
1495
|
+
# },
|
|
1496
|
+
# },
|
|
1497
|
+
# port_sets: {
|
|
1498
|
+
# "RuleVariableName" => {
|
|
1499
|
+
# definition: ["VariableDefinition"],
|
|
1500
|
+
# },
|
|
1501
|
+
# },
|
|
1502
|
+
# },
|
|
1503
|
+
# reference_sets: {
|
|
1504
|
+
# ip_set_references: {
|
|
1505
|
+
# "IPSetReferenceName" => {
|
|
1506
|
+
# reference_arn: "ResourceArn",
|
|
1507
|
+
# },
|
|
1508
|
+
# },
|
|
1509
|
+
# },
|
|
1510
|
+
# },
|
|
1511
|
+
# },
|
|
1512
|
+
# ],
|
|
1513
|
+
# ips_rule_group_entries: [
|
|
1514
|
+
# {
|
|
1515
|
+
# resource_arn: "ResourceArn",
|
|
1516
|
+
# inline_rule_group: {
|
|
1517
|
+
# rules_source: { # required
|
|
1518
|
+
# rules_string: "RulesString",
|
|
1519
|
+
# },
|
|
1520
|
+
# rule_variables: {
|
|
1521
|
+
# ip_sets: {
|
|
1522
|
+
# "RuleVariableName" => {
|
|
1523
|
+
# definition: ["VariableDefinition"], # required
|
|
1524
|
+
# },
|
|
1525
|
+
# },
|
|
1526
|
+
# port_sets: {
|
|
1527
|
+
# "RuleVariableName" => {
|
|
1528
|
+
# definition: ["VariableDefinition"],
|
|
1529
|
+
# },
|
|
1530
|
+
# },
|
|
1531
|
+
# },
|
|
1532
|
+
# reference_sets: {
|
|
1533
|
+
# ip_set_references: {
|
|
1534
|
+
# "IPSetReferenceName" => {
|
|
1535
|
+
# reference_arn: "ResourceArn",
|
|
1536
|
+
# },
|
|
1537
|
+
# },
|
|
1538
|
+
# },
|
|
1539
|
+
# },
|
|
1540
|
+
# override: {
|
|
1541
|
+
# action: "DROP_TO_ALERT", # accepts DROP_TO_ALERT
|
|
1542
|
+
# },
|
|
1543
|
+
# },
|
|
1544
|
+
# ],
|
|
1545
|
+
# policy_mode: "ENFORCE", # accepts ENFORCE, MONITOR
|
|
1546
|
+
# firewall_default_action: "DROP", # accepts DROP, ACCEPT, REJECT, ALERT
|
|
1547
|
+
# stateful_engine_options: {
|
|
1548
|
+
# stream_exception_policy: "DROP", # accepts DROP, REJECT
|
|
1549
|
+
# flow_timeouts: {
|
|
1550
|
+
# tcp_idle_timeout_seconds: 1,
|
|
1551
|
+
# },
|
|
1552
|
+
# },
|
|
1553
|
+
# tls_inspection_configuration_arn: "ResourceArn",
|
|
1554
|
+
# policy_variables: {
|
|
1555
|
+
# rule_variables: {
|
|
1556
|
+
# "RuleVariableName" => {
|
|
1557
|
+
# definition: ["VariableDefinition"], # required
|
|
1558
|
+
# },
|
|
1559
|
+
# },
|
|
1560
|
+
# },
|
|
1561
|
+
# route_53_resolved_ip_validation: {
|
|
1562
|
+
# action: "REJECT", # required, accepts REJECT, DROP, ALERT
|
|
1563
|
+
# dns_firewall_rule_group_id: "DNSFirewallRuleGroupId", # required
|
|
1564
|
+
# dns_expiry_exception_policy: "REJECT", # required, accepts REJECT, DROP, CONTINUE
|
|
1565
|
+
# bypass_destination_validation_ip_ranges: [
|
|
1566
|
+
# {
|
|
1567
|
+
# address_definition: "AddressDefinition", # required
|
|
1568
|
+
# },
|
|
1569
|
+
# ],
|
|
1570
|
+
# source_ip_ranges: [
|
|
1571
|
+
# {
|
|
1572
|
+
# address_definition: "AddressDefinition", # required
|
|
1573
|
+
# },
|
|
1574
|
+
# ],
|
|
1575
|
+
# },
|
|
1576
|
+
# },
|
|
1577
|
+
# description: "Description",
|
|
1578
|
+
# tags: [
|
|
1579
|
+
# {
|
|
1580
|
+
# key: "TagKey", # required
|
|
1581
|
+
# value: "TagValue", # required
|
|
1582
|
+
# },
|
|
1583
|
+
# ],
|
|
1584
|
+
# dry_run: false,
|
|
1585
|
+
# encryption_configuration: {
|
|
1586
|
+
# key_id: "KeyId",
|
|
1587
|
+
# type: "CUSTOMER_KMS", # required, accepts CUSTOMER_KMS, AWS_OWNED_KMS_KEY
|
|
1588
|
+
# },
|
|
1589
|
+
# })
|
|
1590
|
+
#
|
|
1591
|
+
# @example Response structure
|
|
1592
|
+
#
|
|
1593
|
+
# resp.update_token #=> String
|
|
1594
|
+
# resp.firewall_policy_v2_response.firewall_policy_v2_name #=> String
|
|
1595
|
+
# resp.firewall_policy_v2_response.firewall_policy_v2_arn #=> String
|
|
1596
|
+
# resp.firewall_policy_v2_response.firewall_policy_v2_id #=> String
|
|
1597
|
+
# resp.firewall_policy_v2_response.description #=> String
|
|
1598
|
+
# resp.firewall_policy_v2_response.firewall_policy_v2_status #=> String, one of "ACTIVE", "DELETING", "ERROR", "UPDATING"
|
|
1599
|
+
# resp.firewall_policy_v2_response.status_message #=> String
|
|
1600
|
+
# resp.firewall_policy_v2_response.tags #=> Array
|
|
1601
|
+
# resp.firewall_policy_v2_response.tags[0].key #=> String
|
|
1602
|
+
# resp.firewall_policy_v2_response.tags[0].value #=> String
|
|
1603
|
+
# resp.firewall_policy_v2_response.consumed_firewall_rule_capacity #=> Integer
|
|
1604
|
+
# resp.firewall_policy_v2_response.consumed_ips_rule_capacity #=> Integer
|
|
1605
|
+
# resp.firewall_policy_v2_response.consumed_ips_domain_capacity #=> Integer
|
|
1606
|
+
# resp.firewall_policy_v2_response.number_of_associations #=> Integer
|
|
1607
|
+
# resp.firewall_policy_v2_response.encryption_configuration.key_id #=> String
|
|
1608
|
+
# resp.firewall_policy_v2_response.encryption_configuration.type #=> String, one of "CUSTOMER_KMS", "AWS_OWNED_KMS_KEY"
|
|
1609
|
+
# resp.firewall_policy_v2_response.errors #=> Array
|
|
1610
|
+
# resp.firewall_policy_v2_response.errors[0].code #=> String, one of "DNS_FIREWALL_RULE_GROUP_UNAVAILABLE", "ROUTE53_RESOLVED_IP_VALIDATION_MISSING"
|
|
1611
|
+
# resp.firewall_policy_v2_response.errors[0].message #=> String
|
|
1612
|
+
# resp.firewall_policy_v2_response.errors[0].resource_id #=> String
|
|
1613
|
+
# resp.firewall_policy_v2_response.last_modified_time #=> Time
|
|
1614
|
+
#
|
|
1615
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/CreateFirewallPolicyV2 AWS API Documentation
|
|
1616
|
+
#
|
|
1617
|
+
# @overload create_firewall_policy_v2(params = {})
|
|
1618
|
+
# @param [Hash] params ({})
|
|
1619
|
+
def create_firewall_policy_v2(params = {}, options = {})
|
|
1620
|
+
req = build_request(:create_firewall_policy_v2, params)
|
|
1621
|
+
req.send_request(options)
|
|
1622
|
+
end
|
|
1623
|
+
|
|
1397
1624
|
# Creates an Network Firewall Proxy
|
|
1398
1625
|
#
|
|
1399
1626
|
# Attaches a Proxy configuration to a NAT Gateway.
|
|
@@ -1875,6 +2102,14 @@ module Aws::NetworkFirewall
|
|
|
1875
2102
|
#
|
|
1876
2103
|
# </note>
|
|
1877
2104
|
#
|
|
2105
|
+
# @option params [Types::FirewallRuleGroup] :firewall_rule_group
|
|
2106
|
+
# An object that defines the rules in a firewall engine rule group, for
|
|
2107
|
+
# use in a Next Generation policy.
|
|
2108
|
+
#
|
|
2109
|
+
# @option params [Types::IpsRuleGroup] :ips_rule_group
|
|
2110
|
+
# An object that defines the rules in an IPS engine rule group, for use
|
|
2111
|
+
# in a Next Generation policy.
|
|
2112
|
+
#
|
|
1878
2113
|
# @option params [String] :rules
|
|
1879
2114
|
# A string containing stateful rule group rules specifications in
|
|
1880
2115
|
# Suricata flat format, with one rule per line. Use this to import your
|
|
@@ -1891,9 +2126,18 @@ module Aws::NetworkFirewall
|
|
|
1891
2126
|
# populated from your string.
|
|
1892
2127
|
#
|
|
1893
2128
|
# @option params [required, String] :type
|
|
1894
|
-
# Indicates
|
|
1895
|
-
#
|
|
1896
|
-
#
|
|
2129
|
+
# Indicates the type of the rule group. Valid values are:
|
|
2130
|
+
#
|
|
2131
|
+
# * `STATELESS` - Stateless rules, for use in a Classic Network Firewall
|
|
2132
|
+
# policy.
|
|
2133
|
+
#
|
|
2134
|
+
# * `STATEFUL` - Stateful rules, for use in a Classic Network Firewall
|
|
2135
|
+
# policy.
|
|
2136
|
+
#
|
|
2137
|
+
# * `FIREWALL` - Firewall engine rules, for use in a Next Generation
|
|
2138
|
+
# policy.
|
|
2139
|
+
#
|
|
2140
|
+
# * `IPS` - IPS engine rules, for use in a Next Generation policy.
|
|
1897
2141
|
#
|
|
1898
2142
|
# @option params [String] :description
|
|
1899
2143
|
# A description of the rule group.
|
|
@@ -2106,8 +2350,86 @@ module Aws::NetworkFirewall
|
|
|
2106
2350
|
# rule_order: "DEFAULT_ACTION_ORDER", # accepts DEFAULT_ACTION_ORDER, STRICT_ORDER
|
|
2107
2351
|
# },
|
|
2108
2352
|
# },
|
|
2353
|
+
# firewall_rule_group: {
|
|
2354
|
+
# rules_source: { # required
|
|
2355
|
+
# rules_string: "RulesString",
|
|
2356
|
+
# firewall_rules: [
|
|
2357
|
+
# {
|
|
2358
|
+
# action: "ACCEPT", # required, accepts ACCEPT, DROP, REJECT, REJECT_DST, REJECT_BOTH
|
|
2359
|
+
# action_scope: "FLOW", # required, accepts FLOW, TX, HOOK, PACKET
|
|
2360
|
+
# hook: "TCP_ALL", # required, accepts TCP_ALL, TCP_FLOW_START, TCP_PRE_FLOW, TCP_PRE_STREAM, SCTP_ALL, SCTP_FLOW_START, SCTP_PRE_FLOW, SCTP_PRE_STREAM, IPV6_ALL, IPV6_FLOW_START, IPV6_PRE_FLOW, IPV6_PRE_STREAM, ICMPV6_ALL, ICMPV6_FLOW_START, ICMPV6_PRE_FLOW, ICMPV6_PRE_STREAM, UDP_ALL, UDP_FLOW_START, UDP_PRE_FLOW, UDP_PRE_STREAM, ICMP_ALL, ICMP_FLOW_START, ICMP_PRE_FLOW, ICMP_PRE_STREAM, ICMPV4_ALL, ICMPV4_FLOW_START, ICMPV4_PRE_FLOW, ICMPV4_PRE_STREAM, IP_ALL, IP_FLOW_START, IP_PRE_FLOW, IP_PRE_STREAM, IPV4_ALL, IPV4_FLOW_START, IPV4_PRE_FLOW, IPV4_PRE_STREAM, TLS_CLIENT_STARTED, TLS_CLIENT_HELLO, TLS_CLIENT_CERT, TLS_CLIENT_DATA, TLS_CLIENT_FINISHED, TLS_SERVER_STARTED, TLS_SERVER_HELLO, TLS_SERVER_CERT, TLS_SERVER_DATA, TLS_SERVER_FINISHED, HTTP1_REQUEST_STARTED, HTTP1_REQUEST_LINE, HTTP1_REQUEST_HEADERS, HTTP1_REQUEST_BODY, HTTP1_REQUEST_TRAILER, HTTP1_REQUEST_COMPLETE, HTTP1_RESPONSE_STARTED, HTTP1_RESPONSE_LINE, HTTP1_RESPONSE_HEADERS, HTTP1_RESPONSE_BODY, HTTP1_RESPONSE_TRAILER, HTTP1_RESPONSE_COMPLETE, HTTP2_STREAM_REQUEST_STARTED, HTTP2_STREAM_REQUEST_HEADERS, HTTP2_STREAM_REQUEST_DATA, HTTP2_STREAM_REQUEST_CLOSED, HTTP2_STREAM_REQUEST_COMPLETE, HTTP2_STREAM_RESPONSE_STARTED, HTTP2_STREAM_RESPONSE_HEADERS, HTTP2_STREAM_RESPONSE_DATA, HTTP2_STREAM_RESPONSE_CLOSED, HTTP2_STREAM_RESPONSE_COMPLETE, HTTP2_GLOBAL_REQUEST_STARTED, HTTP2_GLOBAL_REQUEST_COMPLETE, HTTP2_GLOBAL_RESPONSE_STARTED, HTTP2_GLOBAL_RESPONSE_COMPLETE, DOH2_STREAM_REQUEST_STARTED, DOH2_STREAM_REQUEST_HEADERS, DOH2_STREAM_REQUEST_DATA, DOH2_STREAM_REQUEST_CLOSED, DOH2_STREAM_REQUEST_COMPLETE, DOH2_STREAM_RESPONSE_STARTED, DOH2_STREAM_RESPONSE_HEADERS, DOH2_STREAM_RESPONSE_DATA, DOH2_STREAM_RESPONSE_CLOSED, DOH2_STREAM_RESPONSE_COMPLETE, DOH2_GLOBAL_REQUEST_STARTED, DOH2_GLOBAL_REQUEST_COMPLETE, DOH2_GLOBAL_RESPONSE_STARTED, DOH2_GLOBAL_RESPONSE_COMPLETE, DNS_REQUEST_STARTED, DNS_REQUEST_COMPLETE, DNS_RESPONSE_STARTED, DNS_RESPONSE_COMPLETE, SMTP_REQUEST_STARTED, SMTP_REQUEST_DATA, SMTP_REQUEST_COMPLETE, SMTP_RESPONSE_STARTED, SMTP_RESPONSE_DATA, SMTP_RESPONSE_COMPLETE, FTP_REQUEST_STARTED, FTP_REQUEST_COMPLETE, FTP_RESPONSE_STARTED, FTP_RESPONSE_COMPLETE, FTP_DATA_REQUEST_STARTED, FTP_DATA_REQUEST_COMPLETE, FTP_DATA_RESPONSE_STARTED, FTP_DATA_RESPONSE_COMPLETE, SMB_REQUEST_STARTED, SMB_REQUEST_COMPLETE, SMB_RESPONSE_STARTED, SMB_RESPONSE_COMPLETE, DCERPC_REQUEST_STARTED, DCERPC_REQUEST_COMPLETE, DCERPC_RESPONSE_STARTED, DCERPC_RESPONSE_COMPLETE, NFS_REQUEST_STARTED, NFS_REQUEST_COMPLETE, NFS_RESPONSE_STARTED, NFS_RESPONSE_COMPLETE, KRB5_REQUEST_STARTED, KRB5_REQUEST_COMPLETE, KRB5_RESPONSE_STARTED, KRB5_RESPONSE_COMPLETE, IKE_REQUEST_STARTED, IKE_REQUEST_COMPLETE, IKE_RESPONSE_STARTED, IKE_RESPONSE_COMPLETE, TFTP_REQUEST_STARTED, TFTP_REQUEST_COMPLETE, TFTP_RESPONSE_STARTED, TFTP_RESPONSE_COMPLETE, DHCP_REQUEST_STARTED, DHCP_REQUEST_COMPLETE, DHCP_RESPONSE_STARTED, DHCP_RESPONSE_COMPLETE, QUIC_REQUEST_STARTED, QUIC_REQUEST_COMPLETE, QUIC_RESPONSE_STARTED, QUIC_RESPONSE_COMPLETE, RDP_REQUEST_STARTED, RDP_REQUEST_COMPLETE, RDP_RESPONSE_STARTED, RDP_RESPONSE_COMPLETE, RFB_REQUEST_STARTED, RFB_REQUEST_COMPLETE, RFB_RESPONSE_STARTED, RFB_RESPONSE_COMPLETE, MQTT_REQUEST_STARTED, MQTT_REQUEST_COMPLETE, MQTT_RESPONSE_STARTED, MQTT_RESPONSE_COMPLETE, PGSQL_REQUEST_STARTED, PGSQL_REQUEST_COMPLETE, PGSQL_RESPONSE_STARTED, PGSQL_RESPONSE_COMPLETE, SNMP_REQUEST_STARTED, SNMP_REQUEST_COMPLETE, SNMP_RESPONSE_STARTED, SNMP_RESPONSE_COMPLETE, NTP_REQUEST_STARTED, NTP_REQUEST_COMPLETE, NTP_RESPONSE_STARTED, NTP_RESPONSE_COMPLETE, TELNET_REQUEST_STARTED, TELNET_REQUEST_COMPLETE, TELNET_RESPONSE_STARTED, TELNET_RESPONSE_COMPLETE, WEBSOCKET_REQUEST_STARTED, WEBSOCKET_REQUEST_COMPLETE, WEBSOCKET_RESPONSE_STARTED, WEBSOCKET_RESPONSE_COMPLETE, LDAP_REQUEST_STARTED, LDAP_REQUEST_COMPLETE, LDAP_RESPONSE_STARTED, LDAP_RESPONSE_COMPLETE, POP3_REQUEST_STARTED, POP3_REQUEST_COMPLETE, POP3_RESPONSE_STARTED, POP3_RESPONSE_COMPLETE, MDNS_REQUEST_STARTED, MDNS_REQUEST_COMPLETE, MDNS_RESPONSE_STARTED, MDNS_RESPONSE_COMPLETE, BITTORRENT_DHT_REQUEST_STARTED, BITTORRENT_DHT_REQUEST_COMPLETE, BITTORRENT_DHT_RESPONSE_STARTED, BITTORRENT_DHT_RESPONSE_COMPLETE, DNP3_REQUEST_STARTED, DNP3_REQUEST_COMPLETE, DNP3_RESPONSE_STARTED, DNP3_RESPONSE_COMPLETE, SSH_REQUEST_IN_PROGRESS, SSH_REQUEST_BANNER_WAIT_EOL, SSH_REQUEST_BANNER_DONE, SSH_REQUEST_FINISHED, SSH_RESPONSE_IN_PROGRESS, SSH_RESPONSE_BANNER_WAIT_EOL, SSH_RESPONSE_BANNER_DONE, SSH_RESPONSE_FINISHED
|
|
2361
|
+
# protocol: "IP", # required, accepts IP, TCP, UDP, ICMP, HTTP, FTP, TLS, SMB, DNS, DCERPC, SSH, SMTP, MSN, KRB5, IKEV2, TFTP, NTP, DHCP, HTTP2, QUIC, ICMPV4, ICMPV6, SCTP, IPV4, IPV6, DOH2, FTP_DATA, NFS, RDP, RFB, MQTT, PGSQL, SNMP, TELNET, WEBSOCKET, LDAP, POP3, MDNS, BITTORRENT_DHT, DNP3
|
|
2362
|
+
# source_i_ps: "Source",
|
|
2363
|
+
# dest_i_ps: "Destination",
|
|
2364
|
+
# source_ports: "Port",
|
|
2365
|
+
# dest_ports: "Port",
|
|
2366
|
+
# rule_options: [
|
|
2367
|
+
# {
|
|
2368
|
+
# keyword: "Keyword", # required
|
|
2369
|
+
# settings: ["Setting"],
|
|
2370
|
+
# },
|
|
2371
|
+
# ],
|
|
2372
|
+
# accept_prior_hooks: false,
|
|
2373
|
+
# alert_enabled: false,
|
|
2374
|
+
# bypass_ips_enabled: false,
|
|
2375
|
+
# rule_metadata: {
|
|
2376
|
+
# rule_enabled: false,
|
|
2377
|
+
# rule_description: "RuleDescriptionText",
|
|
2378
|
+
# },
|
|
2379
|
+
# },
|
|
2380
|
+
# ],
|
|
2381
|
+
# rules_source_list: {
|
|
2382
|
+
# targets: ["CollectionMember_String"], # required
|
|
2383
|
+
# target_types: ["TLS_SNI"], # required, accepts TLS_SNI, HTTP_HOST, AWS_ROUTE_53_RESOLVED_DOMAIN
|
|
2384
|
+
# generated_rules_type: "ALLOWLIST", # required, accepts ALLOWLIST, DENYLIST, REJECTLIST, ALERTLIST
|
|
2385
|
+
# },
|
|
2386
|
+
# },
|
|
2387
|
+
# rule_variables: {
|
|
2388
|
+
# ip_sets: {
|
|
2389
|
+
# "RuleVariableName" => {
|
|
2390
|
+
# definition: ["VariableDefinition"], # required
|
|
2391
|
+
# },
|
|
2392
|
+
# },
|
|
2393
|
+
# port_sets: {
|
|
2394
|
+
# "RuleVariableName" => {
|
|
2395
|
+
# definition: ["VariableDefinition"],
|
|
2396
|
+
# },
|
|
2397
|
+
# },
|
|
2398
|
+
# },
|
|
2399
|
+
# reference_sets: {
|
|
2400
|
+
# ip_set_references: {
|
|
2401
|
+
# "IPSetReferenceName" => {
|
|
2402
|
+
# reference_arn: "ResourceArn",
|
|
2403
|
+
# },
|
|
2404
|
+
# },
|
|
2405
|
+
# },
|
|
2406
|
+
# },
|
|
2407
|
+
# ips_rule_group: {
|
|
2408
|
+
# rules_source: { # required
|
|
2409
|
+
# rules_string: "RulesString",
|
|
2410
|
+
# },
|
|
2411
|
+
# rule_variables: {
|
|
2412
|
+
# ip_sets: {
|
|
2413
|
+
# "RuleVariableName" => {
|
|
2414
|
+
# definition: ["VariableDefinition"], # required
|
|
2415
|
+
# },
|
|
2416
|
+
# },
|
|
2417
|
+
# port_sets: {
|
|
2418
|
+
# "RuleVariableName" => {
|
|
2419
|
+
# definition: ["VariableDefinition"],
|
|
2420
|
+
# },
|
|
2421
|
+
# },
|
|
2422
|
+
# },
|
|
2423
|
+
# reference_sets: {
|
|
2424
|
+
# ip_set_references: {
|
|
2425
|
+
# "IPSetReferenceName" => {
|
|
2426
|
+
# reference_arn: "ResourceArn",
|
|
2427
|
+
# },
|
|
2428
|
+
# },
|
|
2429
|
+
# },
|
|
2430
|
+
# },
|
|
2109
2431
|
# rules: "RulesString",
|
|
2110
|
-
# type: "STATELESS", # required, accepts STATELESS, STATEFUL, STATEFUL_DOMAIN
|
|
2432
|
+
# type: "STATELESS", # required, accepts STATELESS, STATEFUL, STATEFUL_DOMAIN, FIREWALL, IPS
|
|
2111
2433
|
# description: "Description",
|
|
2112
2434
|
# capacity: 1, # required
|
|
2113
2435
|
# tags: [
|
|
@@ -2138,7 +2460,7 @@ module Aws::NetworkFirewall
|
|
|
2138
2460
|
# resp.rule_group_response.rule_group_name #=> String
|
|
2139
2461
|
# resp.rule_group_response.rule_group_id #=> String
|
|
2140
2462
|
# resp.rule_group_response.description #=> String
|
|
2141
|
-
# resp.rule_group_response.type #=> String, one of "STATELESS", "STATEFUL", "STATEFUL_DOMAIN"
|
|
2463
|
+
# resp.rule_group_response.type #=> String, one of "STATELESS", "STATEFUL", "STATEFUL_DOMAIN", "FIREWALL", "IPS"
|
|
2142
2464
|
# resp.rule_group_response.capacity #=> Integer
|
|
2143
2465
|
# resp.rule_group_response.rule_group_status #=> String, one of "ACTIVE", "DELETING", "ERROR", "UPDATING"
|
|
2144
2466
|
# resp.rule_group_response.tags #=> Array
|
|
@@ -2363,9 +2685,9 @@ module Aws::NetworkFirewall
|
|
|
2363
2685
|
#
|
|
2364
2686
|
# @option params [required, Types::SubnetMapping] :subnet_mapping
|
|
2365
2687
|
# The ID for a subnet that's used in an association with a firewall.
|
|
2366
|
-
# This is used in CreateFirewall
|
|
2367
|
-
# CreateVpcEndpointAssociation
|
|
2368
|
-
# the associated firewall in each subnet that you specify, to filter
|
|
2688
|
+
# This is used in `CreateFirewall`, `AssociateSubnets`, and
|
|
2689
|
+
# `CreateVpcEndpointAssociation`. Network Firewall creates an instance
|
|
2690
|
+
# of the associated firewall in each subnet that you specify, to filter
|
|
2369
2691
|
# traffic in the subnet's Availability Zone.
|
|
2370
2692
|
#
|
|
2371
2693
|
# @option params [String] :description
|
|
@@ -2634,6 +2956,62 @@ module Aws::NetworkFirewall
|
|
|
2634
2956
|
req.send_request(options)
|
|
2635
2957
|
end
|
|
2636
2958
|
|
|
2959
|
+
# Deletes the specified FirewallPolicyV2.
|
|
2960
|
+
#
|
|
2961
|
+
# @option params [String] :firewall_policy_v2_arn
|
|
2962
|
+
# The Amazon Resource Name (ARN) of the Next Generation policy.
|
|
2963
|
+
#
|
|
2964
|
+
# You must specify the ARN or the name, and you can specify both.
|
|
2965
|
+
#
|
|
2966
|
+
# @option params [String] :firewall_policy_v2_name
|
|
2967
|
+
# The descriptive name of the Next Generation policy. You can't change
|
|
2968
|
+
# the name of a firewall policy after you create it.
|
|
2969
|
+
#
|
|
2970
|
+
# You must specify the ARN or the name, and you can specify both.
|
|
2971
|
+
#
|
|
2972
|
+
# @return [Types::DeleteFirewallPolicyV2Response] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
|
2973
|
+
#
|
|
2974
|
+
# * {Types::DeleteFirewallPolicyV2Response#firewall_policy_v2_response #firewall_policy_v2_response} => Types::FirewallPolicyV2Response
|
|
2975
|
+
#
|
|
2976
|
+
# @example Request syntax with placeholder values
|
|
2977
|
+
#
|
|
2978
|
+
# resp = client.delete_firewall_policy_v2({
|
|
2979
|
+
# firewall_policy_v2_arn: "ResourceArn",
|
|
2980
|
+
# firewall_policy_v2_name: "ResourceName",
|
|
2981
|
+
# })
|
|
2982
|
+
#
|
|
2983
|
+
# @example Response structure
|
|
2984
|
+
#
|
|
2985
|
+
# resp.firewall_policy_v2_response.firewall_policy_v2_name #=> String
|
|
2986
|
+
# resp.firewall_policy_v2_response.firewall_policy_v2_arn #=> String
|
|
2987
|
+
# resp.firewall_policy_v2_response.firewall_policy_v2_id #=> String
|
|
2988
|
+
# resp.firewall_policy_v2_response.description #=> String
|
|
2989
|
+
# resp.firewall_policy_v2_response.firewall_policy_v2_status #=> String, one of "ACTIVE", "DELETING", "ERROR", "UPDATING"
|
|
2990
|
+
# resp.firewall_policy_v2_response.status_message #=> String
|
|
2991
|
+
# resp.firewall_policy_v2_response.tags #=> Array
|
|
2992
|
+
# resp.firewall_policy_v2_response.tags[0].key #=> String
|
|
2993
|
+
# resp.firewall_policy_v2_response.tags[0].value #=> String
|
|
2994
|
+
# resp.firewall_policy_v2_response.consumed_firewall_rule_capacity #=> Integer
|
|
2995
|
+
# resp.firewall_policy_v2_response.consumed_ips_rule_capacity #=> Integer
|
|
2996
|
+
# resp.firewall_policy_v2_response.consumed_ips_domain_capacity #=> Integer
|
|
2997
|
+
# resp.firewall_policy_v2_response.number_of_associations #=> Integer
|
|
2998
|
+
# resp.firewall_policy_v2_response.encryption_configuration.key_id #=> String
|
|
2999
|
+
# resp.firewall_policy_v2_response.encryption_configuration.type #=> String, one of "CUSTOMER_KMS", "AWS_OWNED_KMS_KEY"
|
|
3000
|
+
# resp.firewall_policy_v2_response.errors #=> Array
|
|
3001
|
+
# resp.firewall_policy_v2_response.errors[0].code #=> String, one of "DNS_FIREWALL_RULE_GROUP_UNAVAILABLE", "ROUTE53_RESOLVED_IP_VALIDATION_MISSING"
|
|
3002
|
+
# resp.firewall_policy_v2_response.errors[0].message #=> String
|
|
3003
|
+
# resp.firewall_policy_v2_response.errors[0].resource_id #=> String
|
|
3004
|
+
# resp.firewall_policy_v2_response.last_modified_time #=> Time
|
|
3005
|
+
#
|
|
3006
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DeleteFirewallPolicyV2 AWS API Documentation
|
|
3007
|
+
#
|
|
3008
|
+
# @overload delete_firewall_policy_v2(params = {})
|
|
3009
|
+
# @param [Hash] params ({})
|
|
3010
|
+
def delete_firewall_policy_v2(params = {}, options = {})
|
|
3011
|
+
req = build_request(:delete_firewall_policy_v2, params)
|
|
3012
|
+
req.send_request(options)
|
|
3013
|
+
end
|
|
3014
|
+
|
|
2637
3015
|
# Deletes a transit gateway attachment from a Network Firewall. Either
|
|
2638
3016
|
# the firewall owner or the transit gateway owner can delete the
|
|
2639
3017
|
# attachment.
|
|
@@ -2912,9 +3290,18 @@ module Aws::NetworkFirewall
|
|
|
2912
3290
|
# You must specify the ARN or the name, and you can specify both.
|
|
2913
3291
|
#
|
|
2914
3292
|
# @option params [String] :type
|
|
2915
|
-
# Indicates
|
|
2916
|
-
#
|
|
2917
|
-
#
|
|
3293
|
+
# Indicates the type of the rule group. Valid values are:
|
|
3294
|
+
#
|
|
3295
|
+
# * `STATELESS` - Stateless rules, for use in a Classic Network Firewall
|
|
3296
|
+
# policy.
|
|
3297
|
+
#
|
|
3298
|
+
# * `STATEFUL` - Stateful rules, for use in a Classic Network Firewall
|
|
3299
|
+
# policy.
|
|
3300
|
+
#
|
|
3301
|
+
# * `FIREWALL` - Firewall engine rules, for use in a Next Generation
|
|
3302
|
+
# policy.
|
|
3303
|
+
#
|
|
3304
|
+
# * `IPS` - IPS engine rules, for use in a Next Generation policy.
|
|
2918
3305
|
#
|
|
2919
3306
|
# <note markdown="1"> This setting is required for requests that do not include the
|
|
2920
3307
|
# `RuleGroupARN`.
|
|
@@ -2930,7 +3317,7 @@ module Aws::NetworkFirewall
|
|
|
2930
3317
|
# resp = client.delete_rule_group({
|
|
2931
3318
|
# rule_group_name: "ResourceName",
|
|
2932
3319
|
# rule_group_arn: "ResourceArn",
|
|
2933
|
-
# type: "STATELESS", # accepts STATELESS, STATEFUL, STATEFUL_DOMAIN
|
|
3320
|
+
# type: "STATELESS", # accepts STATELESS, STATEFUL, STATEFUL_DOMAIN, FIREWALL, IPS
|
|
2934
3321
|
# })
|
|
2935
3322
|
#
|
|
2936
3323
|
# @example Response structure
|
|
@@ -2939,7 +3326,7 @@ module Aws::NetworkFirewall
|
|
|
2939
3326
|
# resp.rule_group_response.rule_group_name #=> String
|
|
2940
3327
|
# resp.rule_group_response.rule_group_id #=> String
|
|
2941
3328
|
# resp.rule_group_response.description #=> String
|
|
2942
|
-
# resp.rule_group_response.type #=> String, one of "STATELESS", "STATEFUL", "STATEFUL_DOMAIN"
|
|
3329
|
+
# resp.rule_group_response.type #=> String, one of "STATELESS", "STATEFUL", "STATEFUL_DOMAIN", "FIREWALL", "IPS"
|
|
2943
3330
|
# resp.rule_group_response.capacity #=> Integer
|
|
2944
3331
|
# resp.rule_group_response.rule_group_status #=> String, one of "ACTIVE", "DELETING", "ERROR", "UPDATING"
|
|
2945
3332
|
# resp.rule_group_response.tags #=> Array
|
|
@@ -3375,6 +3762,136 @@ module Aws::NetworkFirewall
|
|
|
3375
3762
|
req.send_request(options)
|
|
3376
3763
|
end
|
|
3377
3764
|
|
|
3765
|
+
# Returns the data objects for the specified Next Generation policy.
|
|
3766
|
+
#
|
|
3767
|
+
# @option params [String] :firewall_policy_v2_arn
|
|
3768
|
+
# The Amazon Resource Name (ARN) of the Next Generation policy.
|
|
3769
|
+
#
|
|
3770
|
+
# You must specify the ARN or the name, and you can specify both.
|
|
3771
|
+
#
|
|
3772
|
+
# @option params [String] :firewall_policy_v2_name
|
|
3773
|
+
# The descriptive name of the Next Generation policy. You can't change
|
|
3774
|
+
# the name of a firewall policy after you create it.
|
|
3775
|
+
#
|
|
3776
|
+
# You must specify the ARN or the name, and you can specify both.
|
|
3777
|
+
#
|
|
3778
|
+
# @option params [String] :rule_output_format
|
|
3779
|
+
# The format in which to return the rules of any firewall engine rule
|
|
3780
|
+
# groups that are embedded in the policy. Specify `FIREWALL_RULES` for
|
|
3781
|
+
# structured `FirewallRule` objects or `RULES_STRING` for a
|
|
3782
|
+
# Suricata-compatible firewall-mode rule string. If you don't specify a
|
|
3783
|
+
# format, Network Firewall returns each embedded rule group in the
|
|
3784
|
+
# format you provided it in. Referenced rule groups aren't affected.
|
|
3785
|
+
#
|
|
3786
|
+
# @return [Types::DescribeFirewallPolicyV2Response] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
|
3787
|
+
#
|
|
3788
|
+
# * {Types::DescribeFirewallPolicyV2Response#update_token #update_token} => String
|
|
3789
|
+
# * {Types::DescribeFirewallPolicyV2Response#firewall_policy_v2_response #firewall_policy_v2_response} => Types::FirewallPolicyV2Response
|
|
3790
|
+
# * {Types::DescribeFirewallPolicyV2Response#firewall_policy_v2 #firewall_policy_v2} => Types::FirewallPolicyV2
|
|
3791
|
+
#
|
|
3792
|
+
# @example Request syntax with placeholder values
|
|
3793
|
+
#
|
|
3794
|
+
# resp = client.describe_firewall_policy_v2({
|
|
3795
|
+
# firewall_policy_v2_arn: "ResourceArn",
|
|
3796
|
+
# firewall_policy_v2_name: "ResourceName",
|
|
3797
|
+
# rule_output_format: "FIREWALL_RULES", # accepts FIREWALL_RULES, RULES_STRING
|
|
3798
|
+
# })
|
|
3799
|
+
#
|
|
3800
|
+
# @example Response structure
|
|
3801
|
+
#
|
|
3802
|
+
# resp.update_token #=> String
|
|
3803
|
+
# resp.firewall_policy_v2_response.firewall_policy_v2_name #=> String
|
|
3804
|
+
# resp.firewall_policy_v2_response.firewall_policy_v2_arn #=> String
|
|
3805
|
+
# resp.firewall_policy_v2_response.firewall_policy_v2_id #=> String
|
|
3806
|
+
# resp.firewall_policy_v2_response.description #=> String
|
|
3807
|
+
# resp.firewall_policy_v2_response.firewall_policy_v2_status #=> String, one of "ACTIVE", "DELETING", "ERROR", "UPDATING"
|
|
3808
|
+
# resp.firewall_policy_v2_response.status_message #=> String
|
|
3809
|
+
# resp.firewall_policy_v2_response.tags #=> Array
|
|
3810
|
+
# resp.firewall_policy_v2_response.tags[0].key #=> String
|
|
3811
|
+
# resp.firewall_policy_v2_response.tags[0].value #=> String
|
|
3812
|
+
# resp.firewall_policy_v2_response.consumed_firewall_rule_capacity #=> Integer
|
|
3813
|
+
# resp.firewall_policy_v2_response.consumed_ips_rule_capacity #=> Integer
|
|
3814
|
+
# resp.firewall_policy_v2_response.consumed_ips_domain_capacity #=> Integer
|
|
3815
|
+
# resp.firewall_policy_v2_response.number_of_associations #=> Integer
|
|
3816
|
+
# resp.firewall_policy_v2_response.encryption_configuration.key_id #=> String
|
|
3817
|
+
# resp.firewall_policy_v2_response.encryption_configuration.type #=> String, one of "CUSTOMER_KMS", "AWS_OWNED_KMS_KEY"
|
|
3818
|
+
# resp.firewall_policy_v2_response.errors #=> Array
|
|
3819
|
+
# resp.firewall_policy_v2_response.errors[0].code #=> String, one of "DNS_FIREWALL_RULE_GROUP_UNAVAILABLE", "ROUTE53_RESOLVED_IP_VALIDATION_MISSING"
|
|
3820
|
+
# resp.firewall_policy_v2_response.errors[0].message #=> String
|
|
3821
|
+
# resp.firewall_policy_v2_response.errors[0].resource_id #=> String
|
|
3822
|
+
# resp.firewall_policy_v2_response.last_modified_time #=> Time
|
|
3823
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries #=> Array
|
|
3824
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].priority #=> Integer
|
|
3825
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].resource_arn #=> String
|
|
3826
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rules_source.rules_string #=> String
|
|
3827
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rules_source.firewall_rules #=> Array
|
|
3828
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rules_source.firewall_rules[0].action #=> String, one of "ACCEPT", "DROP", "REJECT", "REJECT_DST", "REJECT_BOTH"
|
|
3829
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rules_source.firewall_rules[0].action_scope #=> String, one of "FLOW", "TX", "HOOK", "PACKET"
|
|
3830
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rules_source.firewall_rules[0].hook #=> String, one of "TCP_ALL", "TCP_FLOW_START", "TCP_PRE_FLOW", "TCP_PRE_STREAM", "SCTP_ALL", "SCTP_FLOW_START", "SCTP_PRE_FLOW", "SCTP_PRE_STREAM", "IPV6_ALL", "IPV6_FLOW_START", "IPV6_PRE_FLOW", "IPV6_PRE_STREAM", "ICMPV6_ALL", "ICMPV6_FLOW_START", "ICMPV6_PRE_FLOW", "ICMPV6_PRE_STREAM", "UDP_ALL", "UDP_FLOW_START", "UDP_PRE_FLOW", "UDP_PRE_STREAM", "ICMP_ALL", "ICMP_FLOW_START", "ICMP_PRE_FLOW", "ICMP_PRE_STREAM", "ICMPV4_ALL", "ICMPV4_FLOW_START", "ICMPV4_PRE_FLOW", "ICMPV4_PRE_STREAM", "IP_ALL", "IP_FLOW_START", "IP_PRE_FLOW", "IP_PRE_STREAM", "IPV4_ALL", "IPV4_FLOW_START", "IPV4_PRE_FLOW", "IPV4_PRE_STREAM", "TLS_CLIENT_STARTED", "TLS_CLIENT_HELLO", "TLS_CLIENT_CERT", "TLS_CLIENT_DATA", "TLS_CLIENT_FINISHED", "TLS_SERVER_STARTED", "TLS_SERVER_HELLO", "TLS_SERVER_CERT", "TLS_SERVER_DATA", "TLS_SERVER_FINISHED", "HTTP1_REQUEST_STARTED", "HTTP1_REQUEST_LINE", "HTTP1_REQUEST_HEADERS", "HTTP1_REQUEST_BODY", "HTTP1_REQUEST_TRAILER", "HTTP1_REQUEST_COMPLETE", "HTTP1_RESPONSE_STARTED", "HTTP1_RESPONSE_LINE", "HTTP1_RESPONSE_HEADERS", "HTTP1_RESPONSE_BODY", "HTTP1_RESPONSE_TRAILER", "HTTP1_RESPONSE_COMPLETE", "HTTP2_STREAM_REQUEST_STARTED", "HTTP2_STREAM_REQUEST_HEADERS", "HTTP2_STREAM_REQUEST_DATA", "HTTP2_STREAM_REQUEST_CLOSED", "HTTP2_STREAM_REQUEST_COMPLETE", "HTTP2_STREAM_RESPONSE_STARTED", "HTTP2_STREAM_RESPONSE_HEADERS", "HTTP2_STREAM_RESPONSE_DATA", "HTTP2_STREAM_RESPONSE_CLOSED", "HTTP2_STREAM_RESPONSE_COMPLETE", "HTTP2_GLOBAL_REQUEST_STARTED", "HTTP2_GLOBAL_REQUEST_COMPLETE", "HTTP2_GLOBAL_RESPONSE_STARTED", "HTTP2_GLOBAL_RESPONSE_COMPLETE", "DOH2_STREAM_REQUEST_STARTED", "DOH2_STREAM_REQUEST_HEADERS", "DOH2_STREAM_REQUEST_DATA", "DOH2_STREAM_REQUEST_CLOSED", "DOH2_STREAM_REQUEST_COMPLETE", "DOH2_STREAM_RESPONSE_STARTED", "DOH2_STREAM_RESPONSE_HEADERS", "DOH2_STREAM_RESPONSE_DATA", "DOH2_STREAM_RESPONSE_CLOSED", "DOH2_STREAM_RESPONSE_COMPLETE", "DOH2_GLOBAL_REQUEST_STARTED", "DOH2_GLOBAL_REQUEST_COMPLETE", "DOH2_GLOBAL_RESPONSE_STARTED", "DOH2_GLOBAL_RESPONSE_COMPLETE", "DNS_REQUEST_STARTED", "DNS_REQUEST_COMPLETE", "DNS_RESPONSE_STARTED", "DNS_RESPONSE_COMPLETE", "SMTP_REQUEST_STARTED", "SMTP_REQUEST_DATA", "SMTP_REQUEST_COMPLETE", "SMTP_RESPONSE_STARTED", "SMTP_RESPONSE_DATA", "SMTP_RESPONSE_COMPLETE", "FTP_REQUEST_STARTED", "FTP_REQUEST_COMPLETE", "FTP_RESPONSE_STARTED", "FTP_RESPONSE_COMPLETE", "FTP_DATA_REQUEST_STARTED", "FTP_DATA_REQUEST_COMPLETE", "FTP_DATA_RESPONSE_STARTED", "FTP_DATA_RESPONSE_COMPLETE", "SMB_REQUEST_STARTED", "SMB_REQUEST_COMPLETE", "SMB_RESPONSE_STARTED", "SMB_RESPONSE_COMPLETE", "DCERPC_REQUEST_STARTED", "DCERPC_REQUEST_COMPLETE", "DCERPC_RESPONSE_STARTED", "DCERPC_RESPONSE_COMPLETE", "NFS_REQUEST_STARTED", "NFS_REQUEST_COMPLETE", "NFS_RESPONSE_STARTED", "NFS_RESPONSE_COMPLETE", "KRB5_REQUEST_STARTED", "KRB5_REQUEST_COMPLETE", "KRB5_RESPONSE_STARTED", "KRB5_RESPONSE_COMPLETE", "IKE_REQUEST_STARTED", "IKE_REQUEST_COMPLETE", "IKE_RESPONSE_STARTED", "IKE_RESPONSE_COMPLETE", "TFTP_REQUEST_STARTED", "TFTP_REQUEST_COMPLETE", "TFTP_RESPONSE_STARTED", "TFTP_RESPONSE_COMPLETE", "DHCP_REQUEST_STARTED", "DHCP_REQUEST_COMPLETE", "DHCP_RESPONSE_STARTED", "DHCP_RESPONSE_COMPLETE", "QUIC_REQUEST_STARTED", "QUIC_REQUEST_COMPLETE", "QUIC_RESPONSE_STARTED", "QUIC_RESPONSE_COMPLETE", "RDP_REQUEST_STARTED", "RDP_REQUEST_COMPLETE", "RDP_RESPONSE_STARTED", "RDP_RESPONSE_COMPLETE", "RFB_REQUEST_STARTED", "RFB_REQUEST_COMPLETE", "RFB_RESPONSE_STARTED", "RFB_RESPONSE_COMPLETE", "MQTT_REQUEST_STARTED", "MQTT_REQUEST_COMPLETE", "MQTT_RESPONSE_STARTED", "MQTT_RESPONSE_COMPLETE", "PGSQL_REQUEST_STARTED", "PGSQL_REQUEST_COMPLETE", "PGSQL_RESPONSE_STARTED", "PGSQL_RESPONSE_COMPLETE", "SNMP_REQUEST_STARTED", "SNMP_REQUEST_COMPLETE", "SNMP_RESPONSE_STARTED", "SNMP_RESPONSE_COMPLETE", "NTP_REQUEST_STARTED", "NTP_REQUEST_COMPLETE", "NTP_RESPONSE_STARTED", "NTP_RESPONSE_COMPLETE", "TELNET_REQUEST_STARTED", "TELNET_REQUEST_COMPLETE", "TELNET_RESPONSE_STARTED", "TELNET_RESPONSE_COMPLETE", "WEBSOCKET_REQUEST_STARTED", "WEBSOCKET_REQUEST_COMPLETE", "WEBSOCKET_RESPONSE_STARTED", "WEBSOCKET_RESPONSE_COMPLETE", "LDAP_REQUEST_STARTED", "LDAP_REQUEST_COMPLETE", "LDAP_RESPONSE_STARTED", "LDAP_RESPONSE_COMPLETE", "POP3_REQUEST_STARTED", "POP3_REQUEST_COMPLETE", "POP3_RESPONSE_STARTED", "POP3_RESPONSE_COMPLETE", "MDNS_REQUEST_STARTED", "MDNS_REQUEST_COMPLETE", "MDNS_RESPONSE_STARTED", "MDNS_RESPONSE_COMPLETE", "BITTORRENT_DHT_REQUEST_STARTED", "BITTORRENT_DHT_REQUEST_COMPLETE", "BITTORRENT_DHT_RESPONSE_STARTED", "BITTORRENT_DHT_RESPONSE_COMPLETE", "DNP3_REQUEST_STARTED", "DNP3_REQUEST_COMPLETE", "DNP3_RESPONSE_STARTED", "DNP3_RESPONSE_COMPLETE", "SSH_REQUEST_IN_PROGRESS", "SSH_REQUEST_BANNER_WAIT_EOL", "SSH_REQUEST_BANNER_DONE", "SSH_REQUEST_FINISHED", "SSH_RESPONSE_IN_PROGRESS", "SSH_RESPONSE_BANNER_WAIT_EOL", "SSH_RESPONSE_BANNER_DONE", "SSH_RESPONSE_FINISHED"
|
|
3831
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rules_source.firewall_rules[0].protocol #=> String, one of "IP", "TCP", "UDP", "ICMP", "HTTP", "FTP", "TLS", "SMB", "DNS", "DCERPC", "SSH", "SMTP", "MSN", "KRB5", "IKEV2", "TFTP", "NTP", "DHCP", "HTTP2", "QUIC", "ICMPV4", "ICMPV6", "SCTP", "IPV4", "IPV6", "DOH2", "FTP_DATA", "NFS", "RDP", "RFB", "MQTT", "PGSQL", "SNMP", "TELNET", "WEBSOCKET", "LDAP", "POP3", "MDNS", "BITTORRENT_DHT", "DNP3"
|
|
3832
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rules_source.firewall_rules[0].source_i_ps #=> String
|
|
3833
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rules_source.firewall_rules[0].dest_i_ps #=> String
|
|
3834
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rules_source.firewall_rules[0].source_ports #=> String
|
|
3835
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rules_source.firewall_rules[0].dest_ports #=> String
|
|
3836
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rules_source.firewall_rules[0].rule_options #=> Array
|
|
3837
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rules_source.firewall_rules[0].rule_options[0].keyword #=> String
|
|
3838
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rules_source.firewall_rules[0].rule_options[0].settings #=> Array
|
|
3839
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rules_source.firewall_rules[0].rule_options[0].settings[0] #=> String
|
|
3840
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rules_source.firewall_rules[0].accept_prior_hooks #=> Boolean
|
|
3841
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rules_source.firewall_rules[0].alert_enabled #=> Boolean
|
|
3842
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rules_source.firewall_rules[0].bypass_ips_enabled #=> Boolean
|
|
3843
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rules_source.firewall_rules[0].rule_metadata.rule_enabled #=> Boolean
|
|
3844
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rules_source.firewall_rules[0].rule_metadata.rule_description #=> String
|
|
3845
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rules_source.rules_source_list.targets #=> Array
|
|
3846
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rules_source.rules_source_list.targets[0] #=> String
|
|
3847
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rules_source.rules_source_list.target_types #=> Array
|
|
3848
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rules_source.rules_source_list.target_types[0] #=> String, one of "TLS_SNI", "HTTP_HOST", "AWS_ROUTE_53_RESOLVED_DOMAIN"
|
|
3849
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rules_source.rules_source_list.generated_rules_type #=> String, one of "ALLOWLIST", "DENYLIST", "REJECTLIST", "ALERTLIST"
|
|
3850
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rule_variables.ip_sets #=> Hash
|
|
3851
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rule_variables.ip_sets["RuleVariableName"].definition #=> Array
|
|
3852
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rule_variables.ip_sets["RuleVariableName"].definition[0] #=> String
|
|
3853
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rule_variables.port_sets #=> Hash
|
|
3854
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rule_variables.port_sets["RuleVariableName"].definition #=> Array
|
|
3855
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.rule_variables.port_sets["RuleVariableName"].definition[0] #=> String
|
|
3856
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.reference_sets.ip_set_references #=> Hash
|
|
3857
|
+
# resp.firewall_policy_v2.firewall_rule_group_entries[0].inline_rule_group.reference_sets.ip_set_references["IPSetReferenceName"].reference_arn #=> String
|
|
3858
|
+
# resp.firewall_policy_v2.ips_rule_group_entries #=> Array
|
|
3859
|
+
# resp.firewall_policy_v2.ips_rule_group_entries[0].resource_arn #=> String
|
|
3860
|
+
# resp.firewall_policy_v2.ips_rule_group_entries[0].inline_rule_group.rules_source.rules_string #=> String
|
|
3861
|
+
# resp.firewall_policy_v2.ips_rule_group_entries[0].inline_rule_group.rule_variables.ip_sets #=> Hash
|
|
3862
|
+
# resp.firewall_policy_v2.ips_rule_group_entries[0].inline_rule_group.rule_variables.ip_sets["RuleVariableName"].definition #=> Array
|
|
3863
|
+
# resp.firewall_policy_v2.ips_rule_group_entries[0].inline_rule_group.rule_variables.ip_sets["RuleVariableName"].definition[0] #=> String
|
|
3864
|
+
# resp.firewall_policy_v2.ips_rule_group_entries[0].inline_rule_group.rule_variables.port_sets #=> Hash
|
|
3865
|
+
# resp.firewall_policy_v2.ips_rule_group_entries[0].inline_rule_group.rule_variables.port_sets["RuleVariableName"].definition #=> Array
|
|
3866
|
+
# resp.firewall_policy_v2.ips_rule_group_entries[0].inline_rule_group.rule_variables.port_sets["RuleVariableName"].definition[0] #=> String
|
|
3867
|
+
# resp.firewall_policy_v2.ips_rule_group_entries[0].inline_rule_group.reference_sets.ip_set_references #=> Hash
|
|
3868
|
+
# resp.firewall_policy_v2.ips_rule_group_entries[0].inline_rule_group.reference_sets.ip_set_references["IPSetReferenceName"].reference_arn #=> String
|
|
3869
|
+
# resp.firewall_policy_v2.ips_rule_group_entries[0].override.action #=> String, one of "DROP_TO_ALERT"
|
|
3870
|
+
# resp.firewall_policy_v2.policy_mode #=> String, one of "ENFORCE", "MONITOR"
|
|
3871
|
+
# resp.firewall_policy_v2.firewall_default_action #=> String, one of "DROP", "ACCEPT", "REJECT", "ALERT"
|
|
3872
|
+
# resp.firewall_policy_v2.stateful_engine_options.stream_exception_policy #=> String, one of "DROP", "REJECT"
|
|
3873
|
+
# resp.firewall_policy_v2.stateful_engine_options.flow_timeouts.tcp_idle_timeout_seconds #=> Integer
|
|
3874
|
+
# resp.firewall_policy_v2.tls_inspection_configuration_arn #=> String
|
|
3875
|
+
# resp.firewall_policy_v2.policy_variables.rule_variables #=> Hash
|
|
3876
|
+
# resp.firewall_policy_v2.policy_variables.rule_variables["RuleVariableName"].definition #=> Array
|
|
3877
|
+
# resp.firewall_policy_v2.policy_variables.rule_variables["RuleVariableName"].definition[0] #=> String
|
|
3878
|
+
# resp.firewall_policy_v2.route_53_resolved_ip_validation.action #=> String, one of "REJECT", "DROP", "ALERT"
|
|
3879
|
+
# resp.firewall_policy_v2.route_53_resolved_ip_validation.dns_firewall_rule_group_id #=> String
|
|
3880
|
+
# resp.firewall_policy_v2.route_53_resolved_ip_validation.dns_expiry_exception_policy #=> String, one of "REJECT", "DROP", "CONTINUE"
|
|
3881
|
+
# resp.firewall_policy_v2.route_53_resolved_ip_validation.bypass_destination_validation_ip_ranges #=> Array
|
|
3882
|
+
# resp.firewall_policy_v2.route_53_resolved_ip_validation.bypass_destination_validation_ip_ranges[0].address_definition #=> String
|
|
3883
|
+
# resp.firewall_policy_v2.route_53_resolved_ip_validation.source_ip_ranges #=> Array
|
|
3884
|
+
# resp.firewall_policy_v2.route_53_resolved_ip_validation.source_ip_ranges[0].address_definition #=> String
|
|
3885
|
+
#
|
|
3886
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DescribeFirewallPolicyV2 AWS API Documentation
|
|
3887
|
+
#
|
|
3888
|
+
# @overload describe_firewall_policy_v2(params = {})
|
|
3889
|
+
# @param [Hash] params ({})
|
|
3890
|
+
def describe_firewall_policy_v2(params = {}, options = {})
|
|
3891
|
+
req = build_request(:describe_firewall_policy_v2, params)
|
|
3892
|
+
req.send_request(options)
|
|
3893
|
+
end
|
|
3894
|
+
|
|
3378
3895
|
# Returns key information about a specific flow operation.
|
|
3379
3896
|
#
|
|
3380
3897
|
# @option params [required, String] :firewall_arn
|
|
@@ -3790,9 +4307,18 @@ module Aws::NetworkFirewall
|
|
|
3790
4307
|
# You must specify the ARN or the name, and you can specify both.
|
|
3791
4308
|
#
|
|
3792
4309
|
# @option params [String] :type
|
|
3793
|
-
# Indicates
|
|
3794
|
-
#
|
|
3795
|
-
#
|
|
4310
|
+
# Indicates the type of the rule group. Valid values are:
|
|
4311
|
+
#
|
|
4312
|
+
# * `STATELESS` - Stateless rules, for use in a Classic Network Firewall
|
|
4313
|
+
# policy.
|
|
4314
|
+
#
|
|
4315
|
+
# * `STATEFUL` - Stateful rules, for use in a Classic Network Firewall
|
|
4316
|
+
# policy.
|
|
4317
|
+
#
|
|
4318
|
+
# * `FIREWALL` - Firewall engine rules, for use in a Next Generation
|
|
4319
|
+
# policy.
|
|
4320
|
+
#
|
|
4321
|
+
# * `IPS` - IPS engine rules, for use in a Next Generation policy.
|
|
3796
4322
|
#
|
|
3797
4323
|
# <note markdown="1"> This setting is required for requests that do not include the
|
|
3798
4324
|
# `RuleGroupARN`.
|
|
@@ -3804,10 +4330,27 @@ module Aws::NetworkFirewall
|
|
|
3804
4330
|
# rules in the rule group for rule behavior such as asymmetric routing.
|
|
3805
4331
|
# If set to `TRUE`, Network Firewall runs the analysis.
|
|
3806
4332
|
#
|
|
4333
|
+
# @option params [String] :rule_output_format
|
|
4334
|
+
# For a firewall engine rule group, the format in which to return the
|
|
4335
|
+
# rules. Specify one of the following values:
|
|
4336
|
+
#
|
|
4337
|
+
# * `FIREWALL_RULES` - Returns the rules as structured `FirewallRule`
|
|
4338
|
+
# objects.
|
|
4339
|
+
#
|
|
4340
|
+
# * `RULES_STRING` - Returns the rules as a Suricata-compatible
|
|
4341
|
+
# firewall-mode rule string.
|
|
4342
|
+
#
|
|
4343
|
+
# If you don't specify a format, Network Firewall returns the rules in
|
|
4344
|
+
# the format you provided them in. This setting applies only to
|
|
4345
|
+
# `FIREWALL` and `IPS` rule groups; IPS engine rule groups support only
|
|
4346
|
+
# `RULES_STRING`.
|
|
4347
|
+
#
|
|
3807
4348
|
# @return [Types::DescribeRuleGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
|
3808
4349
|
#
|
|
3809
4350
|
# * {Types::DescribeRuleGroupResponse#update_token #update_token} => String
|
|
3810
4351
|
# * {Types::DescribeRuleGroupResponse#rule_group #rule_group} => Types::RuleGroup
|
|
4352
|
+
# * {Types::DescribeRuleGroupResponse#firewall_rule_group #firewall_rule_group} => Types::FirewallRuleGroup
|
|
4353
|
+
# * {Types::DescribeRuleGroupResponse#ips_rule_group #ips_rule_group} => Types::IpsRuleGroup
|
|
3811
4354
|
# * {Types::DescribeRuleGroupResponse#rule_group_response #rule_group_response} => Types::RuleGroupResponse
|
|
3812
4355
|
#
|
|
3813
4356
|
# @example Request syntax with placeholder values
|
|
@@ -3815,8 +4358,9 @@ module Aws::NetworkFirewall
|
|
|
3815
4358
|
# resp = client.describe_rule_group({
|
|
3816
4359
|
# rule_group_name: "ResourceName",
|
|
3817
4360
|
# rule_group_arn: "ResourceArn",
|
|
3818
|
-
# type: "STATELESS", # accepts STATELESS, STATEFUL, STATEFUL_DOMAIN
|
|
4361
|
+
# type: "STATELESS", # accepts STATELESS, STATEFUL, STATEFUL_DOMAIN, FIREWALL, IPS
|
|
3819
4362
|
# analyze_rule_group: false,
|
|
4363
|
+
# rule_output_format: "FIREWALL_RULES", # accepts FIREWALL_RULES, RULES_STRING
|
|
3820
4364
|
# })
|
|
3821
4365
|
#
|
|
3822
4366
|
# @example Response structure
|
|
@@ -3874,11 +4418,52 @@ module Aws::NetworkFirewall
|
|
|
3874
4418
|
# resp.rule_group.rules_source.stateless_rules_and_custom_actions.custom_actions[0].action_definition.publish_metric_action.dimensions #=> Array
|
|
3875
4419
|
# resp.rule_group.rules_source.stateless_rules_and_custom_actions.custom_actions[0].action_definition.publish_metric_action.dimensions[0].value #=> String
|
|
3876
4420
|
# resp.rule_group.stateful_rule_options.rule_order #=> String, one of "DEFAULT_ACTION_ORDER", "STRICT_ORDER"
|
|
4421
|
+
# resp.firewall_rule_group.rules_source.rules_string #=> String
|
|
4422
|
+
# resp.firewall_rule_group.rules_source.firewall_rules #=> Array
|
|
4423
|
+
# resp.firewall_rule_group.rules_source.firewall_rules[0].action #=> String, one of "ACCEPT", "DROP", "REJECT", "REJECT_DST", "REJECT_BOTH"
|
|
4424
|
+
# resp.firewall_rule_group.rules_source.firewall_rules[0].action_scope #=> String, one of "FLOW", "TX", "HOOK", "PACKET"
|
|
4425
|
+
# resp.firewall_rule_group.rules_source.firewall_rules[0].hook #=> String, one of "TCP_ALL", "TCP_FLOW_START", "TCP_PRE_FLOW", "TCP_PRE_STREAM", "SCTP_ALL", "SCTP_FLOW_START", "SCTP_PRE_FLOW", "SCTP_PRE_STREAM", "IPV6_ALL", "IPV6_FLOW_START", "IPV6_PRE_FLOW", "IPV6_PRE_STREAM", "ICMPV6_ALL", "ICMPV6_FLOW_START", "ICMPV6_PRE_FLOW", "ICMPV6_PRE_STREAM", "UDP_ALL", "UDP_FLOW_START", "UDP_PRE_FLOW", "UDP_PRE_STREAM", "ICMP_ALL", "ICMP_FLOW_START", "ICMP_PRE_FLOW", "ICMP_PRE_STREAM", "ICMPV4_ALL", "ICMPV4_FLOW_START", "ICMPV4_PRE_FLOW", "ICMPV4_PRE_STREAM", "IP_ALL", "IP_FLOW_START", "IP_PRE_FLOW", "IP_PRE_STREAM", "IPV4_ALL", "IPV4_FLOW_START", "IPV4_PRE_FLOW", "IPV4_PRE_STREAM", "TLS_CLIENT_STARTED", "TLS_CLIENT_HELLO", "TLS_CLIENT_CERT", "TLS_CLIENT_DATA", "TLS_CLIENT_FINISHED", "TLS_SERVER_STARTED", "TLS_SERVER_HELLO", "TLS_SERVER_CERT", "TLS_SERVER_DATA", "TLS_SERVER_FINISHED", "HTTP1_REQUEST_STARTED", "HTTP1_REQUEST_LINE", "HTTP1_REQUEST_HEADERS", "HTTP1_REQUEST_BODY", "HTTP1_REQUEST_TRAILER", "HTTP1_REQUEST_COMPLETE", "HTTP1_RESPONSE_STARTED", "HTTP1_RESPONSE_LINE", "HTTP1_RESPONSE_HEADERS", "HTTP1_RESPONSE_BODY", "HTTP1_RESPONSE_TRAILER", "HTTP1_RESPONSE_COMPLETE", "HTTP2_STREAM_REQUEST_STARTED", "HTTP2_STREAM_REQUEST_HEADERS", "HTTP2_STREAM_REQUEST_DATA", "HTTP2_STREAM_REQUEST_CLOSED", "HTTP2_STREAM_REQUEST_COMPLETE", "HTTP2_STREAM_RESPONSE_STARTED", "HTTP2_STREAM_RESPONSE_HEADERS", "HTTP2_STREAM_RESPONSE_DATA", "HTTP2_STREAM_RESPONSE_CLOSED", "HTTP2_STREAM_RESPONSE_COMPLETE", "HTTP2_GLOBAL_REQUEST_STARTED", "HTTP2_GLOBAL_REQUEST_COMPLETE", "HTTP2_GLOBAL_RESPONSE_STARTED", "HTTP2_GLOBAL_RESPONSE_COMPLETE", "DOH2_STREAM_REQUEST_STARTED", "DOH2_STREAM_REQUEST_HEADERS", "DOH2_STREAM_REQUEST_DATA", "DOH2_STREAM_REQUEST_CLOSED", "DOH2_STREAM_REQUEST_COMPLETE", "DOH2_STREAM_RESPONSE_STARTED", "DOH2_STREAM_RESPONSE_HEADERS", "DOH2_STREAM_RESPONSE_DATA", "DOH2_STREAM_RESPONSE_CLOSED", "DOH2_STREAM_RESPONSE_COMPLETE", "DOH2_GLOBAL_REQUEST_STARTED", "DOH2_GLOBAL_REQUEST_COMPLETE", "DOH2_GLOBAL_RESPONSE_STARTED", "DOH2_GLOBAL_RESPONSE_COMPLETE", "DNS_REQUEST_STARTED", "DNS_REQUEST_COMPLETE", "DNS_RESPONSE_STARTED", "DNS_RESPONSE_COMPLETE", "SMTP_REQUEST_STARTED", "SMTP_REQUEST_DATA", "SMTP_REQUEST_COMPLETE", "SMTP_RESPONSE_STARTED", "SMTP_RESPONSE_DATA", "SMTP_RESPONSE_COMPLETE", "FTP_REQUEST_STARTED", "FTP_REQUEST_COMPLETE", "FTP_RESPONSE_STARTED", "FTP_RESPONSE_COMPLETE", "FTP_DATA_REQUEST_STARTED", "FTP_DATA_REQUEST_COMPLETE", "FTP_DATA_RESPONSE_STARTED", "FTP_DATA_RESPONSE_COMPLETE", "SMB_REQUEST_STARTED", "SMB_REQUEST_COMPLETE", "SMB_RESPONSE_STARTED", "SMB_RESPONSE_COMPLETE", "DCERPC_REQUEST_STARTED", "DCERPC_REQUEST_COMPLETE", "DCERPC_RESPONSE_STARTED", "DCERPC_RESPONSE_COMPLETE", "NFS_REQUEST_STARTED", "NFS_REQUEST_COMPLETE", "NFS_RESPONSE_STARTED", "NFS_RESPONSE_COMPLETE", "KRB5_REQUEST_STARTED", "KRB5_REQUEST_COMPLETE", "KRB5_RESPONSE_STARTED", "KRB5_RESPONSE_COMPLETE", "IKE_REQUEST_STARTED", "IKE_REQUEST_COMPLETE", "IKE_RESPONSE_STARTED", "IKE_RESPONSE_COMPLETE", "TFTP_REQUEST_STARTED", "TFTP_REQUEST_COMPLETE", "TFTP_RESPONSE_STARTED", "TFTP_RESPONSE_COMPLETE", "DHCP_REQUEST_STARTED", "DHCP_REQUEST_COMPLETE", "DHCP_RESPONSE_STARTED", "DHCP_RESPONSE_COMPLETE", "QUIC_REQUEST_STARTED", "QUIC_REQUEST_COMPLETE", "QUIC_RESPONSE_STARTED", "QUIC_RESPONSE_COMPLETE", "RDP_REQUEST_STARTED", "RDP_REQUEST_COMPLETE", "RDP_RESPONSE_STARTED", "RDP_RESPONSE_COMPLETE", "RFB_REQUEST_STARTED", "RFB_REQUEST_COMPLETE", "RFB_RESPONSE_STARTED", "RFB_RESPONSE_COMPLETE", "MQTT_REQUEST_STARTED", "MQTT_REQUEST_COMPLETE", "MQTT_RESPONSE_STARTED", "MQTT_RESPONSE_COMPLETE", "PGSQL_REQUEST_STARTED", "PGSQL_REQUEST_COMPLETE", "PGSQL_RESPONSE_STARTED", "PGSQL_RESPONSE_COMPLETE", "SNMP_REQUEST_STARTED", "SNMP_REQUEST_COMPLETE", "SNMP_RESPONSE_STARTED", "SNMP_RESPONSE_COMPLETE", "NTP_REQUEST_STARTED", "NTP_REQUEST_COMPLETE", "NTP_RESPONSE_STARTED", "NTP_RESPONSE_COMPLETE", "TELNET_REQUEST_STARTED", "TELNET_REQUEST_COMPLETE", "TELNET_RESPONSE_STARTED", "TELNET_RESPONSE_COMPLETE", "WEBSOCKET_REQUEST_STARTED", "WEBSOCKET_REQUEST_COMPLETE", "WEBSOCKET_RESPONSE_STARTED", "WEBSOCKET_RESPONSE_COMPLETE", "LDAP_REQUEST_STARTED", "LDAP_REQUEST_COMPLETE", "LDAP_RESPONSE_STARTED", "LDAP_RESPONSE_COMPLETE", "POP3_REQUEST_STARTED", "POP3_REQUEST_COMPLETE", "POP3_RESPONSE_STARTED", "POP3_RESPONSE_COMPLETE", "MDNS_REQUEST_STARTED", "MDNS_REQUEST_COMPLETE", "MDNS_RESPONSE_STARTED", "MDNS_RESPONSE_COMPLETE", "BITTORRENT_DHT_REQUEST_STARTED", "BITTORRENT_DHT_REQUEST_COMPLETE", "BITTORRENT_DHT_RESPONSE_STARTED", "BITTORRENT_DHT_RESPONSE_COMPLETE", "DNP3_REQUEST_STARTED", "DNP3_REQUEST_COMPLETE", "DNP3_RESPONSE_STARTED", "DNP3_RESPONSE_COMPLETE", "SSH_REQUEST_IN_PROGRESS", "SSH_REQUEST_BANNER_WAIT_EOL", "SSH_REQUEST_BANNER_DONE", "SSH_REQUEST_FINISHED", "SSH_RESPONSE_IN_PROGRESS", "SSH_RESPONSE_BANNER_WAIT_EOL", "SSH_RESPONSE_BANNER_DONE", "SSH_RESPONSE_FINISHED"
|
|
4426
|
+
# resp.firewall_rule_group.rules_source.firewall_rules[0].protocol #=> String, one of "IP", "TCP", "UDP", "ICMP", "HTTP", "FTP", "TLS", "SMB", "DNS", "DCERPC", "SSH", "SMTP", "MSN", "KRB5", "IKEV2", "TFTP", "NTP", "DHCP", "HTTP2", "QUIC", "ICMPV4", "ICMPV6", "SCTP", "IPV4", "IPV6", "DOH2", "FTP_DATA", "NFS", "RDP", "RFB", "MQTT", "PGSQL", "SNMP", "TELNET", "WEBSOCKET", "LDAP", "POP3", "MDNS", "BITTORRENT_DHT", "DNP3"
|
|
4427
|
+
# resp.firewall_rule_group.rules_source.firewall_rules[0].source_i_ps #=> String
|
|
4428
|
+
# resp.firewall_rule_group.rules_source.firewall_rules[0].dest_i_ps #=> String
|
|
4429
|
+
# resp.firewall_rule_group.rules_source.firewall_rules[0].source_ports #=> String
|
|
4430
|
+
# resp.firewall_rule_group.rules_source.firewall_rules[0].dest_ports #=> String
|
|
4431
|
+
# resp.firewall_rule_group.rules_source.firewall_rules[0].rule_options #=> Array
|
|
4432
|
+
# resp.firewall_rule_group.rules_source.firewall_rules[0].rule_options[0].keyword #=> String
|
|
4433
|
+
# resp.firewall_rule_group.rules_source.firewall_rules[0].rule_options[0].settings #=> Array
|
|
4434
|
+
# resp.firewall_rule_group.rules_source.firewall_rules[0].rule_options[0].settings[0] #=> String
|
|
4435
|
+
# resp.firewall_rule_group.rules_source.firewall_rules[0].accept_prior_hooks #=> Boolean
|
|
4436
|
+
# resp.firewall_rule_group.rules_source.firewall_rules[0].alert_enabled #=> Boolean
|
|
4437
|
+
# resp.firewall_rule_group.rules_source.firewall_rules[0].bypass_ips_enabled #=> Boolean
|
|
4438
|
+
# resp.firewall_rule_group.rules_source.firewall_rules[0].rule_metadata.rule_enabled #=> Boolean
|
|
4439
|
+
# resp.firewall_rule_group.rules_source.firewall_rules[0].rule_metadata.rule_description #=> String
|
|
4440
|
+
# resp.firewall_rule_group.rules_source.rules_source_list.targets #=> Array
|
|
4441
|
+
# resp.firewall_rule_group.rules_source.rules_source_list.targets[0] #=> String
|
|
4442
|
+
# resp.firewall_rule_group.rules_source.rules_source_list.target_types #=> Array
|
|
4443
|
+
# resp.firewall_rule_group.rules_source.rules_source_list.target_types[0] #=> String, one of "TLS_SNI", "HTTP_HOST", "AWS_ROUTE_53_RESOLVED_DOMAIN"
|
|
4444
|
+
# resp.firewall_rule_group.rules_source.rules_source_list.generated_rules_type #=> String, one of "ALLOWLIST", "DENYLIST", "REJECTLIST", "ALERTLIST"
|
|
4445
|
+
# resp.firewall_rule_group.rule_variables.ip_sets #=> Hash
|
|
4446
|
+
# resp.firewall_rule_group.rule_variables.ip_sets["RuleVariableName"].definition #=> Array
|
|
4447
|
+
# resp.firewall_rule_group.rule_variables.ip_sets["RuleVariableName"].definition[0] #=> String
|
|
4448
|
+
# resp.firewall_rule_group.rule_variables.port_sets #=> Hash
|
|
4449
|
+
# resp.firewall_rule_group.rule_variables.port_sets["RuleVariableName"].definition #=> Array
|
|
4450
|
+
# resp.firewall_rule_group.rule_variables.port_sets["RuleVariableName"].definition[0] #=> String
|
|
4451
|
+
# resp.firewall_rule_group.reference_sets.ip_set_references #=> Hash
|
|
4452
|
+
# resp.firewall_rule_group.reference_sets.ip_set_references["IPSetReferenceName"].reference_arn #=> String
|
|
4453
|
+
# resp.ips_rule_group.rules_source.rules_string #=> String
|
|
4454
|
+
# resp.ips_rule_group.rule_variables.ip_sets #=> Hash
|
|
4455
|
+
# resp.ips_rule_group.rule_variables.ip_sets["RuleVariableName"].definition #=> Array
|
|
4456
|
+
# resp.ips_rule_group.rule_variables.ip_sets["RuleVariableName"].definition[0] #=> String
|
|
4457
|
+
# resp.ips_rule_group.rule_variables.port_sets #=> Hash
|
|
4458
|
+
# resp.ips_rule_group.rule_variables.port_sets["RuleVariableName"].definition #=> Array
|
|
4459
|
+
# resp.ips_rule_group.rule_variables.port_sets["RuleVariableName"].definition[0] #=> String
|
|
4460
|
+
# resp.ips_rule_group.reference_sets.ip_set_references #=> Hash
|
|
4461
|
+
# resp.ips_rule_group.reference_sets.ip_set_references["IPSetReferenceName"].reference_arn #=> String
|
|
3877
4462
|
# resp.rule_group_response.rule_group_arn #=> String
|
|
3878
4463
|
# resp.rule_group_response.rule_group_name #=> String
|
|
3879
4464
|
# resp.rule_group_response.rule_group_id #=> String
|
|
3880
4465
|
# resp.rule_group_response.description #=> String
|
|
3881
|
-
# resp.rule_group_response.type #=> String, one of "STATELESS", "STATEFUL", "STATEFUL_DOMAIN"
|
|
4466
|
+
# resp.rule_group_response.type #=> String, one of "STATELESS", "STATEFUL", "STATEFUL_DOMAIN", "FIREWALL", "IPS"
|
|
3882
4467
|
# resp.rule_group_response.capacity #=> Integer
|
|
3883
4468
|
# resp.rule_group_response.rule_group_status #=> String, one of "ACTIVE", "DELETING", "ERROR", "UPDATING"
|
|
3884
4469
|
# resp.rule_group_response.tags #=> Array
|
|
@@ -3927,9 +4512,18 @@ module Aws::NetworkFirewall
|
|
|
3927
4512
|
# You must specify the ARN or the name, and you can specify both.
|
|
3928
4513
|
#
|
|
3929
4514
|
# @option params [String] :type
|
|
3930
|
-
# Indicates
|
|
3931
|
-
#
|
|
3932
|
-
#
|
|
4515
|
+
# Indicates the type of the rule group. Valid values are:
|
|
4516
|
+
#
|
|
4517
|
+
# * `STATELESS` - Stateless rules, for use in a Classic Network Firewall
|
|
4518
|
+
# policy.
|
|
4519
|
+
#
|
|
4520
|
+
# * `STATEFUL` - Stateful rules, for use in a Classic Network Firewall
|
|
4521
|
+
# policy.
|
|
4522
|
+
#
|
|
4523
|
+
# * `FIREWALL` - Firewall engine rules, for use in a Next Generation
|
|
4524
|
+
# policy.
|
|
4525
|
+
#
|
|
4526
|
+
# * `IPS` - IPS engine rules, for use in a Next Generation policy.
|
|
3933
4527
|
#
|
|
3934
4528
|
# <note markdown="1"> This setting is required for requests that do not include the
|
|
3935
4529
|
# `RuleGroupARN`.
|
|
@@ -3954,7 +4548,7 @@ module Aws::NetworkFirewall
|
|
|
3954
4548
|
# resp = client.describe_rule_group_metadata({
|
|
3955
4549
|
# rule_group_name: "ResourceName",
|
|
3956
4550
|
# rule_group_arn: "ResourceArn",
|
|
3957
|
-
# type: "STATELESS", # accepts STATELESS, STATEFUL, STATEFUL_DOMAIN
|
|
4551
|
+
# type: "STATELESS", # accepts STATELESS, STATEFUL, STATEFUL_DOMAIN, FIREWALL, IPS
|
|
3958
4552
|
# })
|
|
3959
4553
|
#
|
|
3960
4554
|
# @example Response structure
|
|
@@ -3962,7 +4556,7 @@ module Aws::NetworkFirewall
|
|
|
3962
4556
|
# resp.rule_group_arn #=> String
|
|
3963
4557
|
# resp.rule_group_name #=> String
|
|
3964
4558
|
# resp.description #=> String
|
|
3965
|
-
# resp.type #=> String, one of "STATELESS", "STATEFUL", "STATEFUL_DOMAIN"
|
|
4559
|
+
# resp.type #=> String, one of "STATELESS", "STATEFUL", "STATEFUL_DOMAIN", "FIREWALL", "IPS"
|
|
3966
4560
|
# resp.capacity #=> Integer
|
|
3967
4561
|
# resp.stateful_rule_options.rule_order #=> String, one of "DEFAULT_ACTION_ORDER", "STRICT_ORDER"
|
|
3968
4562
|
# resp.last_modified_time #=> Time
|
|
@@ -4021,7 +4615,7 @@ module Aws::NetworkFirewall
|
|
|
4021
4615
|
# resp = client.describe_rule_group_summary({
|
|
4022
4616
|
# rule_group_name: "ResourceName",
|
|
4023
4617
|
# rule_group_arn: "ResourceArn",
|
|
4024
|
-
# type: "STATELESS", # accepts STATELESS, STATEFUL, STATEFUL_DOMAIN
|
|
4618
|
+
# type: "STATELESS", # accepts STATELESS, STATEFUL, STATEFUL_DOMAIN, FIREWALL, IPS
|
|
4025
4619
|
# })
|
|
4026
4620
|
#
|
|
4027
4621
|
# @example Response structure
|
|
@@ -4639,6 +5233,53 @@ module Aws::NetworkFirewall
|
|
|
4639
5233
|
req.send_request(options)
|
|
4640
5234
|
end
|
|
4641
5235
|
|
|
5236
|
+
# Retrieves the metadata for the Next Generation policies that you have
|
|
5237
|
+
# defined. Depending on your setting for max results and the number of
|
|
5238
|
+
# firewall policies, a single call might not return the full list.
|
|
5239
|
+
#
|
|
5240
|
+
# @option params [String] :next_token
|
|
5241
|
+
# When you request a list of objects with a `MaxResults` setting, if the
|
|
5242
|
+
# number of objects that are still available for retrieval exceeds the
|
|
5243
|
+
# maximum you requested, Network Firewall returns a `NextToken` value in
|
|
5244
|
+
# the response. To retrieve the next batch of objects, use the token
|
|
5245
|
+
# returned from the prior request in your next request.
|
|
5246
|
+
#
|
|
5247
|
+
# @option params [Integer] :max_results
|
|
5248
|
+
# The maximum number of objects that you want Network Firewall to return
|
|
5249
|
+
# for this request. If more objects are available, in the response,
|
|
5250
|
+
# Network Firewall provides a `NextToken` value that you can use in a
|
|
5251
|
+
# subsequent call to get the next batch of objects.
|
|
5252
|
+
#
|
|
5253
|
+
# @return [Types::ListFirewallPoliciesV2Response] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
|
5254
|
+
#
|
|
5255
|
+
# * {Types::ListFirewallPoliciesV2Response#next_token #next_token} => String
|
|
5256
|
+
# * {Types::ListFirewallPoliciesV2Response#firewall_policies_v2 #firewall_policies_v2} => Array<Types::FirewallPolicyV2Metadata>
|
|
5257
|
+
#
|
|
5258
|
+
# The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
|
|
5259
|
+
#
|
|
5260
|
+
# @example Request syntax with placeholder values
|
|
5261
|
+
#
|
|
5262
|
+
# resp = client.list_firewall_policies_v2({
|
|
5263
|
+
# next_token: "PaginationToken",
|
|
5264
|
+
# max_results: 1,
|
|
5265
|
+
# })
|
|
5266
|
+
#
|
|
5267
|
+
# @example Response structure
|
|
5268
|
+
#
|
|
5269
|
+
# resp.next_token #=> String
|
|
5270
|
+
# resp.firewall_policies_v2 #=> Array
|
|
5271
|
+
# resp.firewall_policies_v2[0].name #=> String
|
|
5272
|
+
# resp.firewall_policies_v2[0].arn #=> String
|
|
5273
|
+
#
|
|
5274
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/ListFirewallPoliciesV2 AWS API Documentation
|
|
5275
|
+
#
|
|
5276
|
+
# @overload list_firewall_policies_v2(params = {})
|
|
5277
|
+
# @param [Hash] params ({})
|
|
5278
|
+
def list_firewall_policies_v2(params = {}, options = {})
|
|
5279
|
+
req = build_request(:list_firewall_policies_v2, params)
|
|
5280
|
+
req.send_request(options)
|
|
5281
|
+
end
|
|
5282
|
+
|
|
4642
5283
|
# Retrieves the metadata for the firewalls that you have defined. If you
|
|
4643
5284
|
# provide VPC identifiers in your request, this returns only the
|
|
4644
5285
|
# firewalls for those VPCs.
|
|
@@ -5094,7 +5735,7 @@ module Aws::NetworkFirewall
|
|
|
5094
5735
|
# scope: "MANAGED", # accepts MANAGED, ACCOUNT
|
|
5095
5736
|
# managed_type: "AWS_MANAGED_THREAT_SIGNATURES", # accepts AWS_MANAGED_THREAT_SIGNATURES, AWS_MANAGED_DOMAIN_LISTS, ACTIVE_THREAT_DEFENSE, PARTNER_MANAGED
|
|
5096
5737
|
# subscription_status: "NOT_SUBSCRIBED", # accepts NOT_SUBSCRIBED, SUBSCRIBED
|
|
5097
|
-
# type: "STATELESS", # accepts STATELESS, STATEFUL, STATEFUL_DOMAIN
|
|
5738
|
+
# type: "STATELESS", # accepts STATELESS, STATEFUL, STATEFUL_DOMAIN, FIREWALL, IPS
|
|
5098
5739
|
# })
|
|
5099
5740
|
#
|
|
5100
5741
|
# @example Response structure
|
|
@@ -6455,6 +7096,235 @@ module Aws::NetworkFirewall
|
|
|
6455
7096
|
req.send_request(options)
|
|
6456
7097
|
end
|
|
6457
7098
|
|
|
7099
|
+
# Updates the properties of the specified Next Generation policy.
|
|
7100
|
+
#
|
|
7101
|
+
# @option params [required, String] :update_token
|
|
7102
|
+
# A token used for optimistic locking. Network Firewall returns a token
|
|
7103
|
+
# to your requests that access the firewall policy. The token marks the
|
|
7104
|
+
# state of the policy resource at the time of the request.
|
|
7105
|
+
#
|
|
7106
|
+
# To make changes to the policy, you provide the token in your request.
|
|
7107
|
+
# Network Firewall uses the token to ensure that the policy hasn't
|
|
7108
|
+
# changed since you last retrieved it. If it has changed, the operation
|
|
7109
|
+
# fails with an `InvalidTokenException`. If this happens, retrieve the
|
|
7110
|
+
# firewall policy again to get a current copy of it with current token.
|
|
7111
|
+
# Reapply your changes as needed, then try the operation again using the
|
|
7112
|
+
# new token.
|
|
7113
|
+
#
|
|
7114
|
+
# @option params [String] :firewall_policy_v2_arn
|
|
7115
|
+
# The Amazon Resource Name (ARN) of the Next Generation policy.
|
|
7116
|
+
#
|
|
7117
|
+
# You must specify the ARN or the name, and you can specify both.
|
|
7118
|
+
#
|
|
7119
|
+
# @option params [String] :firewall_policy_v2_name
|
|
7120
|
+
# The descriptive name of the Next Generation policy. You can't change
|
|
7121
|
+
# the name of a firewall policy after you create it.
|
|
7122
|
+
#
|
|
7123
|
+
# You must specify the ARN or the name, and you can specify both.
|
|
7124
|
+
#
|
|
7125
|
+
# @option params [required, Types::FirewallPolicyV2] :firewall_policy_v2
|
|
7126
|
+
# The updated rule groups and other settings that define the Next
|
|
7127
|
+
# Generation policy.
|
|
7128
|
+
#
|
|
7129
|
+
# @option params [String] :description
|
|
7130
|
+
# A description of the firewall policy.
|
|
7131
|
+
#
|
|
7132
|
+
# @option params [Boolean] :dry_run
|
|
7133
|
+
# Indicates whether you want Network Firewall to just check the validity
|
|
7134
|
+
# of the request, rather than run the request.
|
|
7135
|
+
#
|
|
7136
|
+
# If set to `TRUE`, Network Firewall checks whether the request can run
|
|
7137
|
+
# successfully, but doesn't actually make the requested changes. The
|
|
7138
|
+
# call returns the value that the request would return if you ran it
|
|
7139
|
+
# with dry run set to `FALSE`, but doesn't make additions or changes to
|
|
7140
|
+
# your resources. This option allows you to make sure that you have the
|
|
7141
|
+
# required permissions to run the request and that your request
|
|
7142
|
+
# parameters are valid.
|
|
7143
|
+
#
|
|
7144
|
+
# If set to `FALSE`, Network Firewall makes the requested changes to
|
|
7145
|
+
# your resources.
|
|
7146
|
+
#
|
|
7147
|
+
# @option params [Types::EncryptionConfiguration] :encryption_configuration
|
|
7148
|
+
# A complex type that contains settings for encryption of your firewall
|
|
7149
|
+
# policy resources.
|
|
7150
|
+
#
|
|
7151
|
+
# @return [Types::UpdateFirewallPolicyV2Response] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
|
7152
|
+
#
|
|
7153
|
+
# * {Types::UpdateFirewallPolicyV2Response#update_token #update_token} => String
|
|
7154
|
+
# * {Types::UpdateFirewallPolicyV2Response#firewall_policy_v2_response #firewall_policy_v2_response} => Types::FirewallPolicyV2Response
|
|
7155
|
+
#
|
|
7156
|
+
# @example Request syntax with placeholder values
|
|
7157
|
+
#
|
|
7158
|
+
# resp = client.update_firewall_policy_v2({
|
|
7159
|
+
# update_token: "UpdateToken", # required
|
|
7160
|
+
# firewall_policy_v2_arn: "ResourceArn",
|
|
7161
|
+
# firewall_policy_v2_name: "ResourceName",
|
|
7162
|
+
# firewall_policy_v2: { # required
|
|
7163
|
+
# firewall_rule_group_entries: [
|
|
7164
|
+
# {
|
|
7165
|
+
# priority: 1,
|
|
7166
|
+
# resource_arn: "ResourceArn",
|
|
7167
|
+
# inline_rule_group: {
|
|
7168
|
+
# rules_source: { # required
|
|
7169
|
+
# rules_string: "RulesString",
|
|
7170
|
+
# firewall_rules: [
|
|
7171
|
+
# {
|
|
7172
|
+
# action: "ACCEPT", # required, accepts ACCEPT, DROP, REJECT, REJECT_DST, REJECT_BOTH
|
|
7173
|
+
# action_scope: "FLOW", # required, accepts FLOW, TX, HOOK, PACKET
|
|
7174
|
+
# hook: "TCP_ALL", # required, accepts TCP_ALL, TCP_FLOW_START, TCP_PRE_FLOW, TCP_PRE_STREAM, SCTP_ALL, SCTP_FLOW_START, SCTP_PRE_FLOW, SCTP_PRE_STREAM, IPV6_ALL, IPV6_FLOW_START, IPV6_PRE_FLOW, IPV6_PRE_STREAM, ICMPV6_ALL, ICMPV6_FLOW_START, ICMPV6_PRE_FLOW, ICMPV6_PRE_STREAM, UDP_ALL, UDP_FLOW_START, UDP_PRE_FLOW, UDP_PRE_STREAM, ICMP_ALL, ICMP_FLOW_START, ICMP_PRE_FLOW, ICMP_PRE_STREAM, ICMPV4_ALL, ICMPV4_FLOW_START, ICMPV4_PRE_FLOW, ICMPV4_PRE_STREAM, IP_ALL, IP_FLOW_START, IP_PRE_FLOW, IP_PRE_STREAM, IPV4_ALL, IPV4_FLOW_START, IPV4_PRE_FLOW, IPV4_PRE_STREAM, TLS_CLIENT_STARTED, TLS_CLIENT_HELLO, TLS_CLIENT_CERT, TLS_CLIENT_DATA, TLS_CLIENT_FINISHED, TLS_SERVER_STARTED, TLS_SERVER_HELLO, TLS_SERVER_CERT, TLS_SERVER_DATA, TLS_SERVER_FINISHED, HTTP1_REQUEST_STARTED, HTTP1_REQUEST_LINE, HTTP1_REQUEST_HEADERS, HTTP1_REQUEST_BODY, HTTP1_REQUEST_TRAILER, HTTP1_REQUEST_COMPLETE, HTTP1_RESPONSE_STARTED, HTTP1_RESPONSE_LINE, HTTP1_RESPONSE_HEADERS, HTTP1_RESPONSE_BODY, HTTP1_RESPONSE_TRAILER, HTTP1_RESPONSE_COMPLETE, HTTP2_STREAM_REQUEST_STARTED, HTTP2_STREAM_REQUEST_HEADERS, HTTP2_STREAM_REQUEST_DATA, HTTP2_STREAM_REQUEST_CLOSED, HTTP2_STREAM_REQUEST_COMPLETE, HTTP2_STREAM_RESPONSE_STARTED, HTTP2_STREAM_RESPONSE_HEADERS, HTTP2_STREAM_RESPONSE_DATA, HTTP2_STREAM_RESPONSE_CLOSED, HTTP2_STREAM_RESPONSE_COMPLETE, HTTP2_GLOBAL_REQUEST_STARTED, HTTP2_GLOBAL_REQUEST_COMPLETE, HTTP2_GLOBAL_RESPONSE_STARTED, HTTP2_GLOBAL_RESPONSE_COMPLETE, DOH2_STREAM_REQUEST_STARTED, DOH2_STREAM_REQUEST_HEADERS, DOH2_STREAM_REQUEST_DATA, DOH2_STREAM_REQUEST_CLOSED, DOH2_STREAM_REQUEST_COMPLETE, DOH2_STREAM_RESPONSE_STARTED, DOH2_STREAM_RESPONSE_HEADERS, DOH2_STREAM_RESPONSE_DATA, DOH2_STREAM_RESPONSE_CLOSED, DOH2_STREAM_RESPONSE_COMPLETE, DOH2_GLOBAL_REQUEST_STARTED, DOH2_GLOBAL_REQUEST_COMPLETE, DOH2_GLOBAL_RESPONSE_STARTED, DOH2_GLOBAL_RESPONSE_COMPLETE, DNS_REQUEST_STARTED, DNS_REQUEST_COMPLETE, DNS_RESPONSE_STARTED, DNS_RESPONSE_COMPLETE, SMTP_REQUEST_STARTED, SMTP_REQUEST_DATA, SMTP_REQUEST_COMPLETE, SMTP_RESPONSE_STARTED, SMTP_RESPONSE_DATA, SMTP_RESPONSE_COMPLETE, FTP_REQUEST_STARTED, FTP_REQUEST_COMPLETE, FTP_RESPONSE_STARTED, FTP_RESPONSE_COMPLETE, FTP_DATA_REQUEST_STARTED, FTP_DATA_REQUEST_COMPLETE, FTP_DATA_RESPONSE_STARTED, FTP_DATA_RESPONSE_COMPLETE, SMB_REQUEST_STARTED, SMB_REQUEST_COMPLETE, SMB_RESPONSE_STARTED, SMB_RESPONSE_COMPLETE, DCERPC_REQUEST_STARTED, DCERPC_REQUEST_COMPLETE, DCERPC_RESPONSE_STARTED, DCERPC_RESPONSE_COMPLETE, NFS_REQUEST_STARTED, NFS_REQUEST_COMPLETE, NFS_RESPONSE_STARTED, NFS_RESPONSE_COMPLETE, KRB5_REQUEST_STARTED, KRB5_REQUEST_COMPLETE, KRB5_RESPONSE_STARTED, KRB5_RESPONSE_COMPLETE, IKE_REQUEST_STARTED, IKE_REQUEST_COMPLETE, IKE_RESPONSE_STARTED, IKE_RESPONSE_COMPLETE, TFTP_REQUEST_STARTED, TFTP_REQUEST_COMPLETE, TFTP_RESPONSE_STARTED, TFTP_RESPONSE_COMPLETE, DHCP_REQUEST_STARTED, DHCP_REQUEST_COMPLETE, DHCP_RESPONSE_STARTED, DHCP_RESPONSE_COMPLETE, QUIC_REQUEST_STARTED, QUIC_REQUEST_COMPLETE, QUIC_RESPONSE_STARTED, QUIC_RESPONSE_COMPLETE, RDP_REQUEST_STARTED, RDP_REQUEST_COMPLETE, RDP_RESPONSE_STARTED, RDP_RESPONSE_COMPLETE, RFB_REQUEST_STARTED, RFB_REQUEST_COMPLETE, RFB_RESPONSE_STARTED, RFB_RESPONSE_COMPLETE, MQTT_REQUEST_STARTED, MQTT_REQUEST_COMPLETE, MQTT_RESPONSE_STARTED, MQTT_RESPONSE_COMPLETE, PGSQL_REQUEST_STARTED, PGSQL_REQUEST_COMPLETE, PGSQL_RESPONSE_STARTED, PGSQL_RESPONSE_COMPLETE, SNMP_REQUEST_STARTED, SNMP_REQUEST_COMPLETE, SNMP_RESPONSE_STARTED, SNMP_RESPONSE_COMPLETE, NTP_REQUEST_STARTED, NTP_REQUEST_COMPLETE, NTP_RESPONSE_STARTED, NTP_RESPONSE_COMPLETE, TELNET_REQUEST_STARTED, TELNET_REQUEST_COMPLETE, TELNET_RESPONSE_STARTED, TELNET_RESPONSE_COMPLETE, WEBSOCKET_REQUEST_STARTED, WEBSOCKET_REQUEST_COMPLETE, WEBSOCKET_RESPONSE_STARTED, WEBSOCKET_RESPONSE_COMPLETE, LDAP_REQUEST_STARTED, LDAP_REQUEST_COMPLETE, LDAP_RESPONSE_STARTED, LDAP_RESPONSE_COMPLETE, POP3_REQUEST_STARTED, POP3_REQUEST_COMPLETE, POP3_RESPONSE_STARTED, POP3_RESPONSE_COMPLETE, MDNS_REQUEST_STARTED, MDNS_REQUEST_COMPLETE, MDNS_RESPONSE_STARTED, MDNS_RESPONSE_COMPLETE, BITTORRENT_DHT_REQUEST_STARTED, BITTORRENT_DHT_REQUEST_COMPLETE, BITTORRENT_DHT_RESPONSE_STARTED, BITTORRENT_DHT_RESPONSE_COMPLETE, DNP3_REQUEST_STARTED, DNP3_REQUEST_COMPLETE, DNP3_RESPONSE_STARTED, DNP3_RESPONSE_COMPLETE, SSH_REQUEST_IN_PROGRESS, SSH_REQUEST_BANNER_WAIT_EOL, SSH_REQUEST_BANNER_DONE, SSH_REQUEST_FINISHED, SSH_RESPONSE_IN_PROGRESS, SSH_RESPONSE_BANNER_WAIT_EOL, SSH_RESPONSE_BANNER_DONE, SSH_RESPONSE_FINISHED
|
|
7175
|
+
# protocol: "IP", # required, accepts IP, TCP, UDP, ICMP, HTTP, FTP, TLS, SMB, DNS, DCERPC, SSH, SMTP, MSN, KRB5, IKEV2, TFTP, NTP, DHCP, HTTP2, QUIC, ICMPV4, ICMPV6, SCTP, IPV4, IPV6, DOH2, FTP_DATA, NFS, RDP, RFB, MQTT, PGSQL, SNMP, TELNET, WEBSOCKET, LDAP, POP3, MDNS, BITTORRENT_DHT, DNP3
|
|
7176
|
+
# source_i_ps: "Source",
|
|
7177
|
+
# dest_i_ps: "Destination",
|
|
7178
|
+
# source_ports: "Port",
|
|
7179
|
+
# dest_ports: "Port",
|
|
7180
|
+
# rule_options: [
|
|
7181
|
+
# {
|
|
7182
|
+
# keyword: "Keyword", # required
|
|
7183
|
+
# settings: ["Setting"],
|
|
7184
|
+
# },
|
|
7185
|
+
# ],
|
|
7186
|
+
# accept_prior_hooks: false,
|
|
7187
|
+
# alert_enabled: false,
|
|
7188
|
+
# bypass_ips_enabled: false,
|
|
7189
|
+
# rule_metadata: {
|
|
7190
|
+
# rule_enabled: false,
|
|
7191
|
+
# rule_description: "RuleDescriptionText",
|
|
7192
|
+
# },
|
|
7193
|
+
# },
|
|
7194
|
+
# ],
|
|
7195
|
+
# rules_source_list: {
|
|
7196
|
+
# targets: ["CollectionMember_String"], # required
|
|
7197
|
+
# target_types: ["TLS_SNI"], # required, accepts TLS_SNI, HTTP_HOST, AWS_ROUTE_53_RESOLVED_DOMAIN
|
|
7198
|
+
# generated_rules_type: "ALLOWLIST", # required, accepts ALLOWLIST, DENYLIST, REJECTLIST, ALERTLIST
|
|
7199
|
+
# },
|
|
7200
|
+
# },
|
|
7201
|
+
# rule_variables: {
|
|
7202
|
+
# ip_sets: {
|
|
7203
|
+
# "RuleVariableName" => {
|
|
7204
|
+
# definition: ["VariableDefinition"], # required
|
|
7205
|
+
# },
|
|
7206
|
+
# },
|
|
7207
|
+
# port_sets: {
|
|
7208
|
+
# "RuleVariableName" => {
|
|
7209
|
+
# definition: ["VariableDefinition"],
|
|
7210
|
+
# },
|
|
7211
|
+
# },
|
|
7212
|
+
# },
|
|
7213
|
+
# reference_sets: {
|
|
7214
|
+
# ip_set_references: {
|
|
7215
|
+
# "IPSetReferenceName" => {
|
|
7216
|
+
# reference_arn: "ResourceArn",
|
|
7217
|
+
# },
|
|
7218
|
+
# },
|
|
7219
|
+
# },
|
|
7220
|
+
# },
|
|
7221
|
+
# },
|
|
7222
|
+
# ],
|
|
7223
|
+
# ips_rule_group_entries: [
|
|
7224
|
+
# {
|
|
7225
|
+
# resource_arn: "ResourceArn",
|
|
7226
|
+
# inline_rule_group: {
|
|
7227
|
+
# rules_source: { # required
|
|
7228
|
+
# rules_string: "RulesString",
|
|
7229
|
+
# },
|
|
7230
|
+
# rule_variables: {
|
|
7231
|
+
# ip_sets: {
|
|
7232
|
+
# "RuleVariableName" => {
|
|
7233
|
+
# definition: ["VariableDefinition"], # required
|
|
7234
|
+
# },
|
|
7235
|
+
# },
|
|
7236
|
+
# port_sets: {
|
|
7237
|
+
# "RuleVariableName" => {
|
|
7238
|
+
# definition: ["VariableDefinition"],
|
|
7239
|
+
# },
|
|
7240
|
+
# },
|
|
7241
|
+
# },
|
|
7242
|
+
# reference_sets: {
|
|
7243
|
+
# ip_set_references: {
|
|
7244
|
+
# "IPSetReferenceName" => {
|
|
7245
|
+
# reference_arn: "ResourceArn",
|
|
7246
|
+
# },
|
|
7247
|
+
# },
|
|
7248
|
+
# },
|
|
7249
|
+
# },
|
|
7250
|
+
# override: {
|
|
7251
|
+
# action: "DROP_TO_ALERT", # accepts DROP_TO_ALERT
|
|
7252
|
+
# },
|
|
7253
|
+
# },
|
|
7254
|
+
# ],
|
|
7255
|
+
# policy_mode: "ENFORCE", # accepts ENFORCE, MONITOR
|
|
7256
|
+
# firewall_default_action: "DROP", # accepts DROP, ACCEPT, REJECT, ALERT
|
|
7257
|
+
# stateful_engine_options: {
|
|
7258
|
+
# stream_exception_policy: "DROP", # accepts DROP, REJECT
|
|
7259
|
+
# flow_timeouts: {
|
|
7260
|
+
# tcp_idle_timeout_seconds: 1,
|
|
7261
|
+
# },
|
|
7262
|
+
# },
|
|
7263
|
+
# tls_inspection_configuration_arn: "ResourceArn",
|
|
7264
|
+
# policy_variables: {
|
|
7265
|
+
# rule_variables: {
|
|
7266
|
+
# "RuleVariableName" => {
|
|
7267
|
+
# definition: ["VariableDefinition"], # required
|
|
7268
|
+
# },
|
|
7269
|
+
# },
|
|
7270
|
+
# },
|
|
7271
|
+
# route_53_resolved_ip_validation: {
|
|
7272
|
+
# action: "REJECT", # required, accepts REJECT, DROP, ALERT
|
|
7273
|
+
# dns_firewall_rule_group_id: "DNSFirewallRuleGroupId", # required
|
|
7274
|
+
# dns_expiry_exception_policy: "REJECT", # required, accepts REJECT, DROP, CONTINUE
|
|
7275
|
+
# bypass_destination_validation_ip_ranges: [
|
|
7276
|
+
# {
|
|
7277
|
+
# address_definition: "AddressDefinition", # required
|
|
7278
|
+
# },
|
|
7279
|
+
# ],
|
|
7280
|
+
# source_ip_ranges: [
|
|
7281
|
+
# {
|
|
7282
|
+
# address_definition: "AddressDefinition", # required
|
|
7283
|
+
# },
|
|
7284
|
+
# ],
|
|
7285
|
+
# },
|
|
7286
|
+
# },
|
|
7287
|
+
# description: "Description",
|
|
7288
|
+
# dry_run: false,
|
|
7289
|
+
# encryption_configuration: {
|
|
7290
|
+
# key_id: "KeyId",
|
|
7291
|
+
# type: "CUSTOMER_KMS", # required, accepts CUSTOMER_KMS, AWS_OWNED_KMS_KEY
|
|
7292
|
+
# },
|
|
7293
|
+
# })
|
|
7294
|
+
#
|
|
7295
|
+
# @example Response structure
|
|
7296
|
+
#
|
|
7297
|
+
# resp.update_token #=> String
|
|
7298
|
+
# resp.firewall_policy_v2_response.firewall_policy_v2_name #=> String
|
|
7299
|
+
# resp.firewall_policy_v2_response.firewall_policy_v2_arn #=> String
|
|
7300
|
+
# resp.firewall_policy_v2_response.firewall_policy_v2_id #=> String
|
|
7301
|
+
# resp.firewall_policy_v2_response.description #=> String
|
|
7302
|
+
# resp.firewall_policy_v2_response.firewall_policy_v2_status #=> String, one of "ACTIVE", "DELETING", "ERROR", "UPDATING"
|
|
7303
|
+
# resp.firewall_policy_v2_response.status_message #=> String
|
|
7304
|
+
# resp.firewall_policy_v2_response.tags #=> Array
|
|
7305
|
+
# resp.firewall_policy_v2_response.tags[0].key #=> String
|
|
7306
|
+
# resp.firewall_policy_v2_response.tags[0].value #=> String
|
|
7307
|
+
# resp.firewall_policy_v2_response.consumed_firewall_rule_capacity #=> Integer
|
|
7308
|
+
# resp.firewall_policy_v2_response.consumed_ips_rule_capacity #=> Integer
|
|
7309
|
+
# resp.firewall_policy_v2_response.consumed_ips_domain_capacity #=> Integer
|
|
7310
|
+
# resp.firewall_policy_v2_response.number_of_associations #=> Integer
|
|
7311
|
+
# resp.firewall_policy_v2_response.encryption_configuration.key_id #=> String
|
|
7312
|
+
# resp.firewall_policy_v2_response.encryption_configuration.type #=> String, one of "CUSTOMER_KMS", "AWS_OWNED_KMS_KEY"
|
|
7313
|
+
# resp.firewall_policy_v2_response.errors #=> Array
|
|
7314
|
+
# resp.firewall_policy_v2_response.errors[0].code #=> String, one of "DNS_FIREWALL_RULE_GROUP_UNAVAILABLE", "ROUTE53_RESOLVED_IP_VALIDATION_MISSING"
|
|
7315
|
+
# resp.firewall_policy_v2_response.errors[0].message #=> String
|
|
7316
|
+
# resp.firewall_policy_v2_response.errors[0].resource_id #=> String
|
|
7317
|
+
# resp.firewall_policy_v2_response.last_modified_time #=> Time
|
|
7318
|
+
#
|
|
7319
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/UpdateFirewallPolicyV2 AWS API Documentation
|
|
7320
|
+
#
|
|
7321
|
+
# @overload update_firewall_policy_v2(params = {})
|
|
7322
|
+
# @param [Hash] params ({})
|
|
7323
|
+
def update_firewall_policy_v2(params = {}, options = {})
|
|
7324
|
+
req = build_request(:update_firewall_policy_v2, params)
|
|
7325
|
+
req.send_request(options)
|
|
7326
|
+
end
|
|
7327
|
+
|
|
6458
7328
|
# Sets the logging configuration for the specified firewall.
|
|
6459
7329
|
#
|
|
6460
7330
|
# To change the logging configuration, retrieve the LoggingConfiguration
|
|
@@ -7099,6 +7969,14 @@ module Aws::NetworkFirewall
|
|
|
7099
7969
|
#
|
|
7100
7970
|
# </note>
|
|
7101
7971
|
#
|
|
7972
|
+
# @option params [Types::FirewallRuleGroup] :firewall_rule_group
|
|
7973
|
+
# An object that defines the rules in a firewall engine rule group, for
|
|
7974
|
+
# use in a Next Generation policy.
|
|
7975
|
+
#
|
|
7976
|
+
# @option params [Types::IpsRuleGroup] :ips_rule_group
|
|
7977
|
+
# An object that defines the rules in an IPS engine rule group, for use
|
|
7978
|
+
# in a Next Generation policy.
|
|
7979
|
+
#
|
|
7102
7980
|
# @option params [String] :rules
|
|
7103
7981
|
# A string containing stateful rule group rules specifications in
|
|
7104
7982
|
# Suricata flat format, with one rule per line. Use this to import your
|
|
@@ -7115,9 +7993,18 @@ module Aws::NetworkFirewall
|
|
|
7115
7993
|
# populated from your string.
|
|
7116
7994
|
#
|
|
7117
7995
|
# @option params [String] :type
|
|
7118
|
-
# Indicates
|
|
7119
|
-
#
|
|
7120
|
-
#
|
|
7996
|
+
# Indicates the type of the rule group. Valid values are:
|
|
7997
|
+
#
|
|
7998
|
+
# * `STATELESS` - Stateless rules, for use in a Classic Network Firewall
|
|
7999
|
+
# policy.
|
|
8000
|
+
#
|
|
8001
|
+
# * `STATEFUL` - Stateful rules, for use in a Classic Network Firewall
|
|
8002
|
+
# policy.
|
|
8003
|
+
#
|
|
8004
|
+
# * `FIREWALL` - Firewall engine rules, for use in a Next Generation
|
|
8005
|
+
# policy.
|
|
8006
|
+
#
|
|
8007
|
+
# * `IPS` - IPS engine rules, for use in a Next Generation policy.
|
|
7121
8008
|
#
|
|
7122
8009
|
# <note markdown="1"> This setting is required for requests that do not include the
|
|
7123
8010
|
# `RuleGroupARN`.
|
|
@@ -7280,8 +8167,86 @@ module Aws::NetworkFirewall
|
|
|
7280
8167
|
# rule_order: "DEFAULT_ACTION_ORDER", # accepts DEFAULT_ACTION_ORDER, STRICT_ORDER
|
|
7281
8168
|
# },
|
|
7282
8169
|
# },
|
|
8170
|
+
# firewall_rule_group: {
|
|
8171
|
+
# rules_source: { # required
|
|
8172
|
+
# rules_string: "RulesString",
|
|
8173
|
+
# firewall_rules: [
|
|
8174
|
+
# {
|
|
8175
|
+
# action: "ACCEPT", # required, accepts ACCEPT, DROP, REJECT, REJECT_DST, REJECT_BOTH
|
|
8176
|
+
# action_scope: "FLOW", # required, accepts FLOW, TX, HOOK, PACKET
|
|
8177
|
+
# hook: "TCP_ALL", # required, accepts TCP_ALL, TCP_FLOW_START, TCP_PRE_FLOW, TCP_PRE_STREAM, SCTP_ALL, SCTP_FLOW_START, SCTP_PRE_FLOW, SCTP_PRE_STREAM, IPV6_ALL, IPV6_FLOW_START, IPV6_PRE_FLOW, IPV6_PRE_STREAM, ICMPV6_ALL, ICMPV6_FLOW_START, ICMPV6_PRE_FLOW, ICMPV6_PRE_STREAM, UDP_ALL, UDP_FLOW_START, UDP_PRE_FLOW, UDP_PRE_STREAM, ICMP_ALL, ICMP_FLOW_START, ICMP_PRE_FLOW, ICMP_PRE_STREAM, ICMPV4_ALL, ICMPV4_FLOW_START, ICMPV4_PRE_FLOW, ICMPV4_PRE_STREAM, IP_ALL, IP_FLOW_START, IP_PRE_FLOW, IP_PRE_STREAM, IPV4_ALL, IPV4_FLOW_START, IPV4_PRE_FLOW, IPV4_PRE_STREAM, TLS_CLIENT_STARTED, TLS_CLIENT_HELLO, TLS_CLIENT_CERT, TLS_CLIENT_DATA, TLS_CLIENT_FINISHED, TLS_SERVER_STARTED, TLS_SERVER_HELLO, TLS_SERVER_CERT, TLS_SERVER_DATA, TLS_SERVER_FINISHED, HTTP1_REQUEST_STARTED, HTTP1_REQUEST_LINE, HTTP1_REQUEST_HEADERS, HTTP1_REQUEST_BODY, HTTP1_REQUEST_TRAILER, HTTP1_REQUEST_COMPLETE, HTTP1_RESPONSE_STARTED, HTTP1_RESPONSE_LINE, HTTP1_RESPONSE_HEADERS, HTTP1_RESPONSE_BODY, HTTP1_RESPONSE_TRAILER, HTTP1_RESPONSE_COMPLETE, HTTP2_STREAM_REQUEST_STARTED, HTTP2_STREAM_REQUEST_HEADERS, HTTP2_STREAM_REQUEST_DATA, HTTP2_STREAM_REQUEST_CLOSED, HTTP2_STREAM_REQUEST_COMPLETE, HTTP2_STREAM_RESPONSE_STARTED, HTTP2_STREAM_RESPONSE_HEADERS, HTTP2_STREAM_RESPONSE_DATA, HTTP2_STREAM_RESPONSE_CLOSED, HTTP2_STREAM_RESPONSE_COMPLETE, HTTP2_GLOBAL_REQUEST_STARTED, HTTP2_GLOBAL_REQUEST_COMPLETE, HTTP2_GLOBAL_RESPONSE_STARTED, HTTP2_GLOBAL_RESPONSE_COMPLETE, DOH2_STREAM_REQUEST_STARTED, DOH2_STREAM_REQUEST_HEADERS, DOH2_STREAM_REQUEST_DATA, DOH2_STREAM_REQUEST_CLOSED, DOH2_STREAM_REQUEST_COMPLETE, DOH2_STREAM_RESPONSE_STARTED, DOH2_STREAM_RESPONSE_HEADERS, DOH2_STREAM_RESPONSE_DATA, DOH2_STREAM_RESPONSE_CLOSED, DOH2_STREAM_RESPONSE_COMPLETE, DOH2_GLOBAL_REQUEST_STARTED, DOH2_GLOBAL_REQUEST_COMPLETE, DOH2_GLOBAL_RESPONSE_STARTED, DOH2_GLOBAL_RESPONSE_COMPLETE, DNS_REQUEST_STARTED, DNS_REQUEST_COMPLETE, DNS_RESPONSE_STARTED, DNS_RESPONSE_COMPLETE, SMTP_REQUEST_STARTED, SMTP_REQUEST_DATA, SMTP_REQUEST_COMPLETE, SMTP_RESPONSE_STARTED, SMTP_RESPONSE_DATA, SMTP_RESPONSE_COMPLETE, FTP_REQUEST_STARTED, FTP_REQUEST_COMPLETE, FTP_RESPONSE_STARTED, FTP_RESPONSE_COMPLETE, FTP_DATA_REQUEST_STARTED, FTP_DATA_REQUEST_COMPLETE, FTP_DATA_RESPONSE_STARTED, FTP_DATA_RESPONSE_COMPLETE, SMB_REQUEST_STARTED, SMB_REQUEST_COMPLETE, SMB_RESPONSE_STARTED, SMB_RESPONSE_COMPLETE, DCERPC_REQUEST_STARTED, DCERPC_REQUEST_COMPLETE, DCERPC_RESPONSE_STARTED, DCERPC_RESPONSE_COMPLETE, NFS_REQUEST_STARTED, NFS_REQUEST_COMPLETE, NFS_RESPONSE_STARTED, NFS_RESPONSE_COMPLETE, KRB5_REQUEST_STARTED, KRB5_REQUEST_COMPLETE, KRB5_RESPONSE_STARTED, KRB5_RESPONSE_COMPLETE, IKE_REQUEST_STARTED, IKE_REQUEST_COMPLETE, IKE_RESPONSE_STARTED, IKE_RESPONSE_COMPLETE, TFTP_REQUEST_STARTED, TFTP_REQUEST_COMPLETE, TFTP_RESPONSE_STARTED, TFTP_RESPONSE_COMPLETE, DHCP_REQUEST_STARTED, DHCP_REQUEST_COMPLETE, DHCP_RESPONSE_STARTED, DHCP_RESPONSE_COMPLETE, QUIC_REQUEST_STARTED, QUIC_REQUEST_COMPLETE, QUIC_RESPONSE_STARTED, QUIC_RESPONSE_COMPLETE, RDP_REQUEST_STARTED, RDP_REQUEST_COMPLETE, RDP_RESPONSE_STARTED, RDP_RESPONSE_COMPLETE, RFB_REQUEST_STARTED, RFB_REQUEST_COMPLETE, RFB_RESPONSE_STARTED, RFB_RESPONSE_COMPLETE, MQTT_REQUEST_STARTED, MQTT_REQUEST_COMPLETE, MQTT_RESPONSE_STARTED, MQTT_RESPONSE_COMPLETE, PGSQL_REQUEST_STARTED, PGSQL_REQUEST_COMPLETE, PGSQL_RESPONSE_STARTED, PGSQL_RESPONSE_COMPLETE, SNMP_REQUEST_STARTED, SNMP_REQUEST_COMPLETE, SNMP_RESPONSE_STARTED, SNMP_RESPONSE_COMPLETE, NTP_REQUEST_STARTED, NTP_REQUEST_COMPLETE, NTP_RESPONSE_STARTED, NTP_RESPONSE_COMPLETE, TELNET_REQUEST_STARTED, TELNET_REQUEST_COMPLETE, TELNET_RESPONSE_STARTED, TELNET_RESPONSE_COMPLETE, WEBSOCKET_REQUEST_STARTED, WEBSOCKET_REQUEST_COMPLETE, WEBSOCKET_RESPONSE_STARTED, WEBSOCKET_RESPONSE_COMPLETE, LDAP_REQUEST_STARTED, LDAP_REQUEST_COMPLETE, LDAP_RESPONSE_STARTED, LDAP_RESPONSE_COMPLETE, POP3_REQUEST_STARTED, POP3_REQUEST_COMPLETE, POP3_RESPONSE_STARTED, POP3_RESPONSE_COMPLETE, MDNS_REQUEST_STARTED, MDNS_REQUEST_COMPLETE, MDNS_RESPONSE_STARTED, MDNS_RESPONSE_COMPLETE, BITTORRENT_DHT_REQUEST_STARTED, BITTORRENT_DHT_REQUEST_COMPLETE, BITTORRENT_DHT_RESPONSE_STARTED, BITTORRENT_DHT_RESPONSE_COMPLETE, DNP3_REQUEST_STARTED, DNP3_REQUEST_COMPLETE, DNP3_RESPONSE_STARTED, DNP3_RESPONSE_COMPLETE, SSH_REQUEST_IN_PROGRESS, SSH_REQUEST_BANNER_WAIT_EOL, SSH_REQUEST_BANNER_DONE, SSH_REQUEST_FINISHED, SSH_RESPONSE_IN_PROGRESS, SSH_RESPONSE_BANNER_WAIT_EOL, SSH_RESPONSE_BANNER_DONE, SSH_RESPONSE_FINISHED
|
|
8178
|
+
# protocol: "IP", # required, accepts IP, TCP, UDP, ICMP, HTTP, FTP, TLS, SMB, DNS, DCERPC, SSH, SMTP, MSN, KRB5, IKEV2, TFTP, NTP, DHCP, HTTP2, QUIC, ICMPV4, ICMPV6, SCTP, IPV4, IPV6, DOH2, FTP_DATA, NFS, RDP, RFB, MQTT, PGSQL, SNMP, TELNET, WEBSOCKET, LDAP, POP3, MDNS, BITTORRENT_DHT, DNP3
|
|
8179
|
+
# source_i_ps: "Source",
|
|
8180
|
+
# dest_i_ps: "Destination",
|
|
8181
|
+
# source_ports: "Port",
|
|
8182
|
+
# dest_ports: "Port",
|
|
8183
|
+
# rule_options: [
|
|
8184
|
+
# {
|
|
8185
|
+
# keyword: "Keyword", # required
|
|
8186
|
+
# settings: ["Setting"],
|
|
8187
|
+
# },
|
|
8188
|
+
# ],
|
|
8189
|
+
# accept_prior_hooks: false,
|
|
8190
|
+
# alert_enabled: false,
|
|
8191
|
+
# bypass_ips_enabled: false,
|
|
8192
|
+
# rule_metadata: {
|
|
8193
|
+
# rule_enabled: false,
|
|
8194
|
+
# rule_description: "RuleDescriptionText",
|
|
8195
|
+
# },
|
|
8196
|
+
# },
|
|
8197
|
+
# ],
|
|
8198
|
+
# rules_source_list: {
|
|
8199
|
+
# targets: ["CollectionMember_String"], # required
|
|
8200
|
+
# target_types: ["TLS_SNI"], # required, accepts TLS_SNI, HTTP_HOST, AWS_ROUTE_53_RESOLVED_DOMAIN
|
|
8201
|
+
# generated_rules_type: "ALLOWLIST", # required, accepts ALLOWLIST, DENYLIST, REJECTLIST, ALERTLIST
|
|
8202
|
+
# },
|
|
8203
|
+
# },
|
|
8204
|
+
# rule_variables: {
|
|
8205
|
+
# ip_sets: {
|
|
8206
|
+
# "RuleVariableName" => {
|
|
8207
|
+
# definition: ["VariableDefinition"], # required
|
|
8208
|
+
# },
|
|
8209
|
+
# },
|
|
8210
|
+
# port_sets: {
|
|
8211
|
+
# "RuleVariableName" => {
|
|
8212
|
+
# definition: ["VariableDefinition"],
|
|
8213
|
+
# },
|
|
8214
|
+
# },
|
|
8215
|
+
# },
|
|
8216
|
+
# reference_sets: {
|
|
8217
|
+
# ip_set_references: {
|
|
8218
|
+
# "IPSetReferenceName" => {
|
|
8219
|
+
# reference_arn: "ResourceArn",
|
|
8220
|
+
# },
|
|
8221
|
+
# },
|
|
8222
|
+
# },
|
|
8223
|
+
# },
|
|
8224
|
+
# ips_rule_group: {
|
|
8225
|
+
# rules_source: { # required
|
|
8226
|
+
# rules_string: "RulesString",
|
|
8227
|
+
# },
|
|
8228
|
+
# rule_variables: {
|
|
8229
|
+
# ip_sets: {
|
|
8230
|
+
# "RuleVariableName" => {
|
|
8231
|
+
# definition: ["VariableDefinition"], # required
|
|
8232
|
+
# },
|
|
8233
|
+
# },
|
|
8234
|
+
# port_sets: {
|
|
8235
|
+
# "RuleVariableName" => {
|
|
8236
|
+
# definition: ["VariableDefinition"],
|
|
8237
|
+
# },
|
|
8238
|
+
# },
|
|
8239
|
+
# },
|
|
8240
|
+
# reference_sets: {
|
|
8241
|
+
# ip_set_references: {
|
|
8242
|
+
# "IPSetReferenceName" => {
|
|
8243
|
+
# reference_arn: "ResourceArn",
|
|
8244
|
+
# },
|
|
8245
|
+
# },
|
|
8246
|
+
# },
|
|
8247
|
+
# },
|
|
7283
8248
|
# rules: "RulesString",
|
|
7284
|
-
# type: "STATELESS", # accepts STATELESS, STATEFUL, STATEFUL_DOMAIN
|
|
8249
|
+
# type: "STATELESS", # accepts STATELESS, STATEFUL, STATEFUL_DOMAIN, FIREWALL, IPS
|
|
7285
8250
|
# description: "Description",
|
|
7286
8251
|
# dry_run: false,
|
|
7287
8252
|
# encryption_configuration: {
|
|
@@ -7305,7 +8270,7 @@ module Aws::NetworkFirewall
|
|
|
7305
8270
|
# resp.rule_group_response.rule_group_name #=> String
|
|
7306
8271
|
# resp.rule_group_response.rule_group_id #=> String
|
|
7307
8272
|
# resp.rule_group_response.description #=> String
|
|
7308
|
-
# resp.rule_group_response.type #=> String, one of "STATELESS", "STATEFUL", "STATEFUL_DOMAIN"
|
|
8273
|
+
# resp.rule_group_response.type #=> String, one of "STATELESS", "STATEFUL", "STATEFUL_DOMAIN", "FIREWALL", "IPS"
|
|
7309
8274
|
# resp.rule_group_response.capacity #=> Integer
|
|
7310
8275
|
# resp.rule_group_response.rule_group_status #=> String, one of "ACTIVE", "DELETING", "ERROR", "UPDATING"
|
|
7311
8276
|
# resp.rule_group_response.tags #=> Array
|
|
@@ -7582,7 +8547,7 @@ module Aws::NetworkFirewall
|
|
|
7582
8547
|
tracer: tracer
|
|
7583
8548
|
)
|
|
7584
8549
|
context[:gem_name] = 'aws-sdk-networkfirewall'
|
|
7585
|
-
context[:gem_version] = '1.
|
|
8550
|
+
context[:gem_version] = '1.108.0'
|
|
7586
8551
|
Seahorse::Client::Request.new(handlers, context)
|
|
7587
8552
|
end
|
|
7588
8553
|
|