networkfirewall: AWS Network Firewall

View source: R/networkfirewall_service.R

networkfirewallR Documentation

AWS Network Firewall

Description

This is the API Reference for Network Firewall. This guide is for developers who need detailed information about the Network Firewall API actions, data types, and errors.

  • The REST API requires you to handle connection details, such as calculating signatures, handling request retries, and error handling. For general information about using the Amazon Web Services REST APIs, see Amazon Web Services APIs.

    To access Network Firewall using the REST API endpoint: ⁠https://network-firewall.<region>.amazonaws.com ⁠

  • Alternatively, you can use one of the Amazon Web Services SDKs to access an API that's tailored to the programming language or platform that you're using. For more information, see Amazon Web Services SDKs.

  • For descriptions of Network Firewall features, including and step-by-step instructions on how to use them through the Network Firewall console, see the Network Firewall Developer Guide.

Network Firewall is a stateful, managed, network firewall and intrusion detection and prevention service for Amazon Virtual Private Cloud (Amazon VPC). With Network Firewall, you can filter traffic at the perimeter of your VPC. This includes filtering traffic going to and coming from an internet gateway, NAT gateway, or over VPN or Direct Connect. Network Firewall uses rules that are compatible with Suricata, a free, open source network analysis and threat detection engine. Network Firewall supports Suricata version 6.0.9. For information about Suricata, see the Suricata website.

You can use Network Firewall to monitor and protect your VPC traffic in a number of ways. The following are just a few examples:

  • Allow domains or IP addresses for known Amazon Web Services service endpoints, such as Amazon S3, and block all other forms of traffic.

  • Use custom lists of known bad domains to limit the types of domain names that your applications can access.

  • Perform deep packet inspection on traffic entering or leaving your VPC.

  • Use stateful protocol detection to filter protocols like HTTPS, regardless of the port used.

To enable Network Firewall for your VPCs, you perform steps in both Amazon VPC and in Network Firewall. For information about using Amazon VPC, see Amazon VPC User Guide.

To start using Network Firewall, do the following:

  1. (Optional) If you don't already have a VPC that you want to protect, create it in Amazon VPC.

  2. In Amazon VPC, in each Availability Zone where you want to have a firewall endpoint, create a subnet for the sole use of Network Firewall.

  3. In Network Firewall, create stateless and stateful rule groups, to define the components of the network traffic filtering behavior that you want your firewall to have.

  4. In Network Firewall, create a firewall policy that uses your rule groups and specifies additional default traffic filtering behavior.

  5. In Network Firewall, create a firewall and specify your new firewall policy and VPC subnets. Network Firewall creates a firewall endpoint in each subnet that you specify, with the behavior that's defined in the firewall policy.

  6. In Amazon VPC, use ingress routing enhancements to route traffic through the new firewall endpoints.

Usage

networkfirewall(
  config = list(),
  credentials = list(),
  endpoint = NULL,
  region = NULL
)

Arguments

config

Optional configuration of credentials, endpoint, and/or region.

  • credentials:

    • creds:

      • access_key_id: AWS access key ID

      • secret_access_key: AWS secret access key

      • session_token: AWS temporary session token

    • profile: The name of a profile to use. If not given, then the default profile is used.

    • anonymous: Set anonymous credentials.

  • endpoint: The complete URL to use for the constructed client.

  • region: The AWS Region used in instantiating the client.

  • close_connection: Immediately close all HTTP connections.

  • timeout: The time in seconds till a timeout exception is thrown when attempting to make a connection. The default is 60 seconds.

  • s3_force_path_style: Set this to true to force the request to use path-style addressing, i.e. ⁠http://s3.amazonaws.com/BUCKET/KEY⁠.

  • sts_regional_endpoint: Set sts regional endpoint resolver to regional or legacy https://docs.aws.amazon.com/sdkref/latest/guide/feature-sts-regionalized-endpoints.html

credentials

