Skip to content

Replace OpenID 2.0 with OAuth 2.0/OIDC login - #2

Closed
mraible wants to merge 1 commit into
feature/jakarta-ee-10-migrationfrom
feature/oidc-login
Closed

Replace OpenID 2.0 with OAuth 2.0/OIDC login#2
mraible wants to merge 1 commit into
feature/jakarta-ee-10-migrationfrom
feature/oidc-login

Conversation

@mraible

@mraible mraible commented Aug 11, 2026

Copy link
Copy Markdown
Owner

Replaces the obsolete OpenID 2.0 authentication (removed in Spring Security 6) with modern OAuth 2.0/OIDC login using spring-security-oauth2-client. This is Phase 3 of the Jakarta EE 10 migration (ROL-2183).

  • Add spring-security-oauth2-client and spring-security-oauth2-jose dependencies
  • New RollerClientRegistrationRepository reads OIDC provider config (client-id, client-secret, issuer-uri) from roller-custom.properties with automatic OIDC discovery
  • New RollerOidcUserService bridges OIDC-authenticated users to Roller's user store via the existing openIdUrl column (stores issuer#sub)
  • New RollerOAuth2SuccessHandler routes existing users to the menu and new users to registration with OIDC claims pre-populated
  • Update AuthMethod enum: OPENID/DB_OPENIDOIDC/DB_OIDC
  • Update Login.jsp to show OIDC provider buttons instead of OpenID form
  • Update RollerSession to handle OAuth2AuthenticationToken principal type
  • Update Register, Profile, UserEdit to use new auth method values
  • 10 new unit tests covering all three new classes

Stacked on apache#154 (Jakarta EE 10 migration).

Replace the obsolete OpenID 2.0 authentication (removed in Spring Security 6) with modern OAuth 2.0/OIDC login using spring-security-oauth2-client. OIDC providers are configured via roller-custom.properties with issuer discovery. The existing openIdUrl column is reused to store OIDC subjects (formatted as issuer#sub), avoiding schema changes. New OIDC users are redirected to registration with claims pre-populated; returning users go straight to the menu. AuthMethod enum values updated from OPENID/DB_OPENID to OIDC/DB_OIDC.
@mraible
mraible force-pushed the feature/oidc-login branch from f9ce97f to 34c211f Compare August 11, 2026 15:45
@mraible mraible closed this Aug 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant