CfnLoggingConfigurationPropsMixin

class aws_cdk.mixins_preview.aws_networkfirewall.mixins.CfnLoggingConfigurationPropsMixin(props, *, strategy=None)

Bases: Mixin

Use the logging configuration to define the destinations and logging options for an firewall.

You must change the logging configuration by changing one LogDestinationConfig setting at a time in your LogDestinationConfigs .

You can make only one of the following changes to your logging configuration resource:

  • Create a new log destination object by adding a single LogDestinationConfig array element to LogDestinationConfigs .

  • Delete a log destination object by removing a single LogDestinationConfig array element from LogDestinationConfigs .

  • Change the LogDestination setting in a single LogDestinationConfig array element.

You can’t change the LogDestinationType or LogType in a LogDestinationConfig . To change these settings, delete the existing LogDestinationConfig object and create a new one, in two separate modifications.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-loggingconfiguration.html

CloudformationResource:

AWS::NetworkFirewall::LoggingConfiguration

Mixin:

true

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview import mixins
from aws_cdk.mixins_preview.aws_networkfirewall import mixins as networkfirewall_mixins

cfn_logging_configuration_props_mixin = networkfirewall_mixins.CfnLoggingConfigurationPropsMixin(networkfirewall_mixins.CfnLoggingConfigurationMixinProps(
    enable_monitoring_dashboard=False,
    firewall_arn="firewallArn",
    firewall_name="firewallName",
    logging_configuration=networkfirewall_mixins.CfnLoggingConfigurationPropsMixin.LoggingConfigurationProperty(
        log_destination_configs=[networkfirewall_mixins.CfnLoggingConfigurationPropsMixin.LogDestinationConfigProperty(
            log_destination={
                "log_destination_key": "logDestination"
            },
            log_destination_type="logDestinationType",
            log_type="logType"
        )]
    )
),
    strategy=mixins.PropertyMergeStrategy.OVERRIDE
)

Create a mixin to apply properties to AWS::NetworkFirewall::LoggingConfiguration.

Parameters:

Methods

apply_to(construct)

Apply the mixin properties to the construct.

Parameters:

construct (IConstruct)

Return type:

IConstruct

supports(construct)

Check if this mixin supports the given construct.

Parameters:

construct (IConstruct)

Return type:

bool

Attributes

CFN_PROPERTY_KEYS = ['enableMonitoringDashboard', 'firewallArn', 'firewallName', 'loggingConfiguration']

Static Methods

classmethod is_mixin(x)

(experimental) Checks if x is a Mixin.

Parameters:

x (Any) – Any object.

Return type:

bool

Returns:

true if x is an object created from a class which extends Mixin.

Stability:

experimental

LogDestinationConfigProperty

class CfnLoggingConfigurationPropsMixin.LogDestinationConfigProperty(*, log_destination=None, log_destination_type=None, log_type=None)

Bases: object

Defines where AWS Network Firewall sends logs for the firewall for one log type.

This is used in logging configuration. You can send each type of log to an Amazon S3 bucket, a CloudWatch log group, or a Kinesis Data Firehose delivery stream.

Network Firewall generates logs for stateful rule groups. You can save alert and flow log types. The stateful rules engine records flow logs for all network traffic that it receives. It records alert logs for traffic that matches stateful rules that have the rule action set to DROP or ALERT .

Parameters:
  • log_destination (Union[Mapping[str, str], IResolvable, None]) – The named location for the logs, provided in a key:value mapping that is specific to the chosen destination type. - For an Amazon S3 bucket, provide the name of the bucket, with key bucketName , and optionally provide a prefix, with key prefix . The following example specifies an Amazon S3 bucket named DOC-EXAMPLE-BUCKET and the prefix alerts : "LogDestination": { "bucketName": "DOC-EXAMPLE-BUCKET", "prefix": "alerts" } - For a CloudWatch log group, provide the name of the CloudWatch log group, with key logGroup . The following example specifies a log group named alert-log-group : "LogDestination": { "logGroup": "alert-log-group" } - For a Firehose delivery stream, provide the name of the delivery stream, with key deliveryStream . The following example specifies a delivery stream named alert-delivery-stream : "LogDestination": { "deliveryStream": "alert-delivery-stream" }

  • log_destination_type (Optional[str]) – The type of storage destination to send these logs to. You can send logs to an Amazon S3 bucket, a CloudWatch log group, or a Firehose delivery stream.

  • log_type (Optional[str]) – The type of log to record. You can record the following types of logs from your Network Firewall stateful engine. - ALERT - Logs for traffic that matches your stateful rules and that have an action that sends an alert. A stateful rule sends alerts for the rule actions DROP, ALERT, and REJECT. For more information, see the StatefulRule property. - FLOW - Standard network traffic flow logs. The stateful rules engine records flow logs for all network traffic that it receives. Each flow log record captures the network flow for a specific standard stateless rule group. - TLS - Logs for events that are related to TLS inspection. For more information, see Inspecting SSL/TLS traffic with TLS inspection configurations in the Network Firewall Developer Guide .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkfirewall-loggingconfiguration-logdestinationconfig.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_networkfirewall import mixins as networkfirewall_mixins

