Every application control product identifies files the same way
The file identity model is common to all of them. What separates one product from another is the operating model around it, which is what evaluations skip.
Comparisons of application control software tend to open with how each one recognises a file, and that is close to the least useful place to start. On Windows the answer is largely the same everywhere.
If you are evaluating application control tools, the questions below are the ones worth putting to a vendor, and almost none of them are about rule types.
Every serious product has to answer one question. May this code execute? To answer it, they all reach for the same small set of signals.
The signals are common property
Cryptographic hash. Publisher or signing certificate. File path. File attributes such as product name, original file name and version. Package identity. Whether a trusted installer put the file there. Reputation or cloud trust. The user, group, device or context involved.
That list barely changes between vendors, and it barely changes between a third party product and the engine already built into Windows. Choosing App Control rule levels goes through what each signal costs you in practice, and those costs are properties of the signal rather than of anybody's product.
So if two products both match on publisher, both fall back to hash, and both understand a managed installer claim, the identity model is not the thing separating them.
What actually separates them
Seven things, none of which appear in a feature grid.
Where enforcement happens, and how early. In the kernel as code is about to run, or in user mode through a service that something could stop. This is the difference between a security boundary and a management control, and it decides what you can claim to an assessor. Agent based application control, or the engine already in Windows covers that axis and what it costs in licensing and lock-in.
How hard it is to turn off. A local administrator, a piece of malware with privilege, or an unhappy user. If any of those can stop the control, its value in an incident is not what the datasheet says.
How policy is authored. Whether a rule is something an engineer hand edits in XML, or something a person requests, an owner approves and a system records. That difference decides whether the policy still makes sense in a year.
How exceptions are governed. Every estate has them. The question is whether an exception carries an owner, a reason, a scope and an expiry, or whether it is a line somebody added during an outage and nobody has looked at since.
What the telemetry actually tells you. A stream of block events is not the same as knowing which application was affected, who it belongs to and whether anybody still needs it. One is data and the other is a decision you can make.
How safely you can reach enforcement. Going from audit to enforcement is where these programmes stall. What matters is whether you can see the impact of a change before you commit it, and reverse it quickly when the estate disagrees with you. Audit mode to enforcement covers what audit does and does not warn you about.
Whether anything ever gets removed. Allow rules accumulate. Without evidence that a rule is unused, nobody will ever delete it, and the trusted set only grows. A policy that only grows is a policy slowly returning to permitting everything.
Why evaluations get this backwards
Rule types demo well. You can show them in an hour, put them in a table, and score them.
The seven above cannot be shown in an hour. They surface at month four, when the pilot has three hundred exception requests, no owner for half of them, and a security team that cannot say whether enforcement is safe. By then the choice has been made.
That is not an argument against evaluating carefully. It is an argument for evaluating the right thing.
What to test instead
Run the operating model rather than the feature list.
Take a real application, one that is awkward, and put it through the whole cycle. Request, approval, deployment, and then removal when it is retired. Note who had to be involved and how much of it was somebody's afternoon.
Break something on purpose. Block an application that matters and see how quickly the reason can be established and undone. That is the day that decides whether the programme survives.
Then ask the year later questions. What evidence exists that a rule was approved and by whom. What tells you a rule is no longer needed. Who is accountable for something nobody remembers agreeing to. Application control is not an endpoint team project covers why those answers involve more than one team.
Where this leaves the decision
The identity model is commodity. The enforcement engine is a real and separate decision, and on Windows it is one you have already paid for.
What is left is the operating model, and that is where application control programmes actually succeed or stall. It is also the part nobody ships in the box.
That is the part PoliEze is for. The platform covers how.
Questions about this
How do application control products identify files?
If the identity model is the same, what actually differs?
Why do product comparisons focus on rule types then?
Does that mean the enforcement engine does not matter?
What should an evaluation actually test?
Related reading
The missing control plane for App Control for Business
Windows already enforces. What no vendor ships is the layer that decides what to trust, records who approved it, and takes it away again when it is no longer needed.
Policy options that mean the opposite of what they read
An App Control policy option is true because it is present. Several are written as double negatives, so the secure setting is often the one nobody set.
Managed installer is not a convenience flag. It is a trust channel
Designating one trusts everything it writes, and everything its child processes write. That makes the choice a security decision rather than an operational one.