keycloak-11.0.2修改数据源为mysql

基于OAuth2与Spring Security构建自研认证授权中心实战指南 在现代分布式系统架构中,身份认证与授权是保障应用安全的核心基石。其基本原理是通过一套标准化的协议,验证用户身份并控制其对资源的访问权限。OAuth2作为行业标准的授权框架,定义了安全的授权流程,而JWT(JSON Web Token)则以其紧凑、自包含的特性,成为实现无状态会话的理想载体。结合Spring Security这一强大的安全框架,开发者可以高效构建安全、可扩展的认证授权体系。这种技术组合的价值在于,它能够统一处理用户身份认证与权限管理,解决分布式环境下的会话共享难题,并为微服务架构、多端接入及第 阅读详情

下载mysql驱动

https://repo1.maven.org/maven2/mysql/mysql-connector-java/8.0.13/mysql-connector-java-8.0.13.jar

创建数据源module

在keycloak根目录下创建目录keycloak/modules/system/layers/base/com/创建mysql/main/两层目录进入后
将驱动文件copy到此目录下
新建文件:module.xml,内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<module name="com.mysql" xmlns="urn:jboss:module:1.5">
    <resources>
        <resource-root path="mysql-connector-java-8.0.13.jar"/>
    </resources>
    <dependencies>
        <module name="javax.api"/>
        <module name="javax.transaction.api"/>
        <module name="javax.servlet.api" optional="true"/>
    </dependencies>
</module>

编辑配置数据源文件

编辑standalone.xml,位置在keycloak-11…0.2\standalone\configuration
若为集群模式编辑standalone-ha.xml
寻找drivers标签,默认有一个h2数据库的配置,我们要在同级增加一个mysql的配置,内容如下:

<driver name="mysql" module="com.mysql">
    <xa-datasource-class>com.mysql.cj.jdbc.MysqlXADataSource</xa-datasource-class>
</driver>

注释掉下面h2数据库KeycloakDS这段配置,注意,不要注释掉上方的ExampleDS配置项,程序启动会报错。

<datasource jndi-name="java:jboss/datasources/KeycloakDS" pool-name="KeycloakDS" enabled="true" use-java-context="true" statistics-enabled="${wildfly.datasources.statistics-enabled:${wildfly.statistics-enabled:false}}">
    <connection-url>jdbc:h2:${jboss.server.data.dir}/keycloak;AUTO_SERVER=TRUE</connection-url>
    <driver>h2</driver>
    <security>
        <user-name>sa</user-name>
        <password>sa</password>
    </security>
</datasource>

新增mysql配置如下

<datasource jndi-name="java:jboss/datasources/KeycloakDS" pool-name="KeycloakDS" enabled="true" use-java-context="true">
    <connection-url>jdbc:mysql://localhost:3306/keycloak?useSSL=false&amp;serverTimezone=GMT%2B8&amp;characterEncoding=UTF-8</connection-url> <!-- 增加时区东八区,增加强制UTF8编码,让其能够写入特殊字符,关闭ssl警告 -->
    <driver>mysql</driver>
    <security>
        <user-name>用户名</user-name>
        <password>密码</password>
    </security>
</datasource>

手工建立keycloak库,一定要手工创建数据库,否则启动报错

CREATE DATABASE `keycloak` CHARACTER SET 'utf8' COLLATE 'utf8_general_ci'

重新启动keycloak

standalone.bat

登录后初始化的过程有点慢,不要着急
http://localhost:8080/auth/

入门教程请参考官方文档

https://www.keycloak.org/docs/latest/getting_started/index.html

Seatunnel-Web二次开发实战:从零构建ETL管理工具 本文详细介绍了Seatunnel-Web二次开发实战经验,从环境搭建到核心功能改造,包括定时调度、任务分类管理和元数据智能推荐等关键模块的实现。通过具体案例展示了如何将技术复杂的ETL工具转化为业务人员易用的管理平台,大幅提升医院数据同步效率。文章特别分享了版本兼容性、前端配置等常见问题的解决方案。 阅读详情

相关推荐

个人数字基座:轻量全栈构建生活操作系统

在数字生活碎片化加剧的今天,‘个人数字基座’正成为个体掌控信息主权、整合物理与数字世界的核心基础设施。它并非传统网站或博客,而是基于轻量级全栈部署的生活流操作系统,强调低维护成本、数据主权和状态流转能力。其技术原理融合静态站点生成、SQLite嵌入式数据库、边缘传感采集与本地化身份认证(如OpenID Connect),以可丢弃性设计保障长期可用性。相比依赖SaaS平台的方案,该架构天然支持家庭事务协同、健康档案管理、时空记忆编织等真实生活场景,尤其适配自由职业者、双职工家庭及知识型手艺人。本文聚焦‘Jax