Optional credentials shorthand for the config parameter

  • creds:

    • access_key_id: AWS access key ID

    • secret_access_key: AWS secret access key

    • session_token: AWS temporary session token

  • profile: The name of a profile to use. If not given, then the default profile is used.

  • anonymous: Set anonymous credentials.

endpoint

Optional shorthand for complete URL to use for the constructed client.

region

Optional shorthand for AWS Region used in instantiating the client.

Value

A client for the service. You can call the service's operations using syntax like svc$operation(...), where svc is the name you've assigned to the client. The available operations are listed in the Operations section.

Service syntax

svc <- networkfirewall(
  config = list(
    credentials = list(
      creds = list(
        access_key_id = "string",
        secret_access_key = "string",
        session_token = "string"
      ),
      profile = "string",
      anonymous = "logical"
    ),
    endpoint = "string",
    region = "string",
    close_connection = "logical",
    timeout = "numeric",
    s3_force_path_style = "logical",
    sts_regional_endpoint = "string"
  ),
  credentials = list(
    creds = list(
      access_key_id = "string",
      secret_access_key = "string",
      session_token = "string"
    ),
    profile = "string",
    anonymous = "logical"
  ),
  endpoint = "string",
  region = "string"
)

Operations

associate_firewall_policy Associates a FirewallPolicy to a Firewall
associate_subnets Associates the specified subnets in the Amazon VPC to the firewall
create_firewall Creates an Network Firewall Firewall and accompanying FirewallStatus for a VPC
create_firewall_policy Creates the firewall policy for the firewall according to the specifications
create_rule_group Creates the specified stateless or stateful rule group, which includes the rules for network traffic inspection, a capacity setting, and tags
create_tls_inspection_configuration Creates an Network Firewall TLS inspection configuration
delete_firewall Deletes the specified Firewall and its FirewallStatus
delete_firewall_policy Deletes the specified FirewallPolicy
delete_resource_policy Deletes a resource policy that you created in a PutResourcePolicy request
delete_rule_group Deletes the specified RuleGroup
delete_tls_inspection_configuration Deletes the specified TLSInspectionConfiguration
describe_firewall Returns the data objects for the specified firewall
describe_firewall_policy Returns the data objects for the specified firewall policy
describe_logging_configuration Returns the logging configuration for the specified firewall
describe_resource_policy Retrieves a resource policy that you created in a PutResourcePolicy request
describe_rule_group Returns the data objects for the specified rule group
describe_rule_group_metadata High-level information about a rule group, returned by operations like create and describe
describe_tls_inspection_configuration Returns the data objects for the specified TLS inspection configuration
disassociate_subnets Removes the specified subnet associations from the firewall
list_firewall_policies Retrieves the metadata for the firewall policies that you have defined
list_firewalls Retrieves the metadata for the firewalls that you have defined
list_rule_groups Retrieves the metadata for the rule groups that you have defined
list_tags_for_resource Retrieves the tags associated with the specified resource
list_tls_inspection_configurations Retrieves the metadata for the TLS inspection configurations that you have defined
put_resource_policy Creates or updates an IAM policy for your rule group or firewall policy
tag_resource Adds the specified tags to the specified resource
untag_resource Removes the tags with the specified keys from the specified resource
update_firewall_delete_protection Modifies the flag, DeleteProtection, which indicates whether it is possible to delete the firewall
update_firewall_description Modifies the description for the specified firewall
update_firewall_encryption_configuration A complex type that contains settings for encryption of your firewall resources
update_firewall_policy Updates the properties of the specified firewall policy
update_firewall_policy_change_protection Modifies the flag, ChangeProtection, which indicates whether it is possible to change the firewall
update_logging_configuration Sets the logging configuration for the specified firewall
update_rule_group Updates the rule settings for the specified rule group
update_subnet_change_protection Update subnet change protection
update_tls_inspection_configuration Updates the TLS inspection configuration settings for the specified TLS inspection configuration

Examples

## Not run: 
svc <- networkfirewall()
svc$associate_firewall_policy(
  Foo = 123
)

## End(Not run)


paws.networking documentation built on Sept. 12, 2024, 7:32 a.m.