Firewall Policy Analysis Report

Generated: {{ current_date }}

Table of Contents

Device Group

{{ device_group }}

Address Groups

{{ address_groups_count }}

Address Objects

{{ address_objects_count }}

Total Policies

{{ total_policies }}

Introduction

Comprehensive policy analysis covering {{ scenarios|length }} scenarios.

{% for scenario in scenarios %}

Scenario {{ scenario.name }}

{{ scenario.__doc__ or "No description available." }}

Total Rules Analyzed

{{ scenario.security_rules|length }}

{% if scenario.analysis_results_by_dg is defined %} {% for dg, analysis_results in scenario.analysis_results_by_dg.items() %}

Device Group: {{ dg }}

Shadowing Findings

{{ analysis_results|length }}

{% for idx, (rule, shadowing_rules) in enumerate(analysis_results) %}

Finding {{ idx+1 }} - {{ rule.name }}

{% for j in range(shadowing_rules|length) %} {% endfor %} {% for attr in rule.__pydantic_fields__.keys() %} {% for preceding_rule in shadowing_rules %} {% endfor %} {% endfor %}
Attribute Shadowed RulePreceding Rule {{ j+1 }}
{{ attr }} {{ getattr(rule, attr) }}{{ getattr(preceding_rule, attr) }}
{% endfor %} {% endfor %} {% endif %}

Checks

{% for check in scenario.checks %}
{{ check.__name__ }}

{{ check.__doc__ or "No description available" }}

{% endfor %}
{% endfor %}