Flamingo Raises $4.5M Seed Round

Skip to content

Updated: October 2026

Antivirus decides what looks bad and lets everything else run. Application control flips that: nothing runs unless you said it could. Here's how WDAC, now called App Control for Business, works, how it differs from AppLocker and Smart App Control, and how to roll it out without breaking half the apps on the fleet.

What Is WDAC?

WDAC stands for Windows Defender Application Control. Microsoft now calls it App Control for Business, and the old name still shows up in the wizard, in Intune and in half the forum threads you'll read. It's the same feature.

It changes one default. Normally Windows runs any code unless your antivirus flags it. With an App Control policy, code runs only if the policy allows it. That covers executables, DLLs and drivers, plus scripts, MSI installers and PowerShell, which drops into Constrained Language Mode for anything the policy doesn't trust.

Policies apply to the whole device, not to individual users. It runs on Windows Pro, Enterprise and Education editions. Microsoft is clear that it doesn't replace antivirus software, so you keep both.

WDAC vs AppLocker vs Smart App Control

Windows ships three ways to control what runs. They overlap, so it helps to see them side by side.

App Control for Business (WDAC)AppLockerSmart App Control
Built forManaged business fleetsOlder or shared-PC setupsHome users and very small offices
ScopeWhole devicePer user or groupWhole device
Covers drivers and kernelYesNoYes
New featuresStill getting themSecurity fixes onlyConsumer feature
Managed byIntune, PowerShell, ConfigMgrGroup Policy, IntuneThe user, in Windows Security

Microsoft's own guidance is direct: if you can use App Control, use it over AppLocker. AppLocker still gets security fixes but no new features. It stays useful for one job App Control can't do, which is different rules for different users on a shared PC. You can run both, with App Control as the strict base and AppLocker tightening per-user rules on top.

Smart App Control is App Control with a fixed, cloud-reputation policy. It's the consumer version, and our guide on turning off Smart App Control covers why managed fleets swap it out. The good news is that its policy ships as an example you can start from, so you're not building from nothing.

This r/sysadmin thread from September 2026 is the question every pilot hits: the policy works, but is the upkeep worth it?

The top replies agree it goes quiet eventually. It gets there once you stop chasing every DLL and split the rules into an enforced base policy plus a supplemental policy per line-of-business app.

Base and Supplemental Policies

Since Windows 10 version 1903, a device can run several App Control policies at once. That's what makes the feature manageable.

A base policy sets the rules. If a device has two base policies, a file has to pass both to run. A supplemental policy extends one base policy with extra allow rules, and a file runs if the base or any of its supplementals allows it. The base needs rule option 17, Allow Supplemental Policies, for that to work.

The practical pattern is one strict base policy for every device, then one supplemental per app or per team. When the finance app updates, you edit its supplemental and leave the base alone. The old limit of 32 active policies per device is gone on Windows security updates released on or after April 9, 2024, except on Windows 11 21H2.

The Rule Options and File Rules That Matter

A policy has two parts: rule options, which switch behaviours on, and file rules, which say what you trust.

Five rule options do most of the work. Option 3, Audit Mode, logs what would be blocked without blocking it. Option 13 trusts apps installed by a managed installer, such as the Intune Management Extension. Option 14 trusts files with a good reputation in Microsoft's Intelligent Security Graph. Option 16 applies policy updates without a reboot, and option 17 allows supplemental policies.

File rules decide how specific each allow is. Publisher and FilePublisher rules trust a vendor's signing certificate, so updates keep working without policy changes. Hash rules match one exact file and break on every update. FilePath rules only work for folders that just admins can write to, which is why they fail in AppData.

App Control checks rules in a fixed order. Explicit deny rules come first, then explicit allow rules, then the managed installer tag, and the reputation check comes last. Use publisher rules wherever you can, path rules for admin-only folders, and hashes as the last resort.

Build a Policy With the Wizard

