Skip to content

docs: deprecate SSO Kit and add a Spring Security migration guide - #5950

Open
totally-not-ai[bot] wants to merge 6 commits into
mainfrom
docs/sso-kit-to-spring-security-migration-guide
Open

totally-not-ai[bot] wants to merge 6 commits into
mainfrom
docs/sso-kit-to-spring-security-migration-guide

Conversation

@totally-not-ai

@totally-not-ai totally-not-ai Bot commented Sep 5, 2026

Copy link
Copy Markdown
Contributor

Summary

SSO Kit won't be available in Vaadin 26, so every application using it has to move to Spring Security's OpenID Connect support. This marks all SSO Kit pages as deprecated and adds a new guide that explains how to make that move.

What changed

Documentation only. No code, API, or build changes — nothing can break at runtime.

Content change readers will notice: the SSO Kit section is now presented as deprecated. Its pages keep working and still describe the kit, but each one now opens with a deprecation warning pointing at the new guide.

  • New page articles/tools/sso/migrating-to-spring-security.adoc:
    • A feature mapping table from each SSO Kit property, class, and npm package to its replacement.
    • Six migration steps for Flow: swap the starter for spring-boot-starter-oauth2-client, keep the spring.security.oauth2.client.* properties, replace the auto-configuration with an explicit SecurityFilterChain using VaadinSecurityConfigurer, and — only if needed — add back-channel logout, concurrent session control, and Keycloak role mapping.
    • A Hilla section covering the frontend work: replacing @vaadin/sso-kit-client-react with @vaadin/hilla-react-auth, writing your own browser-callable service for user info, and using ViewConfig for route protection.
    • A "What you have to build yourself" section for the three features with no replacement (Hilla client-side logout notification, the Keycloak Lumo login theme, the Hilla Lit client), plus a final checklist.
    • Session expiry handling and Keycloak role mapping are documented as part of Vaadin's Spring Security integration (VaadinExpiredSessionStrategy, keycloakRoleMapping()), with a since badge and the older manual approach kept in a note for earlier versions.
  • Deprecation markers on all eight SSO Kit pages (index, theming, both getting-started pages, and the four integration pages): a caution banner in the front matter, a [deprecated:...] title badge, and a shared deprecation admonition included from index.adoc via an AsciiDoc tag. This follows the same pattern used for other deprecated tools.
  • Tools overview (articles/tools/index.adoc): the SSO Kit card is labelled "(Deprecated)" and says the features are now in Spring Security, so the signal shows before anyone opens the section.
  • Page metadata: the SSO Kit landing page title, description, and meta-description now state the deprecation, so it appears in navigation and search results. Wording uses the future tense ("won't be available in Vaadin 26") to match the AppSec Kit pages.
  • Hilla Lit wording: replaced an unsourced claim that Hilla with Lit is discontinued with what the Upgrading Guide actually says — @vaadin/router is deprecated and no longer actively maintained, and moving Lit views to React is the recommendation.

SSO Kit isn't available in Vaadin 26, so every application using it has to
move to Spring Security's OpenID Connect support before upgrading. There was
no documentation for that move.

Marks every SSO Kit page as deprecated using the same banner and admonition
pattern as the other deprecated tools, and adds a migration guide that maps
each kit feature to its replacement, gives the security configuration that
replaces the auto-configuration, and documents the features that have no
drop-in replacement.
@github-actions

github-actions Bot commented Sep 5, 2026

Copy link
Copy Markdown
Contributor

Preview Deployment

This PR has been deployed for preview.

URL: https://docs-preview-pr-5950.fly.dev

Changed pages

Added content is highlighted in green; removed content is marked in red on each page.

Built from f4de13e

totally-not-ai Bot and others added 4 commits September 5, 2026 12:08
Uses the future tense "won't be available in Vaadin 26" throughout, since
Vaadin 26 doesn't exist yet, and states the deprecation in the landing page
description as well as the meta description so it shows in navigation and in
search results.

Also labels the SSO Kit card on the tools overview page as deprecated and
mentions that its features are now in Spring Security, so the signal is
visible before anyone opens the section.
The Hilla Lit client section asserted that Hilla with Lit is discontinued,
which isn't documented anywhere. Replaces it with what the Upgrading Guide
actually says: the router Hilla Lit views use is deprecated and no longer
actively maintained, and moving Lit views to React is the recommendation.
…ions

vaadin/flow#25625 adds UidlExpiredSessionStrategy and makes
VaadinSecurityConfigurer install it by default, and vaadin/flow#25627 adds
KeycloakOidcUserMapper behind a keycloakRoleMapping() opt-in. Both were
ported from SSO Kit, so two of the migration gaps close.

Moves the two features out of the gaps section and into the migration steps
that need them, with a since badge for the version they arrive in and the
previous manual approach kept in a note for earlier versions. Updates the
feature mapping table and the checklist to match.
@peholmst peholmst added the target/v25.3 Automatically cherry-pick to the v25.3 branch label Sep 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

target/v25.3 Automatically cherry-pick to the v25.3 branch

Projects

Status: 🔎Iteration reviews

Development

Successfully merging this pull request may close these issues.

3 participants