last sync: 2021-Sep-24 16:09:49 UTC

Azure Policy definition

[Preview]: All Internet traffic should be routed via your deployed Azure Firewall

Name [Preview]: All Internet traffic should be routed via your deployed Azure Firewall
Azure Portal
Id fc5e4038-4584-4632-8c85-c0448d374b2c
Version 3.0.0-preview
details on versioning
Category Network
Microsoft docs
Description Azure Security Center has identified that some of your subnets aren't protected with a next generation firewall. Protect your subnets from potential threats by restricting access to them with Azure Firewall or a supported next generation firewall
Mode All
Type BuiltIn
Preview True
Deprecated FALSE
Effect Default: AuditIfNotExists
Allowed: (AuditIfNotExists, Disabled)
Used RBAC Role none
History
Date/Time (UTC ymd) (i) Change type Change detail
2020-03-17 09:22:59 add fc5e4038-4584-4632-8c85-c0448d374b2c
Used in Initiatives
Initiative DisplayName Initiative Id Initiative Category State
[Deprecated]: Azure Security Benchmark v1 42a694ed-f65e-42b2-aa9e-8052e9740a92 Regulatory Compliance Deprecated
[Deprecated]: Azure Security Benchmark v2 bb522ac1-bc39-4957-b194-429bcd3bcb0b Regulatory Compliance Deprecated
[Preview]: CMMC Level 3 b5629c75-5c77-4422-87b9-2509e680f8de Regulatory Compliance Preview
[Preview]: NIST SP 800-53 Rev. 5 179d1daa-458f-4e47-8086-2a68d0d6c38f Regulatory Compliance Preview
Azure Security Benchmark 1f3afdf9-d0c9-4c3d-847f-89da613e70a8 Security Center GA
FedRAMP High d5264498-16f4-418a-b659-fa7ef418175f Regulatory Compliance GA
FedRAMP Moderate e95f5a9f-57ad-4d03-bb0b-b1d16db93693 Regulatory Compliance GA
NIST SP 800-53 Rev. 4 cf25b9c1-bd23-4eb6-bd2c-f4f3ac644a5f Regulatory Compliance GA
JSON
{
  "displayName": "[Preview]: All Internet traffic should be routed via your deployed Azure Firewall",
  "policyType": "BuiltIn",
  "mode": "All",
  "description": "Azure Security Center has identified that some of your subnets aren't protected with a next generation firewall. Protect your subnets from potential threats by restricting access to them with Azure Firewall or a supported next generation firewall",
  "metadata": {
    "version": "3.0.0-preview",
    "category": "Network",
    "preview": true
  },
  "parameters": {
    "effect": {
      "type": "String",
      "metadata": {
        "displayName": "Effect",
        "description": "Enable or disable All Internet traffic should be routed via your deployed Azure Firewall"
      },
      "allowedValues": [
        "AuditIfNotExists",
        "Disabled"
      ],
      "defaultValue": "AuditIfNotExists"
    }
  },
  "policyRule": {
    "if": {
      "allOf": [
        {
          "field": "type",
          "equals": "Microsoft.Network/virtualNetworks"
        },
        {
          "count": {
            "field": "Microsoft.Network/virtualNetworks/subnets[*]",
            "where": {
              "allOf": [
                {
                  "count": {
                    "field": "Microsoft.Network/virtualNetworks/subnets[*].ipConfigurations[*]",
                    "where": {
                      "value": "[empty(field('Microsoft.Network/virtualNetworks/subnets[*].ipConfigurations[*].id'))]",
                      "equals": false
                    }
                  },
                  "greaterOrEquals": 2
                },
                {
                  "field": "Microsoft.Network/virtualNetworks/subnets[*].routeTable",
                  "exists": false
                },
                {
                  "not": {
                    "anyOf": [
                      {
                        "field": "Microsoft.Network/virtualNetworks/subnets[*].name",
                        "equals": "AzureBastionSubnet"
                      },
                      {
                        "field": "Microsoft.Network/virtualNetworks/subnets[*].name",
                        "equals": "GatewaySubnet"
                      }
                    ]
                  }
                }
              ]
            }
          },
          "greater": 0
        }
      ]
    },
    "then": {
      "effect": "[parameters('effect')]",
      "details": {
        "type": "Microsoft.Network/azureFirewalls",
        "existenceCondition": {
          "count": {
            "field": "Microsoft.Network/azureFirewalls/ipConfigurations[*]",
            "where": {
              "field": "Microsoft.Network/azureFirewalls/ipConfigurations[*].subnet.id",
              "like": "[concat('/subscriptions/', subscription().subscriptionId, '/resourceGroups/*/providers/Microsoft.Network/virtualNetworks/', first(split(field('fullName'), '/')), '/subnets/AzureFirewallSubnet')]"
            }
          },
          "equals": 1
        }
      }
    }
  }
}