dianlu5775的博客 741

Keycloak 15 安装与使用Mysql数据库

standalone启动后,默认使用的是内部自带的h2数据库,如果要在生产上使用,显示不太合适,需要用其它数据库替代。下面简单介绍如何让Keycloak使用外部Mysql数据库。

achaodzyj的专栏 1823

2023五大开源数据目录深度对比:血缘、搜索、权限与实时性实战选型指南

数据目录是现代数据栈中实现元数据管理、血缘追踪与可信发现的核心基础设施,其本质是通过自动化采集结构层、语义层和行为层元数据,构建可搜索、可治理、可协作的数据资产图谱。随着Snowflake、Databricks、Delta Lake等现代数据平台普及,传统Hadoop-centric方案已难以满足跨源血缘解析、字段级权限控制与低延迟搜索等关键需求。本文聚焦开源数据目录的五大能力支柱——元数据采集广度、血缘解析精度、搜索响应性能、ABAC权限模型成熟度及API可扩展性,结合真实生产环境压测数据(如10万表规模

weixin_33749242的博客 383

keycloak 配置 mysql_keycloak集群

安装步骤下文采用的主备模式下载下载keycloak:https://downloads.jboss.org/keycloak/6.0.1/keycloak-6.0.1.tar.gz下载keycloak-gatekeeper:#用于代理kibana,prometheushttps://downloads.jboss.org/keycloak/6.0.1/gatekeeper/keycloak-gat...

weixin_39769767的博客 1393

LangGraph+FastAPI生产级安全实战:JWT与API Key双模鉴权

在AI工程化落地中,LangGraph工作流与FastAPI服务的边界常成为安全薄弱点。理解HTTP鉴权原理是基础,而真正决定系统韧性的,是JWT承载身份上下文、API Key标识调用方的双模协同机制——它兼顾人类用户会话、服务间通信与定时任务等多维场景。这种设计不仅规避了OAuth2生命周期管理难题和Session跨域限制,更通过内存缓存+KMS签名+Schema级configurable校验,将安全开销压至毫秒级,保障推理延迟不受侵蚀。典型应用于金融风控、智能客服等对租户隔离、权限收敛与审计溯源有强要求

chiyingliao3565的博客 387

企业级AI治理实战:基于NIST AI RMF的AISMM工具部署与风险评估

人工智能风险管理已成为企业技术战略的核心议题。其核心原理在于通过结构化框架,系统化地识别、评估和缓解AI系统在公平性、安全性、隐私性等方面的潜在风险,确保AI应用的可靠与合规。这一过程的技术价值在于将抽象的治理原则转化为可执行、可度量的工程实践,从而有效防范算法偏见、数据泄露等现实风险。典型的应用场景包括金融信贷模型的合规审计、生成式AI内容审核系统的风险管控,以及AI项目全生命周期的自动化治理门禁。本文探讨的AISMM工具企业级部署方案,正是将NIST AI RMF这一国际权威框架与企业现有技术栈深度融合

weixin_34023982的博客 306

Keycloak使用mysql数据库

Keycloak使用mysql数据库下载Mysql驱动添加module.xml配置文件修改standalone.xml配置文件启动Keycloak keycloak standalone启动后,默认使用的是内部自带的h2数据库,我们暂使用时通常需要修改为本地mysql存储,下面简单介绍如何让keycloak使用外部mysql数据库。 下载Mysql驱动 下载地址:mysql-connector-java-8.0.13.jar 添加module.xml配置文件 在keycloak根目录下创建目录keyclo

m0_46267097的博客 3618

【信息科学与工程学】【数据中心】第二十三篇 DDC网络-满足大规模训练、推理、存储区网络(Roce2组网)-第三篇 流量采集和监控

1.2 详细采集协议部署矩阵 协议类别协议名称部署位置采集频次采集策略采集内容采样率数据量(GB/天)处理方式物理层采集​LLDP/CDP所有网络设备30秒轮询全量采集邻居信息、设备能力100%0.1实时处理PoE状态接入交换机60秒轮询全量采集PoE供电状态、功率100%0.05实时处理温度/风扇所有网络设备30秒轮询全量采集温度、风扇转速100%0.1实时处理光功率光模块60秒轮询全量采集发送/接收光功率100%0.2实时处理网络层采集​NetFlow v9核心/边界30秒导

weixin_49199313的博客 729

keycloak源码部署配置postgre数据库

1.执行命令编译源码 mvn -Pdistribution -pl distribution/server-dist -am -Dmaven.test.skip clean install 执行完成,项目打包在项目目录\distribution\server-dist\target下 2.下载postgresql的驱动,下载路径如下 https://jdbc.postgresql.org/download.html https://jdbc.postgresql.org/downloa

testTop的博客 1791

【信息科学与工程学】【数据中心】 第二十三篇【智算中心】DDC网络-满足大规模训练、推理、存储区网络(Roce2组网)-01

设计维度目标值设计原则实现手段评估指标性能目标​端到端延迟<10ms低延迟优先RDMA优化,拓扑扁平化延迟分布,p99延迟可用性目标​99.99%可用性冗余设计多路径,设备冗余MTBF,MTTR吞吐目标​核心交换>10Tbps无阻塞交换大带宽核心,Clos架构对分带宽扩展性目标​线性扩展至1000节点模块化设计标准Pod架构扩展成本函数安全目标​零信任架构纵深防御微分段,加密传输安全事件数能效目标​PUE<1.2绿色计算高效设备,智能调度能效比(W/IOPS) 2. 物理拓扑设计 2.1 数据中心物理

weixin_49199313的博客 559

ENVI5.6 自动化流程:GF系列卫星影像批处理与质量优化

本文详细介绍了如何利用ENVI5.6构建针对GF-2、GF-6、GF-7系列卫星影像的自动化批处理流水线。通过配置Batch Processing工具,实现从正射校正到图像融合的全流程批量处理,并分享参数设置、质量监控与故障排查的实战经验,旨在显著提升海量遥感影像的处理效率与成果质量。

efc1234567的博客 603

Keycloak切换外部数据库

Keycloak默认使用嵌入式关系数据库H2,真实生产环境肯定是不符合要求的,在其官方文档中有这么一段话 We highly recommend that you replace it with a more production ready external database. The H2 database is not very viable in high concurrency ...

半斤米粉闯天下的博客 5427

【TestNG自动化测试框架详解】

TestNG是一款设计测试用例执行流程的测试框架。

weixin_43936332的博客 1538

keycloak中文使用文档_Keycloak使用mysql数据源

前言keycloak默认使用h2内存数据库来存储数据,这意味着如果重启,数据将丢失。以下以单节点模式为例子,描述如何配置mysql作为数据源,持久化存储数据。首先创建一个数据库名为keycloak,字符集需要使用uf8编码而不是utf8mb4,如果你使用utf8mb4在创建表时会报错,错误信息如下:Row size too large. The maximum row size for the u...

weixin_39875503的博客 1201

UE4 GamePlay框架深度解析:从蓝图到C++构建多人游戏核心

在游戏开发与实时交互应用领域,一套清晰、可扩展的底层框架是项目成功的关键。GamePlay框架作为虚幻引擎(UE4/UE5)的核心架构,定义了游戏世界中对象交互、状态管理与网络同步的基本原理。它通过职责分离的设计模式,将游戏规则(GameMode)、全局状态(GameState)、玩家状态(PlayerState)、可操控实体(Pawn/Character)及其控制器(Controller)等核心类有机组织起来,确保了逻辑的清晰性与多人游戏数据的一致性。其技术价值在于为开发者提供了一套经过验证的最佳实践,大

weixin_33924770的博客 611

用Arduino Mega2560和TB6612驱动MG513电机,我踩过的坑和最佳实践

本文详细介绍了使用Arduino Mega2560和TB6612驱动模块控制MG513直流电机的实战经验,包括硬件连接、PWM配置、编码器信号处理等关键技巧。通过优化电源系统、信号线布局和软件控制算法,有效解决了电机抖动、转速不稳等常见问题,为机器人底盘和自动化项目提供了可靠解决方案。

weixin_42520573的博客 201

keycloak11 mysql xadatasource 数据源配置

1.将mysql数据库驱动 jar 包复制到 keycaloak 目录 modules\system\layers\base\com\mysql\main 下, 新建文件module.xml 编辑 <?xml version="1.0" encoding="UTF-8"?> <!-- ~ JBoss, Home of Professional Open Source. ~ Copyright 2010, Red Hat, Inc., and individual cont

bubaiyi的博客 720

使用 MATLAB/Simulink 搭建一个步进电机细分控制系统的仿真模型

步进电机(Stepper Motor)是一种将电脉冲信号转换为角位移或线位移的执行元件,广泛应用于数控机床、3D打印、机器人、精密仪器等领域。其特点是开环控制、定位精度高、响应快、无累积误差。然而,传统步进电机在整步或半步运行时存在振动大、噪音高、转矩波动明显等问题。为了解决这些问题,细分控制技术被广泛采用。细分控制通过对绕组电流进行精确控制,使转子在两个整步之间实现平滑移动,从而提升电机的运行平稳性和位置精度。本教程将带你使用搭建一个步进电机细分控制系统的仿真模型,并通过仿真分析其。

amy_mhd的博客 426

keycloak创建跨库数据源

keycloak在书写User Storage Provider的时候,若登录数据分散到不同的应用数据库中,采用User Storage Provider实现的时候,需要对不同的Deployment使用不同的数据,考虑到多个数据库操作的事物问题,则必须使用Xa-Datasource。下问对keycloak的standalone.xml的配置文件做以下记录,有需要者可参考。 1 <su...

weixin_30483495的博客 424

GRCNN抓取网络学习2【自制Jacquard数据集训练】

请先完成【机械臂视觉抓取从理论到实战】,这样有利于下面操作的理解!然后第二步是GRCNN抓取网络1【Jacquard数据集等效抓取集制作】,有了自己的数据集输入到GRCNN中是三种文件,接下来就是准备训练GRCNN网络啦!grasps.txtRGB.png本文帮大家根据自制Jacquard数据集训练GRCNN抓取网络,其中包含数据格式的对齐,列举了常见的几种训练方法,相信能坚持到这里的都应该试试顺利了吧!接下来会针对GRCNN调优,期待一下下吧,那就别宁色你的三连。

vor234的博客 2790

【C语言】字符常量详解

字符常量是C语言中处理字符数据的重要工具。通过单引号括起一个字符,我们可以方便地使用字符常量进行字符判断、字符运算和字符串处理等操作。理解字符常量的表示方法、使用场景和ASCII码对应关系,对于编写高效的C语言程序至关重要。

LuckiBit 5017

授权中心核心能力与部署实践:从OAuth 2.0到微服务安全集成

在微服务架构和分布式系统中,认证与授权是保障应用安全的核心基础。其原理基于标准化的授权框架,如OAuth 2.0和OpenID Connect,通过集中式的令牌颁发与验证机制,实现用户身份和访问权限的统一管理。这项技术的核心价值在于将复杂的安全逻辑抽象为可复用的服务,从而降低各业务微服务的安全开发成本,并确保权限策略的一致性与可靠性。典型的应用场景包括作为微服务架构的统一安全网关、为Web、移动App等多端应用提供单点登录(SSO),以及安全地开放API供第三方集成。本文聚焦于授权中心这一具体实现,深入探讨

weixin_33906657的博客 443

N32G430学习笔记11- systick使用函数-延时函数

N32学习笔记11- systick使用函数-延时回调函数-延时函数

Car12 1416

SuperMap GIS 基础产品 FAQ 集锦(20260828)

11.3.0问题原因】缺少9.1.2版本做扩展开发的文件。解决办法】将扩展开发的文件拷贝到指定目录;建议将扩展开发功能重新使用11.3.0编译,避免接口废弃或不兼容错误。11.3.0解决办法】发布页面的接口只显示默认的,没办法更改,只有发布之后再添加接口。

SuperMap技术控 269

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

企业内部调查与安全审计:技术视角下的合规边界与系统落地

在企业信息安全管理中,日志分析与权限管理是两大基础支柱。通过统一身份认证与细粒度授权,企业可以清晰追踪每次敏感访问的操作者、时间与行为链路,这为合规审计和内部调查提供了可信依据。本文从技术工程视角出发,介绍操作审计日志的采集、存储与查询方法,解析数据脱敏、异常行为基线等关键机制,并基于Spring Boot与Elasticsearch搭建一套最小化内部访问审计系统。同时,围绕GDPR、等保2.0等合规要求,探讨企业监控员工的合法边界与最小化采集原则。无论是应对数据泄露风险,还是完善安全体系,这套方法论都能帮

weixin_34218579的博客 823

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

别啃晦涩官方文档!吃透 K8s 权限、可视化面板、动态 PV、有状态应用全流程笔记!

本文完整讲解K8sRBAC之ClusterRole/ClusterRoleBinding、ServiceAccount服务账号原理与实操;演示Kuboard、Kubernetes‑Dashboard两大Web可视化面板部署登录;详解StorageClass动态存储制备,实战Local‑Path、NFS‑Provisioner自动创建 PV;深入StatefulSet有状态控制器,对比Deployment,Headless Service原理,完整部署Nginx、ETCD、Redis 集群。

Augustsky12138的博客 493

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

上一篇: eureka源码
下一篇: java对mysql查询特殊字符转义
牧竹子
博客等级 码龄17年 572粉丝 233原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值