AI prompts without leaks: sanitize at the boundary.
Published October 2026 · 5 min read
Prompts are forever
PII in a prompt becomes PII in logs, traces, vendor systems, and possibly training data. Redaction after the fact is damage control, not design.
Sanitize before the model
Run declared identifier fields through a policy gateway: substitute with opaque tokens, and forward the sanitized prompt. The model never sees raw values.
Re-identify under policy
When a workflow genuinely needs the original — support, risk, compliance — resolve tokens behind role, purpose, and region checks, with every resolution audited.
Tokens alone do not prevent re-identification; governance around them does.
Declare, substitute, resolve under policy.
Identifiers are declared up front, substituted before the model, and resolved only where policy allows.
schema + JSON paths"] --> S["Substitute
opaque tokens"] S --> M["Model
never sees raw"] M --> R{"Resolve?"} R -- policy allow --> Y["Yes + audit"] R -- default --> N["No"]
Put this into practice.
We will map the playbook in this post to your own stack — live, in 30 minutes.
