Repository navigation
docs: add OpenID Provider guides for Grafana, Auth.js, Spring Security and oauth2-proxy - #159
Merged
Merged
Conversation
…y and oauth2-proxy Add a generic guide for connecting any OIDC app, plus one guide per app. Each was run end to end with a virtual authenticator against API v0.22.0 and edge v0.3.0. Each records the versions tested, the settings that worked, the failures hit, and what was not tested. Refs #114
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #114 once these are live.
Adds a generic guide for connecting an app to the OpenID Provider, and guides for Grafana, Auth.js, Spring Security and oauth2-proxy.
openid-provider.mdxlinks to them. oauth2-proxy was chosen because it works in front of any HTTP app and documents S256 PKCE and a private CA; other proxies were not run for comparison.What was run
Every guide was run end to end locally against released API v0.22.0 and edge v0.3.0, using Playwright's Chromium and a virtual authenticator. Each sign-in test registered a new user, signed in with the passkey from a clean browser, and confirmed the app showed that user.
openid-client6.8.9, Node 24private_key_jwt,client_secret_postclient_secret_basicrolesmapped to Editor through Grafana's API,validate_id_token, sign-outnext-auth5.0.0-beta.32,@auth/core0.41.3, Next 16.4.5client_secret_basic,private_key_jwtsignOut()is local onlyclient_secret_basic,private_key_jwtclient_secret_basicrolesas groups, upstream headers, sign-out, 403 without the allowed roleThe test stack differed from the local recipe in three ways, all stated in the generic guide: the published API v0.22.0 image instead of a source build, the client link step skipped (those routes arrive in v0.23.0), and
flow_rate_limits.otp.perIpraised so repeated test sign-ups were not refused. No guide needs API v0.23.0.Not tested
use_refresh_token.next-auth4 (npmlatest),@auth/express,next dev, ending the Seamless session on sign-out.rolesto authorities, older versions.Some snippets are trimmed from what ran and were not rerun in trimmed form: the generic app, the Auth.js page and the Spring controller. The oauth2-proxy command uses
my-upstreamin place of the test upstream's name.Findings not fixed here
profilescope and noname,preferred_username,pictureorgroupsclaim, and dropsprofilesilently. Every app mapped fromemail,suborroles.openid-provider.mdxstill pins edge v0.1.1 for API 0.21.x, calls v0.2.0latest, and listsprofileandaddressscopes discovery does not offer.npm run check:matrixreports 6 drifted packages, fromecosystem.mdx, which this does not touch.Lint, typecheck and build pass. There is no link checker in CI; internal links and anchors on the new pages were checked once with a script, and external pages returned 200.