Skip to content

feat(auth): add generic OIDC provider with configurable label and icon - #480

Open
ottonomy wants to merge 1 commit into
wgu-opensource:developfrom
skybridgeskills:feature/generic-oidc-provider
Open

feat(auth): add generic OIDC provider with configurable label and icon#480
ottonomy wants to merge 1 commit into
wgu-opensource:developfrom
skybridgeskills:feature/generic-oidc-provider

Conversation

@ottonomy

Copy link
Copy Markdown
Collaborator

Adds a vendor-neutral oidc client registration alongside the existing okta and google slots, bound to its own OAUTH_OIDC_* variables so the change is fully additive and okta/google behavior is unchanged. Its callback path is /login/oauth2/code/oidc, and its sign-in button label (OAUTH_PROVIDER_NAME) and icon (OAUTH_PROVIDER_ICON_URL or a curated OAUTH_PROVIDER_ICON_SLUG) are configurable — no icon is shown for the generic provider unless one is set, so no vendor mark leaks onto the login page.

Drops OAUTH_AUDIENCE from the OAuth activation gate in docker_entrypoint.sh and common.sh (it was required to enable oauth2 but never read; audience is not validated). The generic slot lets a PingFederate deployment migrate to Entra in place, keeping a stable redirect URI.

Adds AuthConfigProviderTest (backend) and getIcon cases (UI). Updates the auth doc to introduce the generic provider and frame Okta as one example IdP.

ADR: docs/adr/2026-07-21-generic-oidc-provider.md

Plan: ~/.skybridge/planning/osmt/2026-07-21-generic-oidc-provider/plan.md

Adds a vendor-neutral `oidc` client registration alongside the existing
`okta` and `google` slots, bound to its own OAUTH_OIDC_* variables so the
change is fully additive and okta/google behavior is unchanged. Its callback
path is /login/oauth2/code/oidc, and its sign-in button label
(OAUTH_PROVIDER_NAME) and icon (OAUTH_PROVIDER_ICON_URL or a curated
OAUTH_PROVIDER_ICON_SLUG) are configurable — no icon is shown for the generic
provider unless one is set, so no vendor mark leaks onto the login page.

Drops OAUTH_AUDIENCE from the OAuth activation gate in docker_entrypoint.sh and
common.sh (it was required to enable oauth2 but never read; audience is not
validated). The generic slot lets a PingFederate deployment migrate to Entra
in place, keeping a stable redirect URI.

Adds AuthConfigProviderTest (backend) and getIcon cases (UI). Updates the auth
doc to introduce the generic provider and frame Okta as one example IdP.

ADR: docs/adr/2026-07-21-generic-oidc-provider.md

Plan: ~/.skybridge/planning/osmt/2026-07-21-generic-oidc-provider/plan.md

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant