SC-500 Network Security: NSGs, Virtual Network Manager, VPN, Private Link and Azure Firewall
Azure network security on SC-500 means controlling which traffic can reach your workloads and PaaS resources, and through which path: network security groups (NSGs) and application security groups filter traffic at the subnet and NIC, Azure Virtual Network Manager enforces central security admin rules above those NSGs, Azure Firewall and a secured Virtual WAN hub inspect traffic, VPN Gateway and Microsoft Entra Private Access secure remote connectivity, and private endpoints and Azure Private Link service keep PaaS and partner traffic on private IP addresses. This lesson covers rule evaluation order for NSGs, admin rules and Azure Firewall policies, routing intent, point-to-site and site-to-site VPN security, Private Access app design, private endpoint DNS and network policies, Private Link service settings, and the Network Watcher diagnostics that prove which rule decides a flow. Storage account firewalls and Azure SQL network rules are taught in their own lessons.
On this page10 sections
- Network security groups and application security groups: how rules are evaluated
- Azure Virtual Network Manager: central security admin rules
- Securing an Azure Virtual WAN hub with routing intent
- Securing VPN connections: point-to-site authentication and site-to-site IPsec policy
- Microsoft Entra Private Access
- Private endpoints versus service endpoints
- Private endpoint network policies: NSGs and route tables
- Azure Private Link service: publishing your own service privately
- Azure Firewall: SKUs, rule processing, DNS proxy and TLS inspection
- Evaluating effective security rules with Network Watcher
- Predict the outcome of NSG rules, including default rules, priority order and subnet plus NIC NSGs, and segment tiers with application security groups
- Choose between Allow, Always Allow and Deny security admin rules in Azure Virtual Network Manager, and deploy configurations to network groups and regions
- Secure a Virtual WAN hub with Azure Firewall and routing intent, and secure point-to-site and site-to-site VPN connections
- Design Microsoft Entra Private Access with connectors, Quick Access and per-app enterprise apps under Conditional Access
- Configure private endpoints with correct DNS and network policies, and publish a service with Azure Private Link service
- Select an Azure Firewall SKU and configure rule collections, DNS proxy and TLS inspection, and use Network Watcher to evaluate effective security rules
Network security groups and application security groups: how rules are evaluated
A network security group (NSG) is a stateful, priority-ordered list of allow and deny rules that Azure applies to traffic entering or leaving a subnet or a network interface (NIC). Each rule has a priority from 100 to 4096; Azure evaluates rules from the lowest number upward and stops at the first rule that matches the flow's source, destination, port and protocol. A later rule never gets a say, even if it is more specific or has the opposite action, so an exception must sit at a lower number than the broad rule it carves out of.
Because NSGs are stateful, you write rules only for the direction a connection starts in: an allowed inbound HTTPS session gets its return traffic automatically, and an outbound rule on the server does nothing for inbound reachability.
Default rules
Every NSG carries default rules that you can't delete but can override with lower-numbered custom rules:
| Direction | Default rule | Priority | Effect |
|---|---|---|---|
| Inbound | AllowVnetInBound | 65000 | Allows the VirtualNetwork service tag, which covers the virtual network's address space, peered virtual networks and on-premises ranges connected through a gateway |
| Inbound | AllowAzureLoadBalancerInBound | 65001 | Allows the AzureLoadBalancer tag, the source of load balancer health probes |
| Inbound | DenyAllInBound | 65500 | Denies everything else, including the internet |
| Outbound | AllowVnetOutBound / AllowInternetOutBound / DenyAllOutBound | 65000 / 65001 / 65500 | Allows traffic to the virtual network and the internet, denies the rest |
Two consequences matter in practice. First, a brand-new NSG with no custom rules still lets peered and connected networks in through AllowVnetInBound, because the VirtualNetwork tag includes peered address spaces. (A peering's Allow forwarded traffic setting is a different thing: it covers traffic that originates outside the peered network, such as flows forwarded through an appliance there.) Second, a custom "deny all" rule placed above the defaults also hides AllowAzureLoadBalancerInBound, so health probes fail and backends are marked unhealthy; re-allow the AzureLoadBalancer tag at a lower number than your deny.
Subnet NSG plus NIC NSG
You can associate one NSG with a subnet and another with a NIC in it. Both are gates on the same path: inbound traffic is evaluated by the subnet NSG and then by the NIC NSG, outbound traffic by the NIC NSG and then by the subnet NSG, and the flow passes only if both allow it. A NIC NSG holding only default rules blocks internet traffic that the subnet NSG allows, so either add the allow to the NIC NSG or remove the redundant association.
Application security groups
An application security group (ASG) is a named group of NICs that you use as the source or destination of an NSG rule instead of IP addresses. You write "web tier to database tier on TCP 1433" once, then add each new VM's NIC to the right ASG; the rule follows automatically, with no rule edits and no IP lists. ASGs are not Azure resource tags, which NSG rules can't reference. All NICs in an ASG must be in the same virtual network, and a rule that uses ASGs as both source and destination needs them in the same virtual network. Across a peering, describe the remote side with its address prefix and keep the ASG for the local side; the broad VirtualNetwork tag would admit far more than the one tier.
Azure Virtual Network Manager: central security admin rules
Azure Virtual Network Manager (AVNM) lets a central team enforce network access policy across many virtual networks, subscriptions and management groups with security admin rules, which Azure evaluates before any NSG. Application teams keep managing their own NSGs; the admin rules sit above them and decide whether the NSGs are even consulted.
| Admin rule action | What happens to matching traffic | Can an NSG change the outcome? |
|---|---|---|
| Deny | Dropped immediately | No: NSGs never see it |
| Allow | Passed on to NSG evaluation | Yes: an NSG can still deny it |
| Always Allow | Allowed, and NSG evaluation is skipped | No: NSGs can't block it |
Admin rules have their own priorities (1 to 4096, lowest first), evaluated before NSGs, and the first matching admin rule wins. To exempt a jump-host range from an organisation-wide Deny on RDP, the exception must have a lower priority number than the Deny, and it must be Always Allow if team NSGs must not be able to block it. Use Deny for "must never be reachable, whatever a team opens" policies such as inbound RDP or SMB from anywhere.
Network groups, configurations and deployment
- Network groups define which virtual networks a configuration targets. Static membership lists networks by hand; dynamic membership uses an Azure Policy condition (for example a tag such as Environment=Production or a name pattern), so new matching networks join automatically.
- A security admin configuration holds one or more rule collections; each collection contains rules and is associated with network groups.
- Nothing takes effect until you deploy the configuration to the target regions. Creating the configuration and its rules changes no traffic.
- Deployments follow a goal state model: what you commit to a region replaces what was there. Only one security admin configuration from a network manager can be deployed to a region at a time, so deploying a second configuration on its own removes the first. To enforce several teams' rule sets in one region, put them in the same configuration as separate rule collections and redeploy it. (Connectivity configurations, by contrast, can be deployed side by side.)
- Once a configuration is deployed, a virtual network that joins a targeted group in that region picks it up without another deployment.
Connectivity configurations (hub-and-spoke or mesh peering) are a separate configuration type; they connect networks and enforce no traffic rules.
Securing an Azure Virtual WAN hub with routing intent
You secure Azure Virtual WAN by deploying Azure Firewall (or a supported security appliance) inside the virtual hub and configuring routing intent, which tells the hub to send traffic through that firewall. Routing intent has two independent routing policies:
| Routing policy | Traffic it steers to the next hop |
|---|---|
| Internet Traffic | Internet-bound traffic: the hub advertises a default route (0.0.0.0/0) to its connections, pointing at the hub firewall |
| Private Traffic | Private address ranges between virtual networks and branches (VPN, ExpressRoute, point-to-site), including traffic to other hubs |
- Configure only the policy you need. If internet egress must stay on an on-premises proxy, use only Private Traffic so that branch-to-spoke and spoke-to-spoke traffic is inspected without a new default route.
- Inter-hub inspection needs routing intent on every hub involved. Hand-built custom route tables with static routes to the firewall are the older method and can't be combined with routing intent, so remove them and configure routing intent on each hub to get symmetric inspection.
- Internet egress is hub-local. A default route learned in one hub doesn't propagate to another hub, so spokes on a hub without a firewall never learn the other hub's 0.0.0.0/0. Each hub that needs inspected internet egress needs its own firewall and Internet Traffic policy.
- Each hub connection has a Propagate default route setting. Turning it off for one connection keeps that virtual network from learning the hub's default route, so it can keep using its own approved egress while every other spoke uses the hub firewall.
NSGs on spoke subnets still filter traffic, but they don't change where the hub routes it; inspection in a Virtual WAN is a routing decision.
Securing VPN connections: point-to-site authentication and site-to-site IPsec policy
VPN Gateway security comes down to two choices: how point-to-site (P2S) users authenticate, and which IPsec/IKE cryptography a site-to-site (S2S) tunnel uses.
Point-to-site authentication
| Authentication type | How users prove identity | Key constraints |
|---|---|---|
| Microsoft Entra ID | Entra sign-in through the Azure VPN Client, so Conditional Access and MFA apply to each connection | OpenVPN tunnel type only; route-based gateway; not available on the Basic SKU |
| Azure certificate | A client certificate that chains to a root certificate uploaded to the gateway | Revoke one user by adding the client certificate's thumbprint to the revoked list; removing the root cuts off everyone whose certificate chains to it |
| RADIUS | Credentials checked by a RADIUS server (for example NPS against Active Directory) | MFA possible through the NPS extension, but Entra Conditional Access policies aren't evaluated |
Disabling a user in Entra ID doesn't stop a certificate-authenticated tunnel, because the gateway never asks Entra ID; the certificate itself must be revoked. Tunnel types IKEv2 and SSTP can't carry Entra ID authentication; OpenVPN works on Windows, macOS and Linux clients.
Site-to-site cryptography
By default a gateway offers a set of standard IKE/IPsec proposals. To meet a compliance requirement such as AES256, SHA256 and a specific Diffie-Hellman group, apply a custom IPsec/IKE policy to the connection resource. The policy is per connection, so other tunnels on the same gateway keep their settings; the local network gateway only describes the remote site's public IP and address prefixes. A route-based gateway can also connect to a branch device that supports only policy-based tunnels: apply a custom IPsec/IKE policy and enable policy-based traffic selectors on the connection, and configure the branch device with a traffic selector for each combination of on-premises and Azure prefixes. Recreating the gateway as policy-based would break its other connections.
Microsoft Entra Private Access
Microsoft Entra Private Access is the Zero Trust network access part of Microsoft's Global Secure Access service: it gives users identity-checked access to private apps on-premises or in Azure without a VPN. Three components make it work:
- The Global Secure Access client on the user's device captures traffic for configured private resources and sends it to the service.
- The Microsoft Entra private network connector, installed on a Windows Server that can reach the apps, carries traffic from the service to them over outbound connections only; connectors are organised in connector groups.
- The Private Access traffic forwarding profile must be enabled, and users or groups assigned to it, for the client to acquire private traffic.
Quick Access versus per-app access
| Quick Access | Per-app (Global Secure Access enterprise apps) | |
|---|---|---|
| Purpose | One app that publishes broad segments (FQDNs, IP ranges, ports), typically to replace a VPN quickly | One enterprise app per application or group of servers |
| Conditional Access | One set of policies for everything in Quick Access | Policies per app, so each resource can demand different controls (compliant device, phishing-resistant MFA) |
| Assignment | Users assigned to Quick Access | Users or groups assigned to each app |
When a per-app segment overlaps a Quick Access segment, traffic that matches the more specific per-app segment is handled by that enterprise app, so users who aren't assigned to it lose access to that destination even though Quick Access still lists the wider range.
For name resolution of internal short names, enable private DNS on Quick Access and add the internal DNS suffixes (for example ad.contoso.com); the client then sends queries for those suffixes to be resolved by the DNS servers the connectors use. The lookup happens on the connector side of the network, which is why it works for a device that is nowhere near Azure.
Microsoft Entra application proxy publishes web apps over HTTP/HTTPS; Private Access handles any TCP/UDP app such as SMB, RDP or SSH.
Private endpoints versus service endpoints
A private endpoint is a read-only network interface with a private IP address from your subnet that connects to one specific Private Link resource (for example one storage account's blob service or one Azure SQL logical server). A service endpoint instead extends a subnet's identity to a whole Azure service over the Microsoft backbone, while the service keeps its public IP address.
| Private endpoint | Service endpoint | |
|---|---|---|
| Destination address | Private IP in your virtual network | The service's public endpoint |
| Scope | One resource (and one sub-resource) | Every resource of that service type, in any tenant, unless further restricted |
| Reachable from on-premises (VPN/ExpressRoute) and peered networks | Yes | No: only from the enabled subnet |
| Works with public network access disabled | Yes | No: it relies on the public endpoint's virtual network rules |
| Exfiltration control | Built in: the endpoint maps to one resource | Needs a service endpoint policy, which covers Azure Storage only |
| Routing | A /32 route for the endpoint IP | Service routes that are more specific than a default route, so service traffic bypasses a 0.0.0.0/0 route to a firewall |
For the strongest isolation, use private endpoints, disable public network access on the resource, and don't enable service endpoints on the client subnet. A storage account needs a separate private endpoint for each sub-resource it serves (blob, file, queue, table, dfs, web).
DNS for private endpoints
Clients keep using the resource's normal name (account.blob.core.windows.net); public DNS answers with a CNAME into a privatelink zone. The private endpoint is used only if that name resolves to its private IP, so:
- Create the matching
privatelinkprivate DNS zone (for blob,privatelink.blob.core.windows.net) and link it to every virtual network whose clients use Azure-provided DNS. Without it, clients resolve the public IP, and with public access disabled they get 403 or connection errors. Don't create a zone for the public name itself; it would answer for every account in that namespace. - On-premises DNS servers can't query Azure DNS (168.63.129.16 is reachable only from inside Azure). Deploy Azure DNS Private Resolver with an inbound endpoint in the virtual network linked to the zones, and add a conditional forwarder for the public zone (for example
blob.core.windows.net) on the on-premises servers that points at the inbound endpoint's IP. Outbound endpoints and forwarding rulesets solve the opposite direction: Azure resolving on-premises names.
Private endpoint network policies: NSGs and route tables
Private endpoint network policies decide whether NSGs and user-defined routes (UDRs) apply to private endpoints in a subnet, and they are disabled by default. Until you enable them, an NSG on the subnet doesn't filter traffic to the private endpoints, even though it filters every other resource in that subnet. You enable support per subnet for network security groups, for route tables, or for both; you can't associate an NSG with the endpoint's own read-only NIC.
Forcing traffic to a private endpoint through Azure Firewall takes two things:
- Enable network policies for route tables on the subnet that hosts the private endpoints.
- On the client subnet's route table, add a UDR whose prefix is equal to or more specific than the virtual network's address space (for example the private endpoint subnet's prefix) with the firewall as next hop.
The reason is longest-prefix-match routing. A 0.0.0.0/0 route, or a /8 that is broader than the virtual network's own /16, loses to the virtual network's system route and never catches traffic to an endpoint in the same network. Route tables on the private endpoint subnet itself don't steer the clients' traffic. Microsoft recommends that the firewall SNAT traffic bound for private endpoints so return traffic is symmetric.
The portal doesn't display effective routes or effective security rules for a private endpoint's NIC, so validate these paths from the client side.
Azure Private Link service: publishing your own service privately
Azure Private Link service lets a provider publish its own TCP/UDP service so that consumers reach it through private endpoints in their own virtual networks, across subscriptions and Microsoft Entra tenants, with no peering, no overlapping-address problems and no public IPs. The generally available design places the service behind the frontend IP configuration of an internal Standard Load Balancer (Microsoft has also previewed a variant that targets private IP addresses directly). Consumer traffic is source-NATed to NAT IP addresses taken from a subnet in the provider's network, which is why backends see a few provider-side addresses rather than consumer IPs.
| Setting | Controls |
|---|---|
| Visibility | Who can discover the service and request a connection: role-based access control only, restricted to listed subscriptions, or anyone with the alias |
| Auto-approval | Which subscriptions' connection requests are approved without manual action; it's separate from visibility, and listed subscriptions should also be visible |
| Alias | A unique name the provider shares with consumers so they can request a connection without seeing the provider's resource ID |
| TCP Proxy v2 | Adds a PROXY protocol v2 header carrying the source IP and the consuming private endpoint's LinkID; the backend application must be configured to parse it. It's the Private Link setting that reveals the consumer's identity, because HTTP headers and load-balancer options don't carry it across the NAT |
Requests that aren't auto-approved arrive Pending until the provider approves or rejects them, and only Approved connections pass traffic.
Azure Firewall: SKUs, rule processing, DNS proxy and TLS inspection
Azure Firewall is a managed, stateful network firewall, configured through a firewall policy, that filters traffic at layers 3 to 7 and comes in three SKUs with increasing capability.
| Capability | Basic | Standard | Premium |
|---|---|---|---|
| Network, application (FQDN) and DNAT rules | Yes | Yes | Yes |
| Threat intelligence filtering | Alert only | Alert, or Alert and deny | Alert, or Alert and deny |
| DNS proxy and FQDNs in network rules | No | Yes | Yes |
| Web categories | No | Yes (by domain) | Yes (full URL with TLS inspection) |
| TLS inspection, IDPS, URL path filtering | No | No | Yes |
Basic targets small environments with lower throughput; choose Standard when you must block known-malicious addresses or need DNS proxy, and Premium only when traffic must be decrypted, matched against IDPS signatures or filtered by URL path.
How rules are processed
- Threat intelligence is evaluated before rules. Then rule types run in a fixed order: DNAT, then network, then application rules.
- Inside a policy, rule collection groups are processed by priority (lowest number first) and collections within them by their priority, but the rule-type order still applies across all of them. A matching network rule is terminating: once a broad network rule allows TCP 443, application rules are never consulted, whatever their priority numbers. To filter HTTPS by FQDN, allow it with application rules instead of a broad network rule.
- With a parent (base) policy, the parent's rule collection groups always take precedence over the child's, regardless of priority numbers. An exception to a central deny therefore has to go into the parent policy, ahead of the deny.
DNS proxy and FQDN filtering in network rules
Network rules can use FQDNs only when the firewall resolves names the same way as the clients. Enable DNS proxy in the policy's DNS settings (the firewall then listens on port 53 and forwards to Azure DNS or your custom servers), and set the virtual network's DNS servers to the firewall's private IP. Application rules don't need this, because the firewall reads the FQDN from the HTTP Host header or the TLS SNI.
TLS inspection (Premium)
TLS inspection decrypts traffic, inspects it and re-encrypts it with certificates that the firewall issues from an intermediate CA certificate you provide. Store it as a password-less PFX in Azure Key Vault and give the firewall policy a user-assigned managed identity with Get and List permissions on secrets (the PFX is read as a secret). The firewall mints each site's certificate itself from that intermediate CA, and clients must trust the issuing CA chain.
Inbound web traffic
Azure Firewall application rules and URL filtering are for outbound and east-west traffic. To inspect inbound HTTP requests for attacks such as SQL injection, put Application Gateway with a WAF policy (Prevention mode blocks, Detection only logs) in front of the app. Firewall IDPS signatures aren't a substitute for a WAF.
Evaluating effective security rules with Network Watcher
Azure Network Watcher diagnostics show which rules and routes actually apply to a flow, so you can prove why traffic is allowed or blocked instead of reading NSGs one by one. Pick the tool by the question you're asking:
| Tool | Answers | Notes |
|---|---|---|
| IP flow verify | Is this exact flow (5-tuple) allowed or denied for this VM, and by which rule? Evaluates NSG rules and Virtual Network Manager security admin rules | TCP and UDP, for a VM's NIC |
| NSG diagnostics | Same verdict for a simulated flow, with every NSG and rule evaluated on the path | Also covers ICMP, virtual machine scale set instances and other targets IP flow verify doesn't |
| Effective security rules | The complete merged rule set on a NIC: subnet and NIC NSGs, defaults and any Virtual Network Manager security admin rules, with service tags and ASGs expanded | Downloadable for audit and baseline comparison; not shown for private endpoint NICs |
| Next hop | Where a packet to a destination goes: next hop type and whether a system or user route chose it | Routing, not filtering |
| Connection troubleshoot / Connection monitor | Can A reach B now / over time, with latency and hop details | End-to-end reachability rather than a rule verdict |
| Virtual network flow logs | Record of flows that actually happened | Successor to NSG flow logs, which Microsoft is retiring |
Next hop tells you which route won, and the winner follows one rule: Azure picks the route with the longest prefix match, and when two routes have the same prefix, a user-defined route beats a BGP-learned route, which beats a system route. So when traffic takes an unexpected path, read the next hop type and route type in the output, then fix the route table associated with the source subnet: a user-defined route for an equal or more specific prefix overrides whatever route it currently uses. NSGs only allow or deny; they never change where a packet goes. Gateway route propagation is a setting on the route table associated with a client subnet and controls whether that subnet learns the gateway's BGP and VPN routes; it isn't configured on the GatewaySubnet.
Tip. Expect Microsoft-style scenarios: an organisation, its network layout and a requirement with a deciding constraint such as least privilege, minimal administrative effort, a block or allowance that local network owners can't override, no effect on unrelated traffic, or no extra infrastructure to run. Items ask which rule, setting, SKU or tool to use, why a flow is still allowed or blocked (a rule higher in priority, a second NSG, a configuration never deployed, a missing DNS zone, disabled private endpoint network policies, a terminating network rule), and which two settings together make something work (multi-response). Near-twins to keep apart: Allow vs Always Allow admin rules, static vs dynamic network groups, Internet vs Private Traffic routing policies, Entra ID vs certificate vs RADIUS VPN authentication, Quick Access vs per-app access, private vs service endpoints, visibility vs auto-approval, Basic vs Standard vs Premium firewall, Azure Firewall vs WAF, and IP flow verify vs NSG diagnostics vs effective security rules. Storage firewalls and Azure SQL network rules are tested in their own topics.
- NSGs stop at the first matching rule by priority; specificity and action don't matter, and subnet and NIC NSGs must both allow a flow.
- AllowVnetInBound admits peered and gateway-connected networks; a custom deny-all also hides the AzureLoadBalancer probe allowance.
- ASGs replace IP lists for tier-based rules but stop at the virtual network boundary; use the remote prefix across a peering.
- Virtual Network Manager admin rules run before NSGs: Deny can't be overridden, Allow defers to NSGs, Always Allow skips them, and nothing applies until you deploy to the region.
- Virtual WAN inspection is routing intent: Private Traffic for branch and VNet flows, Internet Traffic for 0.0.0.0/0, on every hub that needs it.
- Point-to-site with Conditional Access means Entra ID authentication over OpenVPN on a non-Basic, route-based gateway; revoke one certificate by thumbprint.
- Private endpoints only work if DNS resolves the privatelink name to the private IP; on-premises needs a Private Resolver inbound endpoint and a conditional forwarder.
- Private endpoint network policies are off by default: enable them for NSGs or route tables, and use a UDR no broader than the VNet space to force traffic through a firewall.
- Azure Firewall processes DNAT, then network, then application rules; parent policy rules beat child rules, FQDN network rules need DNS proxy, and TLS inspection, IDPS and URL filtering are Premium.
- IP flow verify gives one TCP/UDP flow's verdict, NSG diagnostics adds ICMP and scale sets, effective security rules lists a NIC's whole rule set, and next hop explains routing.
Frequently asked questions
What is the difference between an Allow and an Always Allow security admin rule in Azure Virtual Network Manager?
Both are evaluated before network security groups. An Allow admin rule lets matching traffic continue to NSG evaluation, so an application team's NSG can still deny it. An Always Allow admin rule allows the traffic and skips NSG evaluation entirely, so no NSG can block it. Use Always Allow for traffic such as central monitoring or management that must never be blocked by local rules, and Deny for traffic that must never be allowed.
Why does an NSG rule not block traffic to a private endpoint?
Private endpoint network policies are disabled on subnets by default, so NSG rules on the subnet aren't applied to private endpoints in it, even though they apply to other resources there. Enable network policies for network security groups on the subnet that hosts the private endpoints; you can't attach an NSG to the private endpoint's read-only network interface instead.
Why do clients still resolve a public IP address after I create a private endpoint?
A private endpoint is used only when the resource's name resolves to the endpoint's private IP. Create the matching privatelink private DNS zone, such as privatelink.blob.core.windows.net, and link it to each virtual network whose clients use Azure-provided DNS. For on-premises clients, forward the public zone to an Azure DNS Private Resolver inbound endpoint in a linked virtual network.
When should I use a private endpoint instead of a service endpoint?
Use a private endpoint when the resource must be reached at a private IP address, from on-premises or peered networks, with public network access disabled, or when you must prevent data exfiltration to other accounts, because a private endpoint maps to one specific resource. Service endpoints keep the service's public endpoint, work only from the enabled subnet and cover every resource of the service type unless a service endpoint policy, available for Azure Storage, restricts them.
Which Azure Firewall SKU do I need for TLS inspection?
TLS inspection requires Azure Firewall Premium, which also adds IDPS and URL path filtering. The firewall needs an intermediate CA certificate stored as a password-less PFX in Azure Key Vault and a user-assigned managed identity with Get and List permissions on secrets in that vault. Standard adds threat intelligence blocking, DNS proxy and web categories; Basic only alerts on threat intelligence.
Why don't my Azure Firewall application rules block a site when a network rule allows HTTPS?
Azure Firewall processes network rules before application rules, and a matching network rule ends processing. If a network rule already allows TCP 443 to any destination, application rules for that traffic are never evaluated, whatever their priority numbers. Allow HTTPS with application rules for the required FQDNs instead of a broad network rule.
How do I require MFA for point-to-site VPN users in Azure?
Configure the point-to-site settings with Microsoft Entra ID authentication and the OpenVPN tunnel type, then target the Azure VPN application with a Conditional Access policy that requires MFA. The gateway must be route-based and can't use the Basic SKU. RADIUS with the NPS extension can add MFA, but it doesn't evaluate Entra Conditional Access policies.
Which Network Watcher tool shows which security rule blocks a flow?
IP flow verify tests a single TCP or UDP flow for a virtual machine's network interface and names the allowing or denying rule, whether it comes from an NSG or a Virtual Network Manager security admin rule. NSG diagnostics gives the same verdict for more cases, including ICMP and virtual machine scale set instances. Effective security rules lists every rule in force on a network interface rather than testing one flow, and next hop explains routing rather than filtering.
Source
This lesson covers the "Secure storage, databases, and networking" domain of the official SC-500 exam guide. Vendors revise their guides — check the source for the current version.
- Microsoft SC-500 study guide — Microsoft Learn
Sign up free to mark lessons complete, bookmark topics and track your exam readiness.