keycloak - 鉴权quarkus

目录

一、前言

二、遇到的问题

1、keycloak中配置public访问方式如何配置keycloak

2、keycloak拦截登录后,重定向多次报错,因cookie超长

三、解决问题

1、环境说明 

2、对应keycloak public访问方式的keycloak配置

3、解决cookie太长的问题

a、方案分析

b、方案实践

c、效果


一、前言

keycloak-鉴权quarkus框架_keycloak 配置-CSDN博客

这是之前写的keycloak 鉴权 quarkus 框架的基础配置,基于上篇集成quarkus文章遇到的问题,本文做一个补充。 

二、遇到的问题

1、keycloak中配置public访问方式如何配置keycloak

2、keycloak拦截登录后,重定向多次报错,因cookie超长

三、解决问题

1、环境说明 

quarkus:3.2.10
keycloak: 18.0.2

2、对应keycloak public访问方式的keycloak配置

#keyCloak鉴权配置
quarkus.oidc.auth-server-url=http://127.0.0.1:8080/realms/user_login
quarkus.oidc.client-id=user_login_client
quarkus.oidc.application-type=web-app
quarkus.oidc.tls.verification=none

3、解决cookie太长的问题

a、方案分析
 

  1. 设置 quarkus.oidc.token-state-manager.split-tokens=true,这将导致 ID 令牌、访问令牌和刷新令牌存储在单独的 cookies 中,从而减少每个 cookie 的大小。

  2. 如果不需要使用访问令牌作为角色来源、请求 UserInfo 或者将其传播到下游服务,可以设置 quarkus.oidc.token-state-manager.strategy=id-refresh-tokens

  3. 通过设置 quarkus.oidc.token-state-manager.encryption-required=false 来减少会话 cookie 的长度,但只有在你认为在你的应用程序网络中这样做是安全的情况下才应该这么做。

  4. 注册一个自定义的 quarkus.oidc.TokenStateManager CDI bean,并将替代优先级设置为 1。

b、方案实践

采取第一种方式,这种方式是将令牌拆分到不同的cookies中,可以避免单个cookie过大。

设置 quarkus.oidc.token-state-manager.split-tokens=true

#keyCloak鉴权配置
quarkus.oidc.auth-server-url=http://127.0.0.1:8080/realms/user_login
quarkus.oidc.client-id=user_login_client
quarkus.oidc.application-type=web-app
quarkus.oidc.tls.verification=none
quarkus.keycloak.policy-enforcer.enable=false
#此处配置即为拆分cookie
quarkus.oidc.token-state-manager.split-tokens=true

c、效果

 登录后可以请求到后端数据了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/585891.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端二维码生成工具小程序:构建营销神器的技术解析

摘要: 随着数字化营销的不断深入,二维码作为一种快速、便捷的信息传递方式,已经广泛应用于各个领域。本文旨在探讨如何通过前端技术构建一个功能丰富、操作简便的二维码生成工具小程序,为企业和个人提供高效的营销支持。 一、引言…

国宝二抗-没有最全面,只有更全面

博奥龙Biodragon 专业从事各种免疫球蛋白与相应的二抗产品的研发、生产和销售,为您提供最全、最优的二抗相关产品。多种种属、多种标记,您找不到的二抗这里都有! 多种种属(小鼠、大鼠、豚鼠、人、猪、马、牛、羊、狗、猫、驴、鸡…

如何在 Mac 上恢复已删除的数据

如果您丢失了 Mac 上的数据,请不要绝望。恢复数据比您想象的要容易,并且有很多方法可以尝试。 在 Mac 上遭受数据丢失是每个人都认为永远不会发生在他们身上的事情之一......直到它发生。不过,请不要担心,因为您可以通过多种方法…

有趣的css - 旋转的设置按钮

大家好,我是 Just,这里是「设计师工作日常」,今天分享的是一个会旋转的齿轮设置按钮。 《有趣的css》系列最新实例通过公众号「设计师工作日常」发布。 目录 整体效果核心代码html 代码css 部分代码 完整代码如下html 页面css 样式页面渲染效…

zvt,一个神奇的 Python 库!

更多Python学习内容:ipengtao.com 大家好,今天为大家分享一个神奇的 Python 库 - zvt Github地址:https://github.com/zvtvz/zvt Python在金融数据分析领域有着广泛的应用,而zvt库作为一款强大的金融数据分析工具,为开…

HTTP协议格式详解之首行信息解析

HTTP(Hypertext Transfer Protocol)是一种用于传输超文本文档的应用层协议,通常用于在客户端和服务器之间传输网页、图片、视频等资源。它是建立在TCP/IP协议栈之上的应用层协议,使用标准的TCP连接来传输数据。HTTP的主要特点包括…

用echarts实现进度条

今天有个需求需要实现类似这种进度条 渐变,指示点,背景这些都比较容易实现,前面这段有个高度逐渐增大的地方卡住了,半天没想到用什么方式去实现,搜了一圈,发现可以用echarts来实现 let icon1 image://data…

AIGC浪潮下,鹅厂新一代前端人的真实工作感受

AIGC 这一时代潮流已然不可阻挡,我们要做的不是慌乱,而是把握住这个时代的机会。本文就和大家一起来探索在 AIGC 下,前端工程师即将面临的挑战和机遇。聊聊从以前到现在,AIGC 给我们带来了怎么样的变化,下一代前端工程…

Towhee

文章目录 关于 Towhee✨ 项目特点🎓 快速入门流水线预定义流水线自定义流水线 🚀 核心概念 关于 Towhee Towhee 是一个开源的 embedding 框架,包含丰富的数据处理算法与神经网络模型。通过 Towhee,能够轻松地处理非结构化数据&am…

从入门到实战:vue3路由知识点

本人在B站上关于vue3的尚硅谷的课程,以下是整理一些笔记。 1.两个知识点 1.路由组件通常存放在pages 或 views文件夹,一般组件通常存放在components文件夹。 组件可以分为: 1. 一般组件:亲手写标签出来的 2. 路由组件&#…

蓝桥杯练习笔记(十五)

蓝桥杯练习笔记(十五) 一、 首先要会欧拉函数去找到对应数字的所有互质的数的个数,然后要会快速幂去计算这种指数超级大的数字的幂积结果。 先学会第一个:欧拉函数。这个博主讲得不错,很清晰易懂。能够理解以下的公式…

ICLR 2024 | 鸡生蛋蛋生鸡?再论生成数据能否帮助模型训练

ChatGPT狂飙160天,世界已经不是之前的样子。 新建了人工智能中文站https://ai.weoknow.com 每天给大家更新可用的国内可用chatGPT资源 发布在https://it.weoknow.com 更多资源欢迎关注 随着生成模型(如 ChatGPT、扩散模型)飞速发展&#x…