{
  "schema": "varexis-public-evidence-record/0.3",
  "generated_at_utc": "2026-10-16T07:59:18.009Z",
  "record_id": "VXI-EXT-PROCUREMENT-K8S-TOKEN-01-v1",
  "record_kind": "external_reference",
  "title": "Kubernetes service tokens: Audience, lifetime and object binding",
  "system": "Kubernetes",
  "evidence_family": "vendor_evidence_review",
  "index_status": "PUBLIC_SAFE_SOURCE_REVIEW",
  "evidence_state": "PRIMARY_DOCUMENTATION_REVIEW_ONLY",
  "canonical_question": "Can an agent reuse a projected Kubernetes service-account token as a permanent general API credential?",
  "near_questions": [
    "Was the token issued through TokenRequest?",
    "Is it a legacy Secret-based credential?",
    "Which audience is intended?",
    "Which Pod is it bound to?",
    "What happens when the bound Pod is deleted?",
    "Does the kubelet rotate projected credentials?",
    "Does token validity prove broad RBAC authority?",
    "Can a service-account UID change invalidate tokens?",
    "Should a temporary token be stored as a permanent secret?",
    "Which relying service validates the audience?",
    "When should an agent request an appropriate credential instead?",
    "Can I save the service-token review?"
  ],
  "supported_claims": [
    {
      "claim": "Projected tokens obtained through TokenRequest are time-bound and normally bound to the Pod and Kubernetes API audience. Long-lived manually created tokens are a different mechanism. Credential review must identify token type, audience and object lifetime rather than assume all service-account tokens behave alike.",
      "reliance": "DOCUMENTED_CAPABILITY_ONLY"
    }
  ],
  "not_demonstrated_claims": [
    "Verified buyer configuration or effective access rights",
    "Independent execution, completeness or security testing",
    "Vendor certification, legal compliance or guaranteed suitability"
  ],
  "public_summary": "Projected tokens obtained through TokenRequest are time-bound and normally bound to the Pod and Kubernetes API audience. Long-lived manually created tokens are a different mechanism. Credential review must identify token type, audience and object lifetime rather than assume all service-account tokens behave alike.",
  "related_record_ids": [],
  "source_review": {
    "source_type": "official_external_documentation",
    "source_title": "Kubernetes service-account credentials",
    "source_url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
    "checked_on": "2026-10-16",
    "candidate_record_id": "VXI-EXT-PROCUREMENT-K8S-TOKEN-01-v1",
    "candidate_record_sha256": "f9663cebf5844bd344da688bd8cecd326922e45ff5bb095b64764668b11a66dd",
    "method": "Primary documentation reviewed for the published bounded statement.",
    "deployment_tested_by_varexis": false,
    "revalidation": "The delivered snapshot preserves the review date shown. Recheck current primary documentation and deployment context before relying on present applicability; payment does not trigger fresh research."
  },
  "answer_policy": {
    "classification": "DOCUMENTED_WITH_DEPLOYMENT_BOUNDARY",
    "bounded_answer": "Projected tokens obtained through TokenRequest are time-bound and normally bound to the Pod and Kubernetes API audience. Long-lived manually created tokens are a different mechanism. Credential review must identify token type, audience and object lifetime rather than assume all service-account tokens behave alike.",
    "required_buyer_context": "Token type, audience, expiry, object binding and RBAC. Effective buyer configuration and dated operational evidence are required.",
    "missing_evidence": "A broader claim needs evidence matching the intended use. Payment does not upgrade the evidence state."
  },
  "private_boundary": "Raw logs, thresholds, private paths, source code, protected mechanisms and reconstruction-level details are excluded from public and paid delivery.",
  "decision_profile": {
    "schema": "varexis-vendor-evidence-review/1",
    "review_status": "documentation_review_only",
    "checked_on": "2026-10-16",
    "claim_to_check": "Every service-account token is a permanent general credential.",
    "documented_statement": {
      "status": "documented",
      "statement": "Projected tokens obtained through TokenRequest are time-bound and normally bound to the Pod and Kubernetes API audience. Long-lived manually created tokens are a different mechanism. Credential review must identify token type, audience and object lifetime rather than assume all service-account tokens behave alike.",
      "source_ids": [
        "k8s-tokens"
      ]
    },
    "buyer_evidence_required": [
      "Token issuance mechanism and audience.",
      "Expiry and bound object identity.",
      "Effective service-account permissions."
    ],
    "review_condition": {
      "status": "varexis_review_policy",
      "statement": "Decline reuse outside the token's intended audience or lifetime."
    },
    "unknowns": "The buyer configuration, contract, effective entitlement and operational evidence have not been inspected. Missing evidence does not establish absence or failure of the feature.",
    "evidence_sources": [
      {
        "source_id": "k8s-tokens",
        "url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
        "final_url": "https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/",
        "title": "Kubernetes service-account credentials",
        "checked_on": "2026-10-16",
        "sha256": "552638f6bae6f70959623fcea4174a703bcd41840f212aec7386f808814dc55c",
        "bytes": 573669
      }
    ],
    "observed_deployment": false,
    "commercial_reliance_boundary": "Procurement evidence support only; no supplier clearance, legal conclusion, configuration audit or verification of the buyer's claim is supplied.",
    "paid_value": {
      "decision_context": "Retain issuance, lifetime and audience boundaries for workload identity procurement.",
      "free": "Complete review, practical questions, sources and limitations; may be saved locally.",
      "single_request": "Existing server-saved version-bound route snapshot for later authenticated retrieval.",
      "evidence_receipt": "The same snapshot plus the existing unsigned delivery receipt.",
      "excluded": [
        "Fresh vendor research",
        "Continuous monitoring or change alerts",
        "Testing the buyer configuration",
        "Private evidence or vendor certification"
      ],
      "integrity": "Hashes identify content versions; they do not prove truth or provide a signature."
    },
    "revalidation": {
      "trigger": "A saved purchase does not recheck the source or buyer configuration.",
      "specific_watch": "Token type, audience, expiry, object binding and RBAC"
    }
  },
  "paid_access_note": "The full published answer and boundaries are free. Paid access saves the selected route and source versions, with an unsigned receipt when purchased. Preview coverage before paying. Fresh research, bespoke assessment and protected evidence are excluded.",
  "service_route": {
    "request_guide": "/varexis-index/request.html",
    "request_workflow": "/varexis-index/request-workflow.json",
    "service_id": "single_request",
    "service_routes_url": "/varexis-index/service-routes.json",
    "payment_required": true,
    "availability_endpoint": "/api/index/capabilities",
    "operational_status": "AUTOMATIC_SERVICE_CAPABILITIES_GATED",
    "checkout_url": "/index-access"
  },
  "authority_boundary": "VAREXIS-INDEX informs evidence reliance. It does not provide advice, certification, deployment authority, security assurance, production approval, or guarantee.",
  "human_page": "/varexis-index/catalog.html#kubernetes-projected-token-audience-lifetime",
  "machine_readable_record": "/varexis-index/records/kubernetes-projected-token-audience-lifetime.json"
}
