fix(oidc): strip trailing slash from redirect URI to match Authentik strict mode
Some checks failed
ci / build-test (push) Has been cancelled
ci / docker-build (push) Has been cancelled

This commit is contained in:
2026-07-13 22:50:31 +02:00
parent 8b50753746
commit 07d67c8446

View File

@@ -77,7 +77,7 @@ export async function startLogin(): Promise<void> {
sessionStorage.setItem(PKCE_KEY, codeVerifier) sessionStorage.setItem(PKCE_KEY, codeVerifier)
sessionStorage.setItem(STATE_KEY, oidcState) sessionStorage.setItem(STATE_KEY, oidcState)
const redirectURI = location.origin + location.pathname const redirectURI = (location.origin + location.pathname).replace(/\/$/, '')
const params = new URLSearchParams({ const params = new URLSearchParams({
response_type: 'code', response_type: 'code',
@@ -103,7 +103,7 @@ export async function handleCallback(code: string, returnedState: string): Promi
const cfg = state.config ?? await fetchConfig() const cfg = state.config ?? await fetchConfig()
if (!cfg) return false if (!cfg) return false
const redirectURI = location.origin + location.pathname const redirectURI = (location.origin + location.pathname).replace(/\/$/, '')
try { try {
const resp = await fetch(apiBase('/api/v1/auth/oidc-token'), { const resp = await fetch(apiBase('/api/v1/auth/oidc-token'), {