Coming SoonCBAC (Context-Based Access Control)

CBAC (Context-Based Access Control)

Turn a plain-English sensitivity policy into an enforceable control that reads context, not just pattern-matches text.

Coming soon

Functionality and interfaces are subject to change before general availability.

Overview

CBAC turns a plain-English sensitivity policy into an enforceable control. Give it a policy and it reads any document, splits it into a clean copy with sensitive parts removed, and produces a per-policy extract of what was taken out.

CBAC is built for context-dependent sensitivity. $120,000 is only a salary in context, and 15% is only a raise in context. A reasoning model makes that call, not a regex.

Policy lifecycle

Define Policy

Accepts a sensitivity statement in plain English (for example, "HR salary and compensation details are sensitive") along with sample documents, and registers it as a draft policy for compilation.

Compile Policy

Decomposes the statement into distinct categories, such as base salary, raise percentage, and bonus. For each category, it generates:

  • The forms the sensitive value takes (includes)
  • The safe look-alikes to leave alone (excludes)
  • The context conditions that decide when an ambiguous value counts

This is where a dollar figure next to "pay" becomes sensitive, while the same figure next to "Q3 revenue" does not.

Preview Split

Runs the compiled policy on the author's sample text and returns the clean copy and the extract side by side, so over-removal and under-removal are visible before deploy.

Score Enforceability

Combines validity, accuracy, consistency, and coverage into a Weak / Moderate / Strong rating per category. A weak score blocks deployment.

Refine Policy

For each miss or false positive, points at the responsible field and suggests a targeted edit, for example "revenue figures got removed, add to excludes" or "add the verbal form 'bumped up to'." Refinement re-scores the policy and repeats until it reaches Strong.

Finalize & Assign

Saves the policy and makes it available for admins to assign to users and workflows.

Remove Policy

Deletes a policy and detaches it from any user or workflow it was assigned to, so it no longer applies at runtime.

Runtime and auditing

Identify & Split (runtime)

Takes document text and the set of policies to apply, and returns the clean copy plus per-policy extracts with span attribution. The clean copy is the input minus the union of all matched spans. A span matched by multiple policies is removed once but appears in each matching policy's extract. Identify & Split fails closed on any error and never returns unprocessed text as clean.

Audit Policy Effectiveness

Tracks how well a policy performs over the history of input text it has processed. An LLM acts as judge, scoring per run whether sensitive spans were correctly caught and safe look-alikes were left alone, then rolls those judgments up into precision, recall, and residual-leak trends per category. Audit Policy Effectiveness surfaces which inputs and phrasings the policy missed, so authors can feed them back into includes and excludes and watch effectiveness improve over time.