Defense control

Data Provenance

How to record, preserve and reconstruct where AI context came from and how it was derived: source and author identity, authoritative metadata outside payload text, transformation lineage, span attribution, derived artifacts and lineage-aware cleanup. Provenance is evidence, not a trust verdict.

By Norbert HofmannPublished: 2026-09-25Last reviewed: 2026-09-25Level: AdvancedAudience: Security Engineers, Developers, AI Engineers
Control family
Context and provenance
Control type
Evidence and lineage foundation consumed by other controls
Core question
Where did this content come from, who supplied it, and how was it transformed into what the model saw or the system stored
Level
Advanced
Table of contents

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

What provenance owns and what neighbouring controls own
ControlQuestion it answersRelation to provenance
Data provenanceWhere did this come from, who supplied it, and how was it derivedOwns representation, preservation, validation and reconstruction of lineage
Information flow controlMay data with these attributes move from this source to this sinkConsumes provenance and classification to decide flows
Agent authorizationMay this fully resolved action executeUses principal and resource attributes, some of which provenance supplies
Least privilegeHow much authority and reach exists at allIndependent; bounds what any action can touch
Human-in-the-loopDoes a selected consequential action need a human decisionCan show provenance to reviewers as authoritative metadata
Input / content inspectionWhat probabilistic signals does this content raiseMay use provenance as context; inspection results are separate
Spotlighting / data markingHow can a model be helped to distinguish untrusted dataMay 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.

01
RuleKnown provenance is not trusted content

Knowing exactly which customer uploaded a document says nothing about whether its text is benign.

02
RuleAuthenticated source is not instruction authority

An authenticated connector, user or agent may deliver content, but that content does not gain the right to instruct the system.

03
RuleInternal storage is not internal authorship

A record in an internal database, wiki or ticket system may have been written or edited by an external party.

04
RuleIntegrity is not truth, safety or permission

Content that is unchanged since capture can still be false, adversarial, unauthorized to share or without instruction authority.

05
RuleRelevance and freshness are separate properties

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.

Payload and provenance metadata through ingestion, derivation and use
Variable trustSource payload / content
SystemAuthoritative provenance envelope / source metadata
SystemIngestion / fetch / connector
Variable trustCaptured payload
SystemLineage record / transformation metadata
SystemParser / OCR / normalizer
Variable trustDerived artifact
SystemDerived-artifact lineage metadata
SystemIndex / cache / memory / tool / agent transport
Variable trustModel-visible representation
Variable trustModel proposal
SystemPolicy / action enforcement
Variable trustEffect

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.

Payload claim versus authoritative metadata
UntrustedDocument text claims source=trusted
SystemConnector records actual source and supplier
SystemClaim kept as payload, never copied into metadata

Provenance Versus Neighbouring Properties

Properties that are often confused with provenance
PropertyQuestionEstablished by
ProvenanceWhere did it come from and how was it derivedLineage records from system components
AuthenticityDid it really come from the claimed originAuthenticated channels, verified signatures under a trust model
IntegrityIs it unchanged since a known pointDigests or signatures compared against a known value
AuthorizationMay this principal access or act on itAccess and action policy
ClassificationHow sensitive is itData classification policy and labeling
Instruction authorityMay it direct system behaviourSystem design; external content has none
RelevanceDoes it fit the taskRetrieval and ranking
Truth and freshnessIs it accurate and currentDomain 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.

01
IdentityDelivering component

Tool, service, connector or agent that returned the content.

02
IdentityRequested and final resource

The resource that was asked for and the one actually resolved after redirects, aliases or lookups.

03
IdentityRecord and field contributor

Author or last editor of the record, and of individual fields where the source exposes it.

04
IdentityInitiating and ingestion principal

Who caused the fetch or upload, and under which identity the system ingested it.

05
IdentityMultiple authors

Forwarded, quoted or aggregated content may carry a set of contributors, not one.

Core Provenance Fields

Typical fields, collected where applicable
FieldPurposeCaveat
Source systemWhich system held the contentNot an authorship claim
Resource / record IDExact object referenceRecord both requested and resolved IDs
Version / revisionWhich state was capturedEnables stale-version detection
Tenant and ownerIsolation and accountability contextRequired input for tenant-aware flow policy
Initiating and ingestion principalWho caused captureDistinct from content author
Capture and source timestampsWhen it was captured and last changedEvidence fields, not trust signals
Transformation referencesWhich steps produced this artifactInclude component and version
Classification referenceLink to classification decisionClassification 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.

