feat(auth): add oidc support #18

Merged
chartgerink merged 15 commits from feat/oidc into main 2025-07-24 14:29:24 +00:00
Owner
  • add openidconnect, uuid, reqwest, redis, thiserror as dependencies
  • add redis-test as developer dependency
  • add oidc_providers table
  • add user_oidc_links table
  • add oidc models and handlers
  • add /api/auth/oidc/<provider>/[login/callback] routes
  • add basic testing of redis caching
- add `openidconnect`, `uuid`, `reqwest`, `redis`, `thiserror` as dependencies - add `redis-test` as developer dependency - add `oidc_providers` table - add `user_oidc_links` table - add oidc models and handlers - add `/api/auth/oidc/<provider>/[login/callback]` routes - add basic testing of redis caching
Key Features [by claude]:
  1. Dynamic Discovery: Uses the OIDC .well-known/openid_configuration endpoint to automatically discover
   provider endpoints
  2. Caching: Caches clients in memory to avoid repeated discovery calls
  3. Database Integration: Loads provider configs from your database
  4. Error Handling: Proper error types for different failure scenarios
  5. Cache Management: Methods to invalidate cache when configs change
we are opting for redis at this time, but see also issue #17
chartgerink deleted branch feat/oidc 2025-07-24 14:29:24 +00:00
Sign in to join this conversation.
No reviewers
No milestone
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: libscie/researchequals-api#18
No description provided.