Skip to content

Class: VerificationSummaryAttestation

An attestation predicate (predicateType "https://slsa.dev/verification_summary/v1") issued by a trusted verifier stating that one or more artifacts were evaluated against a policy and the SLSA level at which they were verified. Allows consumers to trust the verifier's determination without needing access to all underlying provenance.

URI: slsa:VerificationSummaryAttestation

 classDiagram
    class VerificationSummaryAttestation
    click VerificationSummaryAttestation href "../VerificationSummaryAttestation/"
      Statement <|-- VerificationSummaryAttestation
        click Statement href "../Statement/"

      VerificationSummaryAttestation : _type

      VerificationSummaryAttestation : attestationStorageUri

      VerificationSummaryAttestation : dependencyLevels

      VerificationSummaryAttestation : inputAttestations





        VerificationSummaryAttestation --> "*" ResourceDescriptor : inputAttestations
        click ResourceDescriptor href "../ResourceDescriptor/"



      VerificationSummaryAttestation : policy





        VerificationSummaryAttestation --> "1" ResourceDescriptor : policy
        click ResourceDescriptor href "../ResourceDescriptor/"



      VerificationSummaryAttestation : predicate

      VerificationSummaryAttestation : predicateType

      VerificationSummaryAttestation : resourceUri

      VerificationSummaryAttestation : signingTool

      VerificationSummaryAttestation : sigstoreLogEntry

      VerificationSummaryAttestation : slsaVersion

      VerificationSummaryAttestation : subject





        VerificationSummaryAttestation --> "1..*" ResourceDescriptor : subject
        click ResourceDescriptor href "../ResourceDescriptor/"



      VerificationSummaryAttestation : timeVerified

      VerificationSummaryAttestation : verificationResult





        VerificationSummaryAttestation --> "1" VerificationResultEnum : verificationResult
        click VerificationResultEnum href "../VerificationResultEnum/"



      VerificationSummaryAttestation : verifiedLevels





        VerificationSummaryAttestation --> "1..*" SlsaResultEnum : verifiedLevels
        click SlsaResultEnum href "../SlsaResultEnum/"



      VerificationSummaryAttestation : verifier





        VerificationSummaryAttestation --> "1" Verifier : verifier
        click Verifier href "../Verifier/"



Inheritance

Slots

Name Cardinality and Range Description Inheritance
verifier 1
Verifier
Identifies the entity that performed the verification direct
timeVerified 0..1
String
Timestamp (RFC 3339) indicating when the verification occurred direct
resourceUri 1
String
URI identifying the resource associated with the artifact being verified direct
policy 1
ResourceDescriptor
The policy the subject was verified against direct
inputAttestations *
ResourceDescriptor
All attestations consulted during verification direct
verificationResult 1
VerificationResultEnum
Whether the artifact passed or failed policy verification direct
verifiedLevels 1..*
SlsaResultEnum
The highest verified SLSA level for each applicable track (not including tran... direct
dependencyLevels 0..1
String
Map from SlsaResult to count of transitive dependencies verified at that leve... direct
slsaVersion 0..1
String
Version of the SLSA specification used during verification, in MAJOR direct
_type 1
String
Always "https://in-toto Statement
subject 1..*
ResourceDescriptor
The set of software artifacts to which a predicate applies Statement
predicateType 1
String
URI identifying the schema and semantics of the predicate field Statement
predicate 0..1
String
The attestation payload — an arbitrary JSON object whose schema is fully dete... Statement
attestationStorageUri 0..1
String
URI indicating where this signed attestation is publicly stored or retrievabl... Statement
signingTool 0..1
String
URI or name of the tool used to cryptographically sign the artifact or attest... Statement
sigstoreLogEntry 0..1
String
URI of the Rekor transparency log entry recording this attestation or artifac... Statement

In Subsets

See Also

Notes

  • Verification complexity (Tamanna et al., 2024, LF.1): The slsa-verifier tool was highlighted by practitioners for complexity and redundancy. No standardized attestation storage model existed as of SLSA v1.0; inconsistencies between package manager registries and stored files can undermine verification accuracy. Downstream systems also lack clear guidance on how to consume and communicate attestation data to other stakeholders.

Identifier and Mapping Information

Schema Source

  • from schema: https://w3id.org/lmodel/slsa

Mappings

Mapping Type Mapped Value
self slsa:VerificationSummaryAttestation
native slsa:VerificationSummaryAttestation

LinkML Source

Direct

name: VerificationSummaryAttestation
description: An attestation predicate (predicateType "https://slsa.dev/verification_summary/v1")
  issued by a trusted verifier stating that one or more artifacts were evaluated against
  a policy and the SLSA level at which they were verified. Allows consumers to trust
  the verifier's determination without needing access to all underlying provenance.
notes:
- 'Verification complexity (Tamanna et al., 2024, LF.1): The slsa-verifier tool was
  highlighted by practitioners for complexity and redundancy. No standardized attestation
  storage model existed as of SLSA v1.0; inconsistencies between package manager registries
  and stored files can undermine verification accuracy. Downstream systems also lack
  clear guidance on how to consume and communicate attestation data to other stakeholders.'
in_subset:
- slsa_build_track
- slsa_source_track
from_schema: https://w3id.org/lmodel/slsa
see_also:
- https://openssf.org/projects/guac/
is_a: Statement
slots:
- verifier
- timeVerified
- resourceUri
- policy
- inputAttestations
- verificationResult
- verifiedLevels
- dependencyLevels
- slsaVersion

Induced

name: VerificationSummaryAttestation
description: An attestation predicate (predicateType "https://slsa.dev/verification_summary/v1")
  issued by a trusted verifier stating that one or more artifacts were evaluated against
  a policy and the SLSA level at which they were verified. Allows consumers to trust
  the verifier's determination without needing access to all underlying provenance.
notes:
- 'Verification complexity (Tamanna et al., 2024, LF.1): The slsa-verifier tool was
  highlighted by practitioners for complexity and redundancy. No standardized attestation
  storage model existed as of SLSA v1.0; inconsistencies between package manager registries
  and stored files can undermine verification accuracy. Downstream systems also lack
  clear guidance on how to consume and communicate attestation data to other stakeholders.'
in_subset:
- slsa_build_track
- slsa_source_track
from_schema: https://w3id.org/lmodel/slsa
see_also:
- https://openssf.org/projects/guac/
is_a: Statement
attributes:
  verifier:
    name: verifier
    description: Identifies the entity that performed the verification.
    in_subset:
    - slsa_build_track
    - slsa_source_track
    from_schema: https://w3id.org/lmodel/slsa
    rank: 1000
    alias: verifier
    owner: VerificationSummaryAttestation
    domain_of:
    - SlsaDocument
    - VerificationSummaryAttestation
    range: Verifier
    required: true
    inlined: true
  timeVerified:
    name: timeVerified
    description: Timestamp (RFC 3339) indicating when the verification occurred.
    in_subset:
    - slsa_build_track
    - slsa_source_track
    from_schema: https://w3id.org/lmodel/slsa
    rank: 1000
    alias: timeVerified
    owner: VerificationSummaryAttestation
    domain_of:
    - VerificationSummaryAttestation
    range: string
  resourceUri:
    name: resourceUri
    description: URI identifying the resource associated with the artifact being verified.
      SHOULD be the URI from which the consumer fetches the artifact.
    in_subset:
    - slsa_build_track
    - slsa_source_track
    from_schema: https://w3id.org/lmodel/slsa
    rank: 1000
    alias: resourceUri
    owner: VerificationSummaryAttestation
    domain_of:
    - VerificationSummaryAttestation
    range: string
    required: true
  policy:
    name: policy
    description: The policy the subject was verified against. MUST contain a URI;
      SHOULD contain a digest identifying the exact policy version.
    notes:
    - 'SSF Policy Engine layer (CNCF TAG-Security): In the SSF reference architecture,
      the policy consumed here is enforced at admission time by a Policy Engine such
      as OPA/Gatekeeper or Kyverno. These engines consume Verification Summary Attestations
      (VSAs) to verify that an artifact meets the required SLSA level before allowing
      deployment. Best practice is to reference a versioned, content-addressed policy
      document so verifiers can reconstruct the exact policy evaluated.'
    in_subset:
    - slsa_build_track
    - slsa_source_track
    from_schema: https://w3id.org/lmodel/slsa
    rank: 1000
    alias: policy
    owner: VerificationSummaryAttestation
    domain_of:
    - VerificationSummaryAttestation
    range: ResourceDescriptor
    required: true
    inlined: true
  inputAttestations:
    name: inputAttestations
    description: All attestations consulted during verification. If non-empty, MUST
      be complete — it MUST list every attestation used. Each entry MUST contain a
      digest; SHOULD contain a URI.
    in_subset:
    - slsa_build_track
    - slsa_source_track
    from_schema: https://w3id.org/lmodel/slsa
    rank: 1000
    alias: inputAttestations
    owner: VerificationSummaryAttestation
    domain_of:
    - VerificationSummaryAttestation
    range: ResourceDescriptor
    multivalued: true
    inlined: true
    inlined_as_list: true
  verificationResult:
    name: verificationResult
    description: Whether the artifact passed or failed policy verification.
    in_subset:
    - slsa_build_track
    - slsa_source_track
    from_schema: https://w3id.org/lmodel/slsa
    rank: 1000
    alias: verificationResult
    owner: VerificationSummaryAttestation
    domain_of:
    - SlsaDocument
    - VerificationSummaryAttestation
    range: VerificationResultEnum
    required: true
  verifiedLevels:
    name: verifiedLevels
    description: The highest verified SLSA level for each applicable track (not including
      transitive dependencies). At most one level per track. Implies all levels below
      it within the same track.
    in_subset:
    - slsa_build_track
    - slsa_source_track
    from_schema: https://w3id.org/lmodel/slsa
    rank: 1000
    alias: verifiedLevels
    owner: VerificationSummaryAttestation
    domain_of:
    - SlsaDocument
    - VerificationSummaryAttestation
    range: SlsaResultEnum
    required: true
    multivalued: true
  dependencyLevels:
    name: dependencyLevels
    description: Map from SlsaResult to count of transitive dependencies verified
      at that level (JSON object string). Allows policy engines to enforce minimum
      levels on the full dependency graph.
    in_subset:
    - slsa_build_track
    - slsa_source_track
    from_schema: https://w3id.org/lmodel/slsa
    rank: 1000
    alias: dependencyLevels
    owner: VerificationSummaryAttestation
    domain_of:
    - VerificationSummaryAttestation
    range: string
  slsaVersion:
    name: slsaVersion
    description: Version of the SLSA specification used during verification, in MAJOR.MINOR
      format (e.g., "1.0").
    in_subset:
    - slsa_build_track
    - slsa_source_track
    from_schema: https://w3id.org/lmodel/slsa
    rank: 1000
    alias: slsaVersion
    owner: VerificationSummaryAttestation
    domain_of:
    - VerificationSummaryAttestation
    range: string
  _type:
    name: _type
    description: Always "https://in-toto.io/Statement/v1". Identifies the in-toto
      statement schema version and namespace.
    in_subset:
    - slsa_build_track
    - slsa_source_track
    - slsa_build_env_track
    from_schema: https://w3id.org/lmodel/slsa
    rank: 1000
    alias: _type
    owner: VerificationSummaryAttestation
    domain_of:
    - Statement
    range: string
    required: true
  subject:
    name: subject
    description: The set of software artifacts to which a predicate applies. Each
      entry MUST contain a digest.
    in_subset:
    - slsa_build_track
    - slsa_source_track
    - slsa_build_env_track
    from_schema: https://w3id.org/lmodel/slsa
    rank: 1000
    alias: subject
    owner: VerificationSummaryAttestation
    domain_of:
    - Statement
    range: ResourceDescriptor
    required: true
    multivalued: true
    inlined: true
    inlined_as_list: true
  predicateType:
    name: predicateType
    description: URI identifying the schema and semantics of the predicate field.
      Used to distinguish different attestation types (e.g., SLSA Provenance vs. Verification
      Summary Attestation).
    in_subset:
    - slsa_build_track
    - slsa_source_track
    - slsa_build_env_track
    from_schema: https://w3id.org/lmodel/slsa
    rank: 1000
    alias: predicateType
    owner: VerificationSummaryAttestation
    domain_of:
    - Statement
    range: string
    required: true
  predicate:
    name: predicate
    description: The attestation payload — an arbitrary JSON object whose schema is
      fully determined by predicateType.
    in_subset:
    - slsa_build_track
    - slsa_source_track
    - slsa_build_env_track
    from_schema: https://w3id.org/lmodel/slsa
    rank: 1000
    alias: predicate
    owner: VerificationSummaryAttestation
    domain_of:
    - Statement
    range: string
  attestationStorageUri:
    name: attestationStorageUri
    description: 'URI indicating where this signed attestation is publicly stored
      or retrievable. No universal standard for attestation storage location was established
      in SLSA v1.0; Sigstore and VCS-embedded storage are two common approaches. Explicitly
      recording this URI addresses the storage ambiguity identified as a significant
      adoption barrier: practitioners reported uncertainty about where generated attestations
      should be stored (Tamanna et al., 2024, LF.1).'
    in_subset:
    - slsa_build_track
    - slsa_source_track
    - slsa_build_env_track
    - slsa_adoption_study
    from_schema: https://w3id.org/lmodel/slsa
    rank: 1000
    alias: attestationStorageUri
    owner: VerificationSummaryAttestation
    domain_of:
    - Statement
    range: string
  signingTool:
    name: signingTool
    description: URI or name of the tool used to cryptographically sign the artifact
      or attestation (e.g., "https://github.com/sigstore/cosign", "https://github.com/notaryproject/notation").
      In the SSF reference architecture the Signing Service layer is distinct from
      the Build Service; recording the signing tool enables verifiers to select the
      matching verification workflow. For Sigstore keyless signing the value should
      be the Cosign release URI.
    in_subset:
    - slsa_build_track
    - slsa_source_track
    - slsa_ssf
    from_schema: https://w3id.org/lmodel/slsa
    rank: 1000
    alias: signingTool
    owner: VerificationSummaryAttestation
    domain_of:
    - Statement
    range: string
  sigstoreLogEntry:
    name: sigstoreLogEntry
    description: URI of the Rekor transparency log entry recording this attestation
      or artifact signature (e.g., "https://rekor.sigstore.dev/api/v1/log/entries/24296fb...").
      The Rekor log provides an immutable, auditable record of signing events that
      underpins Sigstore keyless signing. Verifiers can fetch this entry to confirm
      the cryptographic signature was recorded in the public-good log and obtain the
      signing certificate chain issued by Fulcio. Recording this URI enables offline
      and third-party verification without requiring direct access to the original
      signing key.
    in_subset:
    - slsa_build_track
    - slsa_source_track
    - slsa_ssf
    from_schema: https://w3id.org/lmodel/slsa
    rank: 1000
    alias: sigstoreLogEntry
    owner: VerificationSummaryAttestation
    domain_of:
    - Statement
    range: string