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

单点登录跨子域名跳转及WordPress集成Keycloak认证登录页配置问询

1. 单点登录状态下跨子域名跳转的实现方案

其实跨子域名跳转的核心就是让SSO生成的认证Cookie能被所有子域名识别——毕竟浏览器是靠Cookie来判断你有没有登录状态的。咱一步步来实操:

  • 配置SSO服务端的Cookie域名:不管用Keycloak还是其他SSO系统,一定要把认证Cookie的Domain属性设为顶级域名(比如yourdomain.com),不能是某个具体子域名(比如app1.yourdomain.com)。这样所有子域名(app1.yourdomain.com、app2.yourdomain.com)都能读取这个Cookie,自动识别用户的登录状态。
  • 子域名应用的SSO客户端配置:每个子域名的应用(比如WordPress、自建系统)在SSO服务端注册客户端时,要把回调地址(Redirect URI)设为对应子域名的地址,同时确保应用的SSO SDK能正确读取顶级域名下的认证Cookie,发起会话验证请求。
  • 处理跳转时的会话同步:当用户从app1.yourdomain.com跳转到app2.yourdomain.com时,app2的SSO客户端会自动检查Cookie里的认证令牌,有效就直接建立本地会话,不用重新登录;如果令牌过期,才会跳回SSO登录页重新认证。
  • 注意Cookie的安全属性:生产环境用HTTPS的话,别忘了给Cookie加上HttpOnly和Secure属性,防止被XSS攻击窃取,同时保证只有HTTPS请求能携带这个Cookie。
2. 基于Keycloak+WordPress实现类谷歌风格的SSO登录页面

谷歌那种SSO体验就是“点一下跳去认证完直接回应用”,用Keycloak搭WordPress完全能复刻,具体步骤如下:

  • 第一步:安装适配的WordPress插件:找一款成熟的Keycloak SSO插件(比如Keycloak OpenID Connect这类),直接在WP后台插件市场搜索安装激活就行。
  • 第二步:在Keycloak中配置WordPress客户端:
    1. 登录Keycloak后台,进入你的Realm(领域),点击「Clients」→「Create」。
    2. 客户端ID填个好记的(比如wordpress-client),客户端协议选openid-connect,保存。
    3. 在「Settings」标签页,把「Valid Redirect URIs」设为你的WP登录回调地址(比如https://yourwp.yourdomain.com/wp-admin/admin-ajax.php?action=openid-connect-authorize,具体看插件文档),「Web Origins」填*或者你的WP域名,允许跨域请求。
    4. 切换到「Credentials」标签页,记下「Secret」,后面WP插件要用到。
  • 第三步:在WordPress中配置插件参数:
    1. 进入WP后台的插件设置页面,找到Keycloak相关配置项。
    2. 填写Keycloak的服务器地址(比如https://keycloak.yourdomain.com/auth/realms/your-realm),还有刚才记下的客户端ID和Secret。
    3. 开启「Force Login with Keycloak」或者类似选项,这样用户访问WP登录页时会自动跳转到Keycloak的认证页面(就像谷歌登录那样);如果想保留本地登录入口,也可以设置为「Add Keycloak Login Button」,在WP登录页显示一个“用Keycloak登录”的按钮。
  • 第四步:测试验证:打开WP登录页,要么自动跳转到Keycloak的登录界面,要么看到新增的Keycloak登录按钮,输入账号密码认证后,会自动回到WP后台,完成SSO登录。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 09:42:16