JanssenProject / JanssenProject/jans

feat(jans-auth-server): agent identity via JWT-SVID

Open
#14,988 0 comments 0 reactions 1 assignee Claimed by @yuriyz View on GitHub
comp-jans-auth-server kind-feature
Dominant language
Java
Stars
648
Forks
174
Avg merge
1d 18h
Merged PRs (30d)
110

Description

### Description

feat(jans-auth-server): agent identity via JWT-SVID

An operator enrolls an AI agent with jans-auth-server. The agent generates a keypair inside a
hardware secure element (TEE / TPM / enclave) — the private key never leaves it. jans-auth-server
binds that key to the agent's registration, and from then on mints short-lived **JWT-SVIDs** for
it: standard SPIFFE tokens whose `sub` is the agent's SPIFFE ID and whose `cnf` claim pins the
token to the enclave key. jans-auth-server publishes its signing keys as a **SPIFFE trust
bundle**, so any relying party — including federated SPIRE deployments — can verify the token
offline. Presenting the token *plus a proof signed by the bound key* proves not just "jans vouched
for this identity" but "the caller, right now, holds the hardware-sealed key that identity was
issued to."

Design Plan
https://github.com/JanssenProject/jans/blob/jans-auth-server-14988/docs/janssen-server/auth-server/oauth-features/agent-identity-jwt-svid.md

### Test cases and code coverage

- [ ] Write unit test to cover added/changed code
- [ ] Update integration tests to cover added/changed code
- [ ] Documentation

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.