-
DescriptionHi, thank you for your work on this awesome project! Upgrading from wireguard+wg-dashboard to headscale+headplane has been a breeze. Unfortunately, I am having a similar issue as #311 while trying to get OIDC set up with hello.dev. Already have it working with headscale connected to hello.dev. I was able to get OIDC login working on v0.6.2-beta.2 and v0.6.2-beta.3, however the Machines page breaks when I downgrade to that version. Did not work on v0.6.2-beta.4 and up. Any ideas or suggestions? Headplane Versionv0.6.2 (latest) Headscale Versionv0.28.0 (stable) |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 1 reply
-
|
Is your issuer missing a trailing slash by any chance? I know specific IdPs are very strict about this. Also it seems like there may just be cookie issues that might be fixed from clearing cookies. I'll have to investigate on my own, but just some initial suggestions. |
Beta Was this translation helpful? Give feedback.
-
|
After digging into the source and checking hello.coop's discovery document, the root cause is actually on hello.coop's side. Their discovery document advertises "token_endpoint_auth_methods_supported": ["client_secret_basic"]My educated guess is Headplane's heuristic in Workaround: explicitly override the auth method in your config to bypass the heuristic: oidc:
issuer: "https://issuer.hello.coop"
client_id: "your-client-id"
client_secret: "your-client-secret"
use_pkce: true
token_endpoint_auth_method: "client_secret_post" |
Beta Was this translation helpful? Give feedback.
After digging into the source and checking hello.coop's discovery document, the root cause is actually on hello.coop's side. Their discovery document advertises
client_secret_basicas the only supported token endpoint auth method:My educated guess is Headplane's heuristic in
negotiateTokenEndpointAuthMethodcorrectly reads this & selectsclient_secret_basic, which sends credentials in theAuthorizationheader. However, hello.coop's token endpoint does not appear to work with credentials in theAuthorizationheader, despite advertisingclient_secret_basicin their discovery document.Workaround: explicitly override the auth …