bobbylite / bobbylite/hermes-admin-dashboard

Add identity provider (SSO) support

Open
#3 0 comments 1 reaction 2 assignees Claimed by @bobbylite View on GitHub
enhancement priority: low
Dominant language
TypeScript
Stars
0
Forks
0
PR merge metrics
No merged PRs in 30d

Description

## Problem
The dashboard currently has no support for external identity providers. Authentication (if any) is not integrated with common identity providers, making it hard to control access in a team/enterprise setting.

## Expected behavior
- Add support for at least one external identity provider (e.g. OAuth2/OIDC — Google, GitHub, or an OIDC provider like PingOne/PingFederate).
- Users can log into the dashboard via the configured identity provider instead of (or in addition to) any existing local auth.
- Configuration for the identity provider (client id/secret, issuer URL, etc.) should be handled via environment variables/config, not hardcoded.
- Document the setup steps for configuring a new identity provider.

## Notes
Start with a single provider (OIDC-generic or GitHub OAuth) to establish the pattern, then additional providers can be added incrementally.

Contributor guide

No contributing guide indexed for this repository

Research direction

The issue mentions adding OAuth2/OIDC support, likely to the dashboard's authentication flow. Look for existing auth code, perhaps in a `src/auth/` directory or similar. Research how to integrate a generic OIDC provider (like using `passport` or a similar library in TypeScript). The configuration should be via environment variables. Start by setting up a simple OIDC flow with a test provider, then adapt it for the dashboard. Check if there are any existing tests for authentication to understand the current setup.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
authentication, backend-api-design
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.