You don't write policy XML by hand. The App Control Policy Wizard, a free Microsoft tool, builds base and supplemental policies, sets rule options and merges policies.

Start from a template rather than an empty policy. Microsoft ships example policies in %windir%\schemas\CodeIntegrity\ExamplePolicies, including the Smart App Control policy. If you start from that one, remove the option Enabled:Conditional Windows Lockdown Policy first, as Microsoft's docs note.

For a reference machine with your standard apps installed, PowerShell can scan and build the policy:

powershell
New-CIPolicy -MultiplePolicyFormat -ScanPath "C:\Program Files" -UserPEs -FilePath .\base.xml -Level FilePublisher -Fallback SignedVersion,Publisher,Hash
Set-RuleOption -FilePath .\base.xml -Option 3   # audit mode
Set-RuleOption -FilePath .\base.xml -Option 17  # allow supplemental policies

More cmdlets like these are in our PowerShell commands guide.

Roll Out in Audit Mode First

Every App Control deployment that goes smoothly starts in audit mode. Nothing gets blocked, and every would-be block gets logged.

The events live in two logs. Executables, DLLs and drivers go to Applications and Services Logs > Microsoft > Windows > CodeIntegrity > Operational. Scripts and MSI installers go to the AppLocker > MSI and Script log. The IDs to watch:

  • 3076: the file would have been blocked if the policy were enforced (audit mode).
  • 3077: the file was blocked (enforce mode).
  • 3089: the signature details for a blocked file, matched to its 3076 or 3077 by Correlation ActivityID.
  • 8028 and 8029: the same audit and enforce pair for scripts and MSIs.

To pull audit hits on one PC:

powershell
Get-WinEvent -LogName "Microsoft-Windows-CodeIntegrity/Operational" |
  Where-Object Id -eq 3076 | Select-Object TimeCreated, Message -First 20

At scale, Microsoft points to Advanced Hunting in Defender for Endpoint, which queries these events across the fleet. Collect a couple of weeks of audit data, turn the hits into supplemental rules, then remove option 3 on a pilot ring. You can run the audit policy side by side with the enforced one while you test changes.

This walkthrough shows the Intune side of building an App Control for Business policy and testing it:

Deploy With Intune or Group Policy

In Intune, App Control lives under Endpoint security > App Control for Business. The built-in controls give you three switches: trust Windows components and Store apps, trust apps with a good reputation, and trust apps from managed installers. Each combination maps to a fixed base policy ID, and you add supplemental policies as uploaded XML.

Set the Intune Management Extension as a managed installer early. Apps you deploy through Intune afterwards get tagged as trusted. Tagging isn't retroactive, so anything installed before that needs explicit rules. Our Intune review covers where this fits with the rest of Intune.

Group Policy can deploy App Control too, but only single-policy format policies for Windows Server 2016 and 2019. For multiple policies without Intune, Microsoft points to the ApplicationControl CSP through the MDM Bridge WMI Provider.

Removing a policy has one trap. Deleting it from Intune doesn't lift blocks until the next reboot, and a careless removal can stop a device from booting. Microsoft's fix is to push an allow-all version of the policy first, then delete it.

What Breaks, and How to Fix It

Four things cause most App Control tickets.

Unsigned line-of-business apps have no publisher to trust. Ask the vendor to sign them, or fall back to hash rules and accept updating them with every release.

Self-updating apps come back untagged. The managed installer tag only lands on files written by the installer or a process it started. An app that updates itself through its own updater needs a publisher rule.

Apps that install into AppData fight FilePath rules. App Control ignores path rules for folders standard users can write to, because that's an easy bypass. You can switch that check off with option 18, but you're accepting the risk.

Scripts are the fourth. PowerShell scripts that aren't trusted run in Constrained Language Mode instead of failing outright, so they break in odd ways. Sign your admin scripts, or allow them by publisher.

When Not to Use WDAC

