Skip to main content

What It Does

SPIRE (SPIFFE Runtime Environment) is the identity foundation of Hexr. It issues cryptographic identities to every agent process using the SPIFFE standard.

Components


Identity Issuance Flow

1

Process starts in agent pod

A new process spawns (e.g., PID 42 with role researcher). The PID Mapper detects it.
2

PID Mapper requests SVID

PID Mapper calls the SPIRE Agent’s Workload API (FetchX509SVID) with the process selectors.
3

SPIRE Agent performs attestation

The agent verifies workload identity using Kubernetes selectors: k8s:pod-uid, k8s:ns, hexr:role.
4

SPIRE Server signs certificate

The server matches the request against registration entries and signs an X.509 SVID for spiffe://.../{role}.
5

SVID delivered to pod

The signed X.509 SVID (5-minute TTL) is delivered back to the pod via the Workload API. The process now has a cryptographic identity.

SPIFFE ID Format

Examples:

Trust Domains


OIDC Discovery

SPIRE publishes a JWKS endpoint enabling cloud providers to validate JWT-SVIDs for credential exchange. The hostname is per trust domain, and it must match the iss claim SPIRE stamps into the token, or the exchange fails with invalid_grant: Error connecting to the given credential's issuer:
This is how hexr_tool() credential exchange works — cloud providers trust the SPIRE OIDC endpoint as an identity provider.

Helm Values

Key SPIRE configuration in Helm values-saas.yaml: