IdP resolve (discovery + JWKS, keep-last-good) #2

Closed
opened 2026-09-13 20:39:57 +00:00 by ginjiruu · 0 comments
Owner

Parent

Spec: Shared in-memory state model (Registry + Snapshot) — #1

What to build

Given a Client's issuerURL, a resolve step that fetches the IdP discovery document and derives the token endpoint and authorization endpoint, and fetches the JWKS signing keys. On any fetch failure it keeps the last-good keys, so a transient IdP outage does not blank the signing keys. Verifiable against a stubbed (httptest) IdP.

Acceptance criteria

  • Given an issuerURL, it fetches the discovery document and returns the resolved token endpoint and authorization endpoint.
  • It fetches and returns the JWKS signing keys.
  • When a fetch fails, it retains the last-good JWKS (never blanks the keys).
  • The discovery/JWKS fetch is exercised against a stubbed (httptest) IdP that can be made to fail.

Blocked by

None — can start immediately.

## Parent Spec: Shared in-memory state model (Registry + Snapshot) — https://git.animeteamspeak.moe/lab/authz-bridge/issues/1 ## What to build Given a Client's `issuerURL`, a resolve step that fetches the IdP discovery document and derives the token endpoint and authorization endpoint, and fetches the JWKS signing keys. On any fetch failure it keeps the last-good keys, so a transient IdP outage does not blank the signing keys. Verifiable against a stubbed (httptest) IdP. ## Acceptance criteria - [ ] Given an `issuerURL`, it fetches the discovery document and returns the resolved token endpoint and authorization endpoint. - [ ] It fetches and returns the JWKS signing keys. - [ ] When a fetch fails, it retains the last-good JWKS (never blanks the keys). - [ ] The discovery/JWKS fetch is exercised against a stubbed (httptest) IdP that can be made to fail. ## Blocked by None — can start immediately.
Sign in to join this conversation.
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lab/authz-bridge#2
No description provided.