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

Keycloak配置Google身份提供商失败报错问题求助

解决Keycloak配置Google身份提供商redirect_uri错误完整步骤

你遇到的报错为Google OAuth校验环节重定向URI不匹配,按照以下步骤逐一排查配置即可解决:

1. Keycloak侧Google身份提供商配置校验

  • 进入Keycloak对应Realm的「身份提供商」页面,选择你创建的Google提供商条目
  • 完整复制页面上显示的重定向URI值,不要遗漏任何字符,包含后缀的/broker/google/endpoint部分
  • 确认填写的客户端ID、客户端密钥与Google Cloud后台获取的完全一致,无多余空格、漏字符问题
  • 默认权限范围保持openid email profile即可,无特殊需求不要自行修改
  • 可选打开「存储令牌」「存储令牌响应」开关,方便后续排查问题

2. Google Cloud后台OAuth配置校验

  • 进入Google Cloud控制台对应项目的「API和服务」→「凭据」页面
  • 找到你创建的OAuth 2.0客户端ID,进入编辑页面
  • 在「已授权的重定向URI」板块,粘贴上一步从Keycloak复制的完整重定向URI,保存配置
  • 配置修改后需要等待5-10分钟生效,刚修改完成立刻测试会不生效
  • 额外检查:OAuth同意屏幕的发布状态需要设置为「正式版」,如果保持「测试版」状态,只有你提前添加到测试名单的Google账号可以登录,其余账号会触发权限报错

3. Node.js适配器与Keycloak部署配置校验

由于同环境下GitHub身份提供商可正常运行,适配器基础配置没有问题,只需核对以下两点:

  • 调用Keycloak登录接口时不要手动覆盖redirect_uri参数,保持Keycloak适配器的默认生成逻辑即可
  • 若Keycloak通过反向代理部署,必须确保Keycloak的hostname配置和实际对外访问的域名完全一致,避免出现Keycloak内部识别域名为localhost:8080、实际访问域名为自定义域名的情况,该问题会导致生成的重定向URI和Google后台配置的不匹配:
    • Docker部署的Keycloak需要在启动时添加环境变量:KC_HOSTNAME=你的实际域名 KC_HOSTNAME_STRICT=false KC_PROXY=edge
    • 二进制部署的Keycloak需要修改conf/keycloak.conf文件中的hostname配置为实际域名
  • 公网部署的Keycloak必须使用HTTPS协议,Google仅允许本地测试的localhost地址使用HTTP协议的重定向URI

4. 最终验证

  • 等待Google后台配置生效后,清除浏览器缓存,使用隐私模式窗口测试登录
  • 若仍有报错,可复制Google跳转登录页的完整地址,提取其中redirect_uri参数的取值,和Keycloak显示的重定向URI、Google后台配置的重定向URI做比对,三者必须完全一致,协议、域名、端口、路径均不能有差异

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 18:54:00