You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

本地部署Supabase集成Keycloak OAuth遇无效流程状态错误

求助:自托管Supabase + Docker Keycloak 登录回调报错"invalid flow state, no valid flow state found"

已通过谷歌搜索及技术论坛查找解决方案,尝试所有可行方法均无效,特此求助。

本地部署环境:Docker版Keycloak + 自托管Supabase,相关配置如下:

Keycloak客户端设置

Valid Redirect URIs: http://localhost:3000/auth/callback; http://localhost:8000/auth/v1/callback
Web Origins: http://localhost:3000; http://localhost:8000
Client Authentication: true

Supabase docker-compose.yml配置

GOTRUE_EXTERNAL_KEYCLOAK_ENABLED: "true"
GOTRUE_EXTERNAL_KEYCLOAK_CLIENT_ID: "supabase"
GOTRUE_EXTERNAL_KEYCLOAK_SECRET: "0L3PRTgpQNx4hnkdamvjQYg8PiZqbS5x"
GOTRUE_EXTERNAL_KEYCLOAK_URL: "http://localhost:8080/realms/master"
GOTRUE_EXTERNAL_KEYCLOAK_REDIRECT_URI: "http://localhost:3000/auth/callback"

Supabase docker-compose环境变量

ADDITIONAL_REDIRECT_URLS="http://localhost:3000/auth/callback"

问题现象

使用Next.js Supabase模板,已在actions文件中添加signInwithKeycloak函数,在auth/callback/route.ts中实现回调逻辑。点击应用中的‘Sign in with keycloak’按钮后,成功跳转至Keycloak登录页,登录完成后返回应用登录页并提示**‘invalid flow state, no valid flow state found’**错误。检查Cookie可见sb-localhost-auth-token-code-verifier。

网络请求详情

请求1:Supabase授权请求

Request URL: 
http://localhost:8000/auth/v1/authorize?provider=keycloak&redirect_to=http%3A%2F%2Flocalhost%3A3000%2Fauth%2Fcallback&scopes=openid&code_challenge=Ayzoh0qqlZK9q_BPQRZ4-ao28xkH4C7tvtpuOI3ptFU&code_challenge_method=s256

Payload
provider: keycloak
redirect_to: http://localhost:3000/auth/callback
scopes: openid
code_challenge: Ayzoh0qqlZK9q_BPQRZ4-ao28xkH4C7tvtpuOI3ptFU
code_challenge_method: s256

请求2:Keycloak认证请求

http://localhost:8080/realms/master/protocol/openid-connect/auth?client_id=supabase&redirect_to=http%3A%2F%2Flocalhost%3A3000%2Fauth%2Fcallback&redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fauth%2Fcallback&response_type=code&scope=profile+email+openid&state=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MjgxMDQxODcsInNpdGVfdXJsIjoiaHR0cDovL2xvY2FsaG9zdDozMDAwIiwiaWQiOiIwMDAwMDAwMC0wMDAwLTAwMDAtMDAwMC0wMDAwMDAwMDAwMDAiLCJmdW5jdGlvbl9ob29rcyI6bnVsbCwicHJvdmlkZXIiOiJrZXljbG9hayIsInJlZmVycmVyIjoiaHR0cDovL2xvY2FsaG9zdDozMDAwL2F1dGgvY2FsbGJhY2siLCJmbG93X3N0YXRlX2lkIjoiMzgyZDFhYTEtMzNmMi00NWM3LWI5NGItMzk3YTg5YTBlMjgxIn0.wy5N_hLNJqvh_YNBDrFeuea92KeOdL_ir0eHWwqYz9I

Payload
client_id: supabase
redirect_to: http://localhost:3000/auth/callback
redirect_uri: http://localhost:3000/auth/callback
response_type: code
scope: profile email openid
state: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MjgxMDQxODcsInNpdGVfdXJsIjoiaHR0cDovL2xvY2FsaG9zdDozMDAwIiwiaWQiOiIwMDAwMDAwMC0wMDAwLTAwMDAtMDAwMC0wMDAwMDAwMDAwMDAiLCJmdW5jdGlvbl9ob29rcyI6bnVsbCwicHJvdmlkZXIiOiJrZXljbG9hayIsInJlZmVycmVyIjoiaHR0cDovL2xvY2FsaG9zdDozMDAwL2F1dGgvY2FsbGJhY2siLCJmbG93X3N0YXRlX2lkIjoiMzgyZDFhYTEtMzNmMi00NWM3LWI5NGItMzk3YTg5YTBlMjgxIn0.wy5N_hLNJqvh_YNBDrFeuea92KeOdL_ir0eHWwqYz9I

请求3:应用回调请求

http://localhost:3000/auth/callback?state=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MjgxMDQxODcsInNpdGVfdXJsIjoiaHR0cDovL2xvY2FsaG9zdDozMDAwIiwiaWQiOiIwMDAwMDAwMC0wMDAwLTAwMDAtMDAwMC0wMDAwMDAwMDAwMDAiLCJmdW5jdGlvbl9ob29rcyI6bnVsbCwicHJvdmlkZXIiOiJrZXljbG9hayIsInJlZmVycmVyIjoiaHR0cDovL2xvY2FsaG9zdDozMDAwL2F1dGgvY2FsbGJhY2siLCJmbG93X3N0YXRlX2lkIjoiMzgyZDFhYTEtMzNmMi00NWM3LWI5NGItMzk3YTg5YTBlMjgxIn0.wy5N_hLNJqvh_YNBDrFeuea92KeOdL_ir0eHWwqYz9I&session_state=181a8fe2-2bf5-4279-8bfd-c8880d89c51c&iss=http%3A%2F%2Flocalhost%3A8080%2Frealms%2Fmaster&code=03399bd7-f454-4e89-bd7d-e04eec6908d4.181a8fe2-2bf5-4279-8bfd-c8880d89c51c.b37b3d25-c578-4ad6-afa8-03f6a6bbae02

Payload
state: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MjgxMDQxODcsInNpdGVfdXJsIjoiaHR0cDovL2xvY2FsaG9zdDozMDAwIiwiaWQiOiIwMDAwMDAwMC0wMDAwLTAwMDAtMDAwMC0wMDAwMDAwMDAwMDAiLCJmdW5jdGlvbl9ob29rcyI6bnVsbCwicHJvdmlkZXIiOiJrZXljbG9hayIsInJlZmVycmVyIjoiaHR0cDovL2xvY2FsaG9zdDozMDAwL2F1dGgvY2FsbGJhY2siLCJmbG93X3N0YXRlX2lkIjoiMzgyZDFhYTEtMzNmMi00NWM3LWI5NGItMzk3YTg5YTBlMjgxIn0.wy5N_hLNJqvh_YNBDrFeuea92KeOdL_ir0eHWwqYz9I
session_state: 181a8fe2-2bf5-4279-8bfd-c8880d89c51c
iss: http://localhost:8080/realms/master
code: 03399bd7-f454-4e89-bd7d-e04eec6908d4.181a8fe2-2bf5-4279-8bfd-c8880d89c51c.b37b3d25-c578-4ad6-afa8-03f6a6bbae02

如需其他信息请告知,已尽可能保留默认配置。


内容的提问来源于stack exchange,提问作者Law

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 12:58:10