log_destination_config_property = networkfirewall_mixins.CfnLoggingConfigurationPropsMixin.LogDestinationConfigProperty(
    log_destination={
        "log_destination_key": "logDestination"
    },
    log_destination_type="logDestinationType",
    log_type="logType"
)

Attributes

log_destination

value mapping that is specific to the chosen destination type.

  • For an Amazon S3 bucket, provide the name of the bucket, with key bucketName , and optionally provide a prefix, with key prefix .

The following example specifies an Amazon S3 bucket named DOC-EXAMPLE-BUCKET and the prefix alerts :

"LogDestination": { "bucketName": "DOC-EXAMPLE-BUCKET", "prefix": "alerts" }

  • For a CloudWatch log group, provide the name of the CloudWatch log group, with key logGroup . The following example specifies a log group named alert-log-group :

"LogDestination": { "logGroup": "alert-log-group" }

  • For a Firehose delivery stream, provide the name of the delivery stream, with key deliveryStream . The following example specifies a delivery stream named alert-delivery-stream :

"LogDestination": { "deliveryStream": "alert-delivery-stream" }

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkfirewall-loggingconfiguration-logdestinationconfig.html#cfn-networkfirewall-loggingconfiguration-logdestinationconfig-logdestination

Type:

The named location for the logs, provided in a key

log_destination_type

The type of storage destination to send these logs to.

You can send logs to an Amazon S3 bucket, a CloudWatch log group, or a Firehose delivery stream.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkfirewall-loggingconfiguration-logdestinationconfig.html#cfn-networkfirewall-loggingconfiguration-logdestinationconfig-logdestinationtype

log_type

The type of log to record.

You can record the following types of logs from your Network Firewall stateful engine.

  • ALERT - Logs for traffic that matches your stateful rules and that have an action that sends an alert. A stateful rule sends alerts for the rule actions DROP, ALERT, and REJECT. For more information, see the StatefulRule property.

  • FLOW - Standard network traffic flow logs. The stateful rules engine records flow logs for all network traffic that it receives. Each flow log record captures the network flow for a specific standard stateless rule group.

  • TLS - Logs for events that are related to TLS inspection. For more information, see Inspecting SSL/TLS traffic with TLS inspection configurations in the Network Firewall Developer Guide .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkfirewall-loggingconfiguration-logdestinationconfig.html#cfn-networkfirewall-loggingconfiguration-logdestinationconfig-logtype

LoggingConfigurationProperty

class CfnLoggingConfigurationPropsMixin.LoggingConfigurationProperty(*, log_destination_configs=None)

Bases: object

Defines how AWS Network Firewall performs logging for a firewall.

Parameters:

log_destination_configs (Union[IResolvable, Sequence[Union[IResolvable, LogDestinationConfigProperty, Dict[str, Any]]], None]) – Defines the logging destinations for the logs for a firewall. Network Firewall generates logs for stateful rule groups.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkfirewall-loggingconfiguration-loggingconfiguration.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_networkfirewall import mixins as networkfirewall_mixins

logging_configuration_property = networkfirewall_mixins.CfnLoggingConfigurationPropsMixin.LoggingConfigurationProperty(
    log_destination_configs=[networkfirewall_mixins.CfnLoggingConfigurationPropsMixin.LogDestinationConfigProperty(
        log_destination={
            "log_destination_key": "logDestination"
        },
        log_destination_type="logDestinationType",
        log_type="logType"
    )]
)

Attributes

log_destination_configs

Defines the logging destinations for the logs for a firewall.

Network Firewall generates logs for stateful rule groups.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkfirewall-loggingconfiguration-loggingconfiguration.html#cfn-networkfirewall-loggingconfiguration-loggingconfiguration-logdestinationconfigs