梦魇中 2023-07-21 10:07 采纳率: 80%
浏览 19

keycloak整合springboot的问题

我使用springboot+springSecurity+keycloak创建了一个项目架构,目前访问接口时,没有登录会自动调转到单点登录页面,调转时自动会把当前请求得地址做回单点页面的回调地址,这样导致了一个问题就是 我是前后端分离项目,登录继续回调api,前端拿不到返回值。不知道有没有方法能让他登陆时调转到前端首页,后续登录后就不需要调转

img


,正常执行接口逻辑呢?或者有没有更好的处理方案?

  • 写回答

1条回答 默认 最新

  • 强国豪,林中霖 2023-07-24 10:30
    关注

    你可以尝试以下方法解决这个问题:

    在Keycloak配置中,将回调URL设置为前端的首页URL。这样登录成功后,用户将被重定向到前端首页而不是后端API。

    当用户进行登录时,前端可以将当前页面的URL作为参数传递给后端API。后端API将在重定向到Keycloak登录页面时将该URL作为回调URL传递给Keycloak。登录成功后,Keycloak将用户重定向回该URL。

    在Keycloak中,你可以尝试使用Direct Access Grants Flow(直接访问授权流)代替默认的Authorization Code Flow(授权码流)。这样可以避免重定向并直接返回访问令牌,使得前端可以直接获得登录状态。

    如果以上方法都无法解决你的问题,你可以考虑使用前后端分离的认证方案,如使用JWT(JSON Web Token)实现认证和授权。在这种方案下,前端将在每个请求中携带JWT令牌,后端通过验证JWT令牌来判断用户是否已登录。

    评论

报告相同问题?

问题事件

  • 创建了问题 7月21日

悬赏问题

  • ¥15 为什么跑这个代码,文件显示不在呀
  • ¥15 一道ban了很多东西的pyjail题
  • ¥15 关于#r语言#的问题:如何将生成的四幅图排在一起,且对变量的赋值进行更改,让组合的图漂亮、美观@(相关搜索:森林图)
  • ¥15 C++识别堆叠物体异常
  • ¥15 微软硬件驱动认证账号申请
  • ¥15 GPT写作提示指令词
  • ¥20 根据动态演化博弈支付矩阵完成复制动态方程求解和演化相图分析等
  • ¥20 关于DAC输出1.000V对分辨率和精度的要求
  • ¥15 华为超融合部署环境下RedHat虚拟机分区扩容问题
  • ¥15 哪位能做百度地图导航触点播报?