Never trust a prompt, a model, or a tool call by default.
Every request is authenticated, authorized, and evaluated against policy before anything reaches a model - or leaves one.
Why now
Classic zero-trust secured users, devices, and networks. AI adds a new actor those controls were never designed for: a model that reads regulated data, calls tools, and acts on someone's behalf - often with no human in the loop. The blast radius shifts from “who can log in” to “what a single prompt can reach.”
Zero-trust for AI applies the same discipline one layer deeper. Every prompt, retrieval, and tool call is treated as untrusted until policy says otherwise - evaluated on its own merits, every time, with a record of the decision.
Principles
Nothing is allowed until a policy explicitly permits it. The safe state is the closed state.
Every prompt, retrieval, and tool call carries a verified identity, purpose, and jurisdiction.
Decisions are re-evaluated on every request - trust is never cached, only earned again.
In DataStrict
Zero-trust only holds if something refuses the request when policy says no. In DataStrict that something is the Enforcement Fabric - an inline layer that intercepts every prompt, retrieval, tool call, and model output, and adjudicates it before it proceeds. There is no path around it, so deny-by-default is the literal default rather than a guideline.
Each request carries a verified identity, purpose, and jurisdiction through Access Identity, and every decision is written to the immutable Ledger as evidence. See the full request lifecycle on the control layer page.
What it closes
Most AI incidents are not break-ins. They are legitimate access used in an unintended way: a model with a broad service account reading a table it never needed, an agent chaining tool calls no one reviewed, a prompt that smuggles data past a boundary that only checked the login. Zero-trust closes these by shrinking the attack surface to exactly what each request is entitled to - and nothing more.
A model or agent runs under one broad identity with read on everything. Zero-trust scopes each request to its purpose, so nothing carries more reach than the task in front of it.
An agent chains tool calls and data reads that no human vetted. Each one is authorized against policy at runtime, so an action outside the declared scope fails closed.
A request approved once keeps its access as context drifts. Continuous verification re-evaluates every call, so a grant expires with the purpose that justified it.
How it holds
Two ideas do the work. The first is least privilege: a request is scoped to the smallest set of data and actions its declared purpose needs, so a compromised prompt or over-eager agent simply has less it can touch. The second is continuous verification: trust is never cached. A decision that held a minute ago is re-made now, against the current identity, purpose, and policy - because the context that made it safe may have changed.
Both only mean something if a runtime actually applies them. That is policy enforcement: each request is adjudicated inline and either allowed, redacted, blocked, or escalated - never waved through on the assumption it is fine. It is the same discipline that underpins defense in depth, applied one layer deeper, where the AI actually reaches your data.
Talk to our team about deploying DataStrict across your enterprise stack.