Azure Firewall Rule Evaluation Order
Exhibit
{
"properties": {
"type": "Microsoft.Network/azureFirewalls",
"sku": {
"name": "AZFW_VNet",
"tier": "Standard"
},
"applicationRuleCollections": [
{
"properties": {
"priority": 200,
"action": {
"type": "Allow"
},
"rules": [
{
"name": "AllowGoogle",
"protocols": [
{
"protocolType": "Https",
"port": 443
}
],
"sourceAddresses": ["10.0.0.0/8"],
"targetFqdns": ["*.google.com"]
}
]
}
}
],
"networkRuleCollections": [
{
"properties": {
"priority": 100,
"action": {
"type": "Deny"
},
"rules": [
{
"name": "DenyAll",
"protocols": ["Any"],
"sourceAddresses": ["*"],
"destinationAddresses": ["*"],
"destinationPorts": ["*"]
}
]
}
}
]
}
}Refer to the exhibit. You have an Azure Firewall policy with the shown rules. Traffic from 10.0.0.0/8 to www.google.com on HTTPS (443) is being blocked. What is the most likely reason?
Quick Answer
The answer is the network rule collection with priority 100, which denies all traffic, because Azure Firewall rule evaluation order processes network rules before application rules. Since the network rule at priority 100 explicitly denies all traffic, the application rule at priority 200 that allows *.google.com is never reached, causing the HTTPS traffic from 10.0.0.0/8 to www.google.com to be blocked. This scenario directly tests your understanding of Azure Firewall’s rule prioritization and evaluation hierarchy, a common topic on the Microsoft Azure Security Engineer Associate AZ-500 exam. A frequent trap is assuming application rules override network rules or that higher priority numbers are evaluated first, but in reality, lower priority numbers are evaluated sooner, and network rules always take precedence over application rules regardless of priority values. Remember the memory tip: “Networks first, then apps; lower numbers win the race.”
⚠ Common exam trap
Candidates often assume application rules are evaluated first or that a deny action in the application rule collection is the cause, but Azure Firewall evaluates network rules before application rules, so a low-priority network deny rule can override a higher-priority application allow rule.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
The network rule collection with priority 100 denies all traffic, and it is evaluated before the application rule collection.
Azure Firewall policy rule collections are evaluated in order of priority, with lower numbers evaluated first. The network rule collection with priority 100 denies all traffic, and since network rules are evaluated before application rules, this deny rule matches the HTTPS traffic from 10.0.0.0/8 to www.google.com before the application rule collection (which would allow it) is ever reached. Therefore, the traffic is blocked by the higher-priority network rule.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
The network rule collection with priority 100 denies all traffic, and it is evaluated before the application rule collection.
Why this is correct
Network rules have higher priority than application rules when the action is Deny.
- ✗
The application rule collection has an action of Deny.
Why it's wrong here
The action is Allow.
- ✗
The source address 10.0.0.0/8 is not included in the application rule.
Why it's wrong here
The source address matches 10.0.0.0/8.
- ✗
The application rule collection does not allow *.google.com.
Why it's wrong here
The application rule does allow *.google.com.
Go deeper
Related to this question
About these practice questions
One of 194 original AZ-500 practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. Learn why practice questions differ from exam dumps →
Same concept, more angles
2 more ways this is tested on AZ-500
These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.
Variation 1. Refer to the exhibit. You are reviewing an Azure Firewall policy rule. The rule is intended to allow traffic from the 10.0.0.0/16 network to *.contoso.com on HTTPS. However, the rule is not working as expected. What is the most likely issue?
medium- A.The source address range is too broad and should be more specific.
- B.The protocol should be Http, not Https.
- ✓ C.Application rules cannot have both targetFqdns and destinationAddresses; destinationAddresses should be removed.
- D.The rule should be a network rule, not an application rule.
Why C: Azure Firewall application rules cannot combine both targetFqdns and destinationAddresses in the same rule collection. When using targetFqdns, the destinationAddresses field must be empty; otherwise, the rule becomes invalid and traffic is not matched. Removing destinationAddresses allows the rule to properly inspect HTTPS traffic destined for *.contoso.com.
Variation 2. Refer to the exhibit. An Azure Firewall Policy snippet is shown. A security administrator deploys this policy to the Azure Firewall. However, they receive reports that some VMs can still access the internet. What is the most likely reason?
medium- A.The destination "Internet" is not a valid service tag; it should be "*" for all destinations.
- B.The action type "Deny" is misspelled; it should be "Deny".
- C.The sourceAddresses field uses "*" which is not supported for outbound rules.
- ✓ D.There is another rule collection with a higher priority that allows traffic.
Why D: In Azure Firewall Policy, rule collections within a rule collection group are evaluated in priority order (lower number = higher priority). The depicted snippet shows a rule with action 'Deny', but there may be another rule collection with a higher priority (e.g., priority 100 vs. 200) that contains an allow rule. That allow rule would be evaluated first, permitting the traffic before the deny rule is reached. Option A is incorrect because 'Internet' is a valid service tag in Azure Firewall; it is not required to use '*'. Option B is incorrect because the action 'Deny' is correctly spelled. Option C is incorrect because '*' is supported for sourceAddresses in outbound rules; it represents all source IPs.
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This AZ-500 practice question is part of Courseiva's free Microsoft certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the AZ-500 exam.