Security Objective
Data provenance is the record of where content came from and how it became what a model saw or a system stored. It captures the source system, the resource and version, the tenant and principal involved, the supplier and author where known, and each transformation between the original artifact and the model-visible or persisted result.
Its security value is traceability. With complete lineage, a team can explain which source shaped a model proposal, find every summary, cache entry, index record or memory derived from a compromised source, and reconstruct the evidence behind a flow or authorization decision. Other controls consume that evidence: information flow control uses provenance and classification to decide flows, and agent authorization uses principal and resource attributes to decide execution.
Ownership Boundaries
| Control | Question it answers | Relation to provenance |
|---|---|---|
| Data provenance | Where did this come from, who supplied it, and how was it derived | Owns representation, preservation, validation and reconstruction of lineage |
| Information flow control | May data with these attributes move from this source to this sink | Consumes provenance and classification to decide flows |
| Agent authorization | May this fully resolved action execute | Uses principal and resource attributes, some of which provenance supplies |
| Least privilege | How much authority and reach exists at all | Independent; bounds what any action can touch |
| Human-in-the-loop | Does a selected consequential action need a human decision | Can show provenance to reviewers as authoritative metadata |
| Input / content inspection | What probabilistic signals does this content raise | May use provenance as context; inspection results are separate |
| Spotlighting / data marking | How can a model be helped to distinguish untrusted data | May be fed by provenance; marking is not provenance |
Provenance does not decide whether a source is trusted, whether a user may access content, whether data may flow, or whether an action may execute. If a system uses the provenance record itself as an allow or deny switch, that decision still belongs to a policy, and that policy should be named and owned. Provenance feeds spotlighting / data marking, which decides how content is presented to the model.
Provenance Is Not Trust
The most common misuse of provenance is to treat a known origin as a trust verdict. Five distinctions prevent that.
Knowing exactly which customer uploaded a document says nothing about whether its text is benign.
An authenticated connector, user or agent may deliver content, but that content does not gain the right to instruct the system.
A record in an internal database, wiki or ticket system may have been written or edited by an external party.
Content that is unchanged since capture can still be false, adversarial, unauthorized to share or without instruction authority.
A recent or highly ranked source is not more trustworthy because of its rank or timestamp.
Trust Model
Payload and provenance metadata are separate security objects. Human-readable payload never becomes system metadata, and a system component that faithfully processes content never upgrades that content's trust. The flow below alternates between the two planes so the distinction stays visible.
Read the flow as two parallel planes. Payload nodes (source content, captured payload, derived artifacts, model-visible text, proposals, effects) stay variable however many trusted components touch them. Metadata nodes (envelope, lineage records, derived-artifact lineage) are produced by system components from authoritative inputs such as connector configuration, identity services and storage keys, not parsed from payload text. A parser is a system component, but its output is a derived payload with the same untrusted character as its input.
Provenance Versus Neighbouring Properties
| Property | Question | Established by |
|---|---|---|
| Provenance | Where did it come from and how was it derived | Lineage records from system components |
| Authenticity | Did it really come from the claimed origin | Authenticated channels, verified signatures under a trust model |
| Integrity | Is it unchanged since a known point | Digests or signatures compared against a known value |
| Authorization | May this principal access or act on it | Access and action policy |
| Classification | How sensitive is it | Data classification policy and labeling |
| Instruction authority | May it direct system behaviour | System design; external content has none |
| Relevance | Does it fit the task | Retrieval and ranking |
| Truth and freshness | Is it accurate and current | Domain validation; timestamps only as evidence |
Source Identity Versus Author Identity
The component that delivered content is often not the party that wrote it. A search tool returns pages written by strangers. A ticketing API returns fields edited by customers. A mail connector returns forwarded messages quoting several people.
Tool, service, connector or agent that returned the content.
The resource that was asked for and the one actually resolved after redirects, aliases or lookups.
Author or last editor of the record, and of individual fields where the source exposes it.
Who caused the fetch or upload, and under which identity the system ingested it.
Forwarded, quoted or aggregated content may carry a set of contributors, not one.
Core Provenance Fields
| Field | Purpose | Caveat |
|---|---|---|
| Source system | Which system held the content | Not an authorship claim |
| Resource / record ID | Exact object reference | Record both requested and resolved IDs |
| Version / revision | Which state was captured | Enables stale-version detection |
| Tenant and owner | Isolation and accountability context | Required input for tenant-aware flow policy |
| Initiating and ingestion principal | Who caused capture | Distinct from content author |
| Capture and source timestamps | When it was captured and last changed | Evidence fields, not trust signals |
| Transformation references | Which steps produced this artifact | Include component and version |
| Classification reference | Link to classification decision | Classification is owned by its own policy |
Authoritative Metadata Plane
Provenance used for security decisions must live outside attacker-editable and model-authored payload text. A structured envelope carries metadata alongside the payload; the payload never populates the envelope.
Connector configuration, identity context, storage keys and system clocks, not document headers or front matter.
A document saying source=trusted or author=admin is content. It may be stored as content, never promoted to metadata.
Titles, descriptions, file names, EXIF and similar fields are supplied by content authors and must be marked as such.
A model summary that names a source is a claim, not a lineage record.
Transformation Lineage
Each step between original artifact and model-visible text should leave a lineage record naming the input, the output, the component and its version.
- 01Fetch and redirect
Requested and final URL or resource, response metadata.
- 02Parse and normalize
Parser identity and version, extracted structure.
- 03OCR and vision extraction
Extractor version and the region of the source image or page.
- 04Chunk and overlap
Offsets into the parsed source, overlap with neighbouring chunks.
- 05Merge, summarize, translate
Every input artifact and the producing model or component.
- 06Rerank and context selection
Which candidates were selected into the context for a request.
- 07Embed and index
Source chunk, embedding model and version, index identity.
- 08Tool adaptation and agent handoff
Adapter or agent, and the inputs it forwarded.
- 09Memory and cache write
Writer identity, the inputs that shaped the stored item.
One-to-Many and Many-to-One Derivations
Lineage is a graph, not a chain. One document yields many chunks; many chunks yield one summary; one summary may be cached, embedded and written to memory. Records should link each derived artifact to all its inputs and each input to all its derivatives, so that queries work in both directions: from a model-visible span back to sources, and from a source forward to everything derived from it.
Model-Visible Span Attribution
The most useful record for incident work is the mapping from each span or field in the assembled context back to its artifact, transformation chain and source span. When a model proposal is questioned, investigators can then see exactly which retrieved text, tool field or memory entry was present, and where it came from.
Hashes, Signatures and Attestation
| Mechanism | Can support | Does not establish |
|---|---|---|
| Hash / digest | Equality and integrity against a known value | Authorship, truth, safety, permission |
| Signature | Origin and integrity, under a verified key and trust model | Benign intent, instruction authority, accuracy |
| Attestation | Claims about a producing process, under a verified trust model | Semantic safety of the produced content |
A signed document from a verified partner can still contain adversarial text. A digest that matches the captured version proves only that the bytes are the same. Use these mechanisms to protect lineage records and to detect change; never let them substitute for flow or action policy.
Tool and Agent Provenance
For tool results, the tool identity is the delivering component, not the author of the payload. Preserve the final resource, record and field contributors where the tool exposes them.
Across agents, the sender agent's identity is not enough. Preserve the sources the sender consumed and the transformations it applied, so that a receiving agent's context can be traced past the handoff. There is no transitive trust: content forwarded by a trusted agent keeps the provenance and character of its original sources.
Persistent and Derived Artifacts
Summaries, caches, index records, memory entries and generated records outlive the request that created them, which is why persistent injection is hard to clean up without lineage. Each should keep links to its inputs, the producing component and version, and the time of creation.
Embeddings and index entries are derived artifacts with lineage to source, chunk, index and embedding model version. A model normally sees the retrieved text, not the vector, and vectorization does not sanitize semantic content; the retrieved chunk carries the same character as its source.
Mixed-Source Derivations
An artifact built from several sources keeps the full contributor set and each input's classification reference. It is never silently collapsed to one label, and certainly not to the most trusted input's label.
How labels are combined for a given decision is not a provenance rule. The consuming policy, for example information flow control, decides how classifications join for a particular source and sink. Provenance's job is to make the full set available.
Missing and Ambiguous Provenance
When origin or lineage is missing, record it as unknown. Never reconstruct provenance from model output or attacker-editable fields, and never fill gaps with a default source.
Whether unknown provenance blocks a flow or action is a downstream policy decision. Where a protected policy requires fail-safe handling, that handling lives in information flow control or authorization, not in the provenance record itself.
Lineage Record Integrity
Lineage records are only useful if they cannot be quietly rewritten. Append-only or immutable storage is one optional implementation pattern; access-controlled records with change audit, or integrity-protected logs, are others. No storage technology is universally required.
Immutability preserves records. It does not create semantic trust in the payload those records describe.
Versioning, Quarantine and Revocation
When a source changes, is quarantined or has its access revoked, lineage lets teams enumerate the derived artifacts and affected requests. Provenance itself does not delete or invalidate those derivatives. A separate, owned process must act on the enumeration: invalidate caches, rebuild indexes, retract memory entries and re-evaluate stored summaries.
Telemetry and Correlation
Request, task and session correlation IDs connect provenance to runtime events: which request assembled which context, which proposal followed, which policy decision and effect resulted. Correlation IDs should be generated by the system, carried in metadata, and never taken from payload.
Privacy, Minimization and Retention
Lineage metadata can itself be sensitive: principal IDs, tenant names, file paths and source spans. Collect enough to reconstruct security decisions and support cleanup, avoid uncontrolled duplication of payload inside lineage records, apply the same access control as the data described, and set retention that balances forensic needs against minimization.
Incident Response and Lineage-Aware Cleanup
Lineage-aware response steps
- Identify the suspicious source artifact and version
- Trace forward to every derived chunk, summary, cache, index and memory entry
- Enumerate affected requests and proposals via correlation IDs
- Quarantine or invalidate derivatives through the owning processes
- Rebuild indexes and caches from clean inputs
- Verify cleanup by re-running the lineage query
- Record the incident lineage for later review
Worked Synthetic Scenario
All names and values are synthetic. A support workflow for tenant "Tenant-A" ingests a customer-submitted document, "contract-draft.pdf" version 3, uploaded by contributor "customer-417". A parser at version 2.4 normalizes it; the result is split into twelve chunks. Chunk 7 contains instruction-like text addressed to an assistant. Later, a summarizer produces a case summary from chunks 5 to 8; the summary is cached, embedded and written to case memory. A model proposal to send a document externally cites the summary.
Review flags the proposal. Investigators start from the model-visible span and follow lineage: span, then summary, then chunk 7, then parser 2.4, then contract-draft.pdf version 3, then contributor customer-417 in Tenant-A. Forward lineage from the document lists the twelve chunks, the summary, its cache entry, its index record and the memory entry. Correlation IDs enumerate the requests that used any of them. Owning processes quarantine the document, invalidate the cache, remove the index record, retract the memory entry and mark the requests for review.
| Control | Role in the scenario |
|---|---|
| Data provenance | Enabled attribution, reconstruction and enumeration of derivatives and requests |
| Information flow control | Decided whether customer-authored content could reach the external send sink |
| Agent authorization | Decided whether the concrete send could execute at all |
| Cleanup processes | Actually quarantined and invalidated the artifacts provenance found |
Testing and Metrics
Measure each property on its own with an explicit denominator. There is no composite score; benign task utility is reported separately.
To practice judging provenance records as evidence, try the Data Provenance lab.
| Measure | Numerator | Denominator |
|---|---|---|
| Source attribution coverage | Model-visible artifacts with a recorded source | Model-visible artifacts sampled |
| Authoritative-metadata coverage | Artifacts whose provenance fields came from authoritative inputs | Artifacts sampled |
| Transformation-lineage completeness | Derived artifacts with every transformation step recorded | Derived artifacts sampled |
| Model-visible span attribution coverage | Context spans traceable to a source span | Context spans sampled |
| Derived-artifact lineage coverage | Summaries, caches, index and memory entries linked to inputs | Such artifacts sampled |
| Orphan derived-artifact rate | Derived artifacts with no resolvable input | Derived artifacts sampled |
| Provenance integrity-validation coverage | Protected lineage records that pass validation checks | Lineage records where an integrity mechanism exists |
| Tenant / principal attribution coverage | Artifacts with tenant and principal recorded | Artifacts in multi-tenant or principal-scoped paths |
| Stale-version attribution coverage | Stale derivatives correctly identified as based on an old version | Stale derivatives seeded in tests |
| Lineage reconstruction success rate | Requests or incidents fully reconstructed | Requests or incidents sampled |
| Quarantine reachability coverage | Seeded derivatives enumerated from their source | Derivatives seeded in tests |
| Cleanup verification coverage | Enumerated derivatives confirmed removed or invalidated | Derivatives enumerated for cleanup |
| Unknown-provenance rate | Artifacts recorded as unknown provenance | Artifacts sampled |
| Fail-safe handling coverage | Unknown-provenance artifacts handled as the consuming policy requires | Unknown-provenance artifacts in policy-protected paths |
| Metadata overhead and latency | Storage and time added, reported as distributions | Requests sampled |
| Benign task utility | Benign tasks completed successfully | Benign tasks attempted, measured separately |
Implementation Checklist
Before relying on provenance
- Provenance lives in a structured envelope outside payload text
- Envelope fields come from authoritative inputs only
- Delivering component, resource and author recorded separately
- Every transformation leaves a lineage record with component version
- Lineage queries work backward and forward
- Mixed sources keep the full contributor set
- Unknown provenance recorded as unknown
- Lineage records protected against silent rewrite
- Cleanup processes consume lineage enumerations
- Lineage access control and retention defined
- 01Metadata from payload
Front matter or headers copied into provenance fields.
- 02Provenance as trust
Known source treated as permission to instruct.
- 03Collapsed labels
A summary keeps only one input's label.
- 04Orphan derivatives
Cache or memory entries with no link to inputs.
- 05Hash as safety
A matching digest treated as proof of benign content.
Standards and Sources
Standards and guidance referenced
- NIST
- CSRC glossary: provenance (general terminology)
- W3C
- PROV-DM: The PROV Data Model (general provenance vocabulary)
- Microsoft
- Zero Trust: Input, Context, and Retrieval Hygiene (vendor guidance), Agent Framework: Agent Safety (vendor framework guidance)
On source use: the NIST glossary defines provenance as the chronology of the origin, development, ownership, location and changes to a system or component and associated data; it is general terminology, not AI-specific implementation guidance. W3C PROV-DM supplies a general vocabulary of entities, activities, agents and derivations; this site does not claim to implement formal W3C PROV. Microsoft's retrieval hygiene guidance states that secure retrieval requires source provenance, permission-aware indexing and validation at every read and write, and recommends retaining read and write lineage; the Agent Safety page describes trust boundaries for externally influenced data. Both are vendor guidance.
Frequently Asked Questions
Does known provenance make content trusted?
No. It tells you where content came from. Trust in content, and whether it may instruct the system, are separate decisions.
Is content from an authenticated user or connector authoritative?
No. Authentication identifies the supplier. It gives the supplied content no instruction authority.
Does a matching hash prove content is safe?
No. It shows the bytes equal a known value. Signatures can support origin under a verified key model, but neither establishes truth or benign intent.
Can a document declare its own source?
It can claim one, but that claim is content. Provenance comes from authoritative system inputs, never from payload text.
What should happen when provenance is missing?
Record it as unknown. Whether unknown blocks a flow is decided by the consuming policy, such as information flow control.
Which label does a summary of several sources get?
Provenance keeps the full contributor set and classifications. The consuming policy decides how they combine for a given decision.
Does the model see embeddings?
Normally not; it sees retrieved text. Embeddings are derived artifacts with lineage, and vectorization does not sanitize content.
Does provenance clean up a poisoned source?
It finds affected derivatives and requests. Separate owned processes must invalidate and rebuild them.
Is immutable lineage storage required?
It is one optional pattern. What matters is that records cannot be silently rewritten; immutability still does not make payload trusted.
How does this relate to agent authorization?
Agent authorization decides whether an action executes. Provenance supplies evidence about principals and resources but makes no execution decision.
References
- provenance, CSRC GlossaryNIST CSRC · StandardReviewed 2026-09-25
- PROV-DM: The PROV Data ModelW3C · StandardReviewed 2026-09-25
- Provenance Working Group publicationsW3C · StandardReviewed 2026-09-25
- Input, Context, and Retrieval HygieneMicrosoft Learn · GuidanceReviewed 2026-09-25
- Agent Safety, Microsoft Agent FrameworkMicrosoft Learn · Technical documentationReviewed 2026-09-25