Summary
The authentication system works great with any OIDC provider (we're using Keycloak), but the naming throughout the codebase is Dex-specific which is confusing.
Current Issues
- Callback endpoint:
/auth/dex/callback - hardcoded with "dex" in the path
- Environment variables:
DEX_OAUTH_CALLBACK_URL, DEX_OAUTH_CLIENT_ID, DEX_OAUTH_CLIENT_SECRET, DEX_ENABLED
- Documentation: Focuses heavily on Dex setup rather than generic OIDC configuration
Suggested Changes
- Rename callback/login endpoint:
/auth/dex/callback → /auth/oauth2/callback
- Rename env variables:
DEX_ENABLED → OIDC_ENABLED
DEX_OAUTH_CALLBACK_URL → OAUTH_CALLBACK_URL or OIDC_CALLBACK_URL
DEX_OAUTH_CLIENT_ID → OAUTH_CLIENT_ID or OIDC_CLIENT_ID
DEX_OAUTH_CLIENT_SECRET → OAUTH_CLIENT_SECRET or OIDC_CLIENT_SECRET
- Update docs to explain generic OIDC setup with Dex as one example
Why
Since ChaosCenter supports standard OIDC (works with Keycloak, Okta, Auth0, etc.), the naming should reflect that it's a generic OIDC integration, not Dex-specific. This would make it clearer for users that they can use any OIDC provider.
Additional Context
We successfully integrated ChaosCenter with Keycloak using the existing endpoints, but it was initially confusing whether Dex was required or just an example OIDC provider.
Summary
The authentication system works great with any OIDC provider (we're using Keycloak), but the naming throughout the codebase is Dex-specific which is confusing.
Current Issues
/auth/dex/callback- hardcoded with "dex" in the pathDEX_OAUTH_CALLBACK_URL,DEX_OAUTH_CLIENT_ID,DEX_OAUTH_CLIENT_SECRET,DEX_ENABLEDSuggested Changes
/auth/dex/callback→/auth/oauth2/callbackDEX_ENABLED→OIDC_ENABLEDDEX_OAUTH_CALLBACK_URL→OAUTH_CALLBACK_URLorOIDC_CALLBACK_URLDEX_OAUTH_CLIENT_ID→OAUTH_CLIENT_IDorOIDC_CLIENT_IDDEX_OAUTH_CLIENT_SECRET→OAUTH_CLIENT_SECRETorOIDC_CLIENT_SECRETWhy
Since ChaosCenter supports standard OIDC (works with Keycloak, Okta, Auth0, etc.), the naming should reflect that it's a generic OIDC integration, not Dex-specific. This would make it clearer for users that they can use any OIDC provider.
Additional Context
We successfully integrated ChaosCenter with Keycloak using the existing endpoints, but it was initially confusing whether Dex was required or just an example OIDC provider.