Skip to content

CSPACE-TOKEN-01: Attestation token is issuer-pinned, audience-bound, and fresh

Property Value
Severity high
Platform GCP Confidential Space (AMD SEV-SNP)
Lifecycle stage attest
Assurance report-derived
Mode Passive: reads only the files and values you pass to the scan.

What it checks

It passes when:

  • Token names the Confidential Space issuer, is bound to a specific audience, and carries a bounded, consistent lifetime.

How to fix

  • Have the relying party verify the token issuer (confidentialcomputing.googleapis.com), require an audience bound to this relying party (no wildcard), and reject tokens whose exp/nbf are missing, inconsistent, or define an overlong lifetime. Verify the signature before releasing keys.
  • Verify the Confidential Space issuer, require an audience bound to this relying party (no wildcard), and reject tokens with missing/overlong lifetimes. Verify the signature before key release.

After the fix, scan again: the check should report PASS.

When it is not assessed

SKIP:

  • No --attestation-token specified; skipping check.

ERROR:

  • Could not read a bounded, structurally valid attestation token.

Scan inputs

The untrust scan options this check reads:

Option Description
--attestation-token Path to a captured Confidential Space attestation token (JWT).

Permissions

None. The check reads only the files or values you pass to the scan.

Generated from untrust 1.3.0 (commit 7ef462d9a0c3).