01
RuleDerived from authoritative inputs

Connector configuration, identity context, storage keys and system clocks, not document headers or front matter.

02
RulePayload claims stay payload

A document saying source=trusted or author=admin is content. It may be stored as content, never promoted to metadata.

03
RuleAttacker-editable fields flagged

Titles, descriptions, file names, EXIF and similar fields are supplied by content authors and must be marked as such.

04
RuleModel output never writes provenance

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.

Transformations that need lineage
  1. 01
    Fetch and redirect

    Requested and final URL or resource, response metadata.

  2. 02
    Parse and normalize

    Parser identity and version, extracted structure.

  3. 03
    OCR and vision extraction

    Extractor version and the region of the source image or page.

  4. 04
    Chunk and overlap

    Offsets into the parsed source, overlap with neighbouring chunks.

  5. 05
    Merge, summarize, translate

    Every input artifact and the producing model or component.

  6. 06
    Rerank and context selection

    Which candidates were selected into the context for a request.

  7. 07
    Embed and index

    Source chunk, embedding model and version, index identity.

  8. 08
    Tool adaptation and agent handoff

    Adapter or agent, and the inputs it forwarded.

  9. 09
    Memory 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

What cryptographic mechanisms can and cannot show
MechanismCan supportDoes not establish
Hash / digestEquality and integrity against a known valueAuthorship, truth, safety, permission
SignatureOrigin and integrity, under a verified key and trust modelBenign intent, instruction authority, accuracy
AttestationClaims about a producing process, under a verified trust modelSemantic 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.

Which control did what
ControlRole in the scenario
Data provenanceEnabled attribution, reconstruction and enumeration of derivatives and requests
Information flow controlDecided whether customer-authored content could reach the external send sink
Agent authorizationDecided whether the concrete send could execute at all
Cleanup processesActually 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.

Provenance measures with explicit denominators
MeasureNumeratorDenominator
Source attribution coverageModel-visible artifacts with a recorded sourceModel-visible artifacts sampled
Authoritative-metadata coverageArtifacts whose provenance fields came from authoritative inputsArtifacts sampled
Transformation-lineage completenessDerived artifacts with every transformation step recordedDerived artifacts sampled
Model-visible span attribution coverageContext spans traceable to a source spanContext spans sampled
Derived-artifact lineage coverageSummaries, caches, index and memory entries linked to inputsSuch artifacts sampled
Orphan derived-artifact rateDerived artifacts with no resolvable inputDerived artifacts sampled
Provenance integrity-validation coverageProtected lineage records that pass validation checksLineage records where an integrity mechanism exists
Tenant / principal attribution coverageArtifacts with tenant and principal recordedArtifacts in multi-tenant or principal-scoped paths
Stale-version attribution coverageStale derivatives correctly identified as based on an old versionStale derivatives seeded in tests
Lineage reconstruction success rateRequests or incidents fully reconstructedRequests or incidents sampled
Quarantine reachability coverageSeeded derivatives enumerated from their sourceDerivatives seeded in tests
Cleanup verification coverageEnumerated derivatives confirmed removed or invalidatedDerivatives enumerated for cleanup
Unknown-provenance rateArtifacts recorded as unknown provenanceArtifacts sampled
Fail-safe handling coverageUnknown-provenance artifacts handled as the consuming policy requiresUnknown-provenance artifacts in policy-protected paths
Metadata overhead and latencyStorage and time added, reported as distributionsRequests sampled
Benign task utilityBenign tasks completed successfullyBenign 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
Common failure patterns
  1. 01
    Metadata from payload

    Front matter or headers copied into provenance fields.

  2. 02
    Provenance as trust

    Known source treated as permission to instruct.

  3. 03
    Collapsed labels

    A summary keeps only one input's label.

  4. 04
    Orphan derivatives

    Cache or memory entries with no link to inputs.

  5. 05
    Hash 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

  1. provenance, CSRC GlossaryNIST CSRC · StandardReviewed 2026-09-25
  2. PROV-DM: The PROV Data ModelW3C · StandardReviewed 2026-09-25
  3. Provenance Working Group publicationsW3C · StandardReviewed 2026-09-25
  4. Input, Context, and Retrieval HygieneMicrosoft Learn · GuidanceReviewed 2026-09-25
  5. Agent Safety, Microsoft Agent FrameworkMicrosoft Learn · Technical documentationReviewed 2026-09-25