App Control is worth it where apps are managed and users aren't local admins. It's a hard fit in a few cases.

Shared PCs that need different rules per user are an AppLocker job. Fleets where every user installs their own software will drown in audit events. And if nobody owns the policy, it rots: the first blocked update gets "fixed" by switching enforcement off.

Check your fleet before you start. OpenFrame can run the Get-WinEvent check above as a script across a client's devices and collect the 3076 counts in one place, which shows how noisy enforcement would be.

The Short Version

WDAC, now App Control for Business, lets only approved code run. Use it over AppLocker unless you need per-user rules, build one strict base policy plus supplementals, prefer publisher rules, and stay in audit mode until the 3076 events go quiet. If admin rights are the bigger gap on your fleet, read our guide to endpoint privilege management next.

Dmytro Koval

Dmytro Koval

Head of Product Engineering

Hi! My name is Dmytro, but everyone calls me Dima. I’m a Software Developer and together with the development team, I help bring Flamingo to life — putting it on its feet from a technical perspective. Originally from Lviv, Ukraine 🇺🇦, but currently based in Spain, where I’ve been enjoying the blend of great weather, culture, and nature. I’m passionate about the mountains and love traveling — exploring new places and cultures really inspires me. These experiences constantly recharge me and give me a fresh perspective, both personally and professionally.

Related Content

Blog Posts

Product Releases

Podcasts

Webinars

Case Studies

Events

Onboarding Guides

Frequently Asked Questions

WDAC

WDAC (Windows Defender Application Control) is a Windows feature that only lets approved code run. Instead of blocking what antivirus flags as bad, it blocks anything the policy doesn't allow, covering executables, DLLs, drivers, scripts and MSI installers. It applies to the whole device and runs on Windows Pro, Enterprise and Education.
Yes. App Control for Business is Microsoft's current name for Windows Defender Application Control. The old name still appears in the App Control Policy Wizard, in some Intune screens and in older documentation, but it's the same feature and the same policies.
WDAC applies to the whole device, covers drivers and the kernel, and still gets new features. AppLocker can set different rules per user or group but only receives security fixes. Microsoft recommends WDAC where you can use it and AppLocker for shared PCs that need per-user rules, and the two can run together.
Open Event Viewer and go to Applications and Services Logs, Microsoft, Windows, CodeIntegrity, Operational. Event 3077 is a block in enforce mode, 3076 is a would-be block in audit mode, and 3089 carries the file's signature details. Script and MSI blocks are events 8028 and 8029 in the AppLocker MSI and Script log.

MSP AI Agents

On a five-person desk, reported deployments show $78,000 to $130,000 in annual direct labor savings, roughly 30% fewer escalations, and 15% to 20% better SLA compliance. Broader MSP adoption data adds ticket handling time cut by 45% and five to 12 points of margin, all from reclaimed capacity rather than headcount cuts.
Yes. In production MSP shops today, 10% to 25% of tickets close before a human opens them. Thread alone has processed 173 million tickets across 750-plus MSP partners at 96% triage accuracy, handing back 490,000-plus technician hours. Agents own the low-risk, high-volume work (password resets, MFA enrollment, known installs, onboarding and offboarding) and flag anything that touches production data or needs judgment for a human to take.

About OpenFrame

OpenFrame isn't built to plug into your stack. It replaces it. Instead of duct-taping a dozen tools together (RMM, MDM, SIEM, patching, remote access, each its own login and bill), we bundle it into one unified platform: RMM, MDM, monitoring, automation, remote access, patch management, security monitoring, and ticketing, plus built-in AI copilots. So "does it integrate with X?" usually means: you won't need X anymore.
Most platforms give you one piece and expect you to bolt the rest on. OpenFrame unifies the whole stack in one place, with AI copilots built in. Fewer logins, fewer bills, less duct tape.
In the cloud, on US soil. Your data stays stateside.
Both. It's built for MSPs and MSSPs alike.