Appearance
Keycloak Sandbox 双沙箱环境
项目简介
Keycloak Sandbox 沙箱项目是面向开发者打造的一站式 Keycloak SPI 开发环境,支持快速开发、测试和部署 Keycloak 服务提供者接口(SPI)。本项目提供完整的开发基座、多版本支持和内置沙箱环境,旨在帮助开发者快速构建、定制和部署符合企业需求的 Keycloak 扩展。
项目基于 Maven 多模块架构,提供 Docker 版和 Release 版两种沙箱环境,支持任意 Keycloak 版本切换,同时内置多个 SPI 开发示例,大幅提升 Keycloak 扩展开发效率。
沙箱类型
根据您的需求,选择适合的沙箱环境:
Docker 版沙箱
- 功能:基于 Docker 容器运行 Keycloak 服务,适合需要隔离环境的开发者
- 环境要求:需要安装 Docker 和 Docker Compose
- 核心特性:支持任意 Keycloak 版本,一键启动和停止,环境隔离性好
- 使用方式:通过 IDE 直接运行启动类或使用 Maven 命令
- 界面预览:

- 文档链接:Keycloak Sandbox 文档
Release 版沙箱
- 功能:基于本地安装的 Keycloak 运行服务,适合需要更直接访问文件系统的开发者
- 环境要求:仅需要 JDK 和 Maven
- 核心特性:支持任意 Keycloak 版本,一键启动和停止,访问文件系统方便
- 使用方式:通过 IDE 直接运行启动类或使用 Maven 命令
- 界面预览:

- 文档链接:Keycloak Sandbox 文档
版本对比
| 对比项 | Docker 版沙箱 | Release 版沙箱 |
|---|---|---|
| 环境要求 | Docker + Docker Compose | JDK + Maven |
| 启动速度 | 首次启动较慢(需要下载镜像) | 首次启动较慢(需要下载 Release 包) |
| 环境隔离 | 好 | 一般 |
| 文件系统访问 | 较复杂(需要挂载卷) | 简单(直接访问本地文件) |
| 配置灵活性 | 高(通过 Docker Compose 配置) | 高(直接修改配置文件) |
| 适用场景 | 隔离环境开发、多版本并行测试 | 本地开发、需要频繁修改配置 |
核心功能
Keycloak Sandbox 沙箱项目
核心开发功能:
专为企业级 Keycloak 扩展开发深度打造,一站式重构 SPI 开发流程,开箱即用、零门槛适配多版本 Keycloak,完美支撑开发、测试、部署全流程需求,解决 Keycloak 版本切换复杂、SPI 开发调试困难等核心痛点。
- 01:多版本 Keycloak 支持 — 全局仅需在一个地方配置 Keycloak 版本,实现全局版本控制,开发者可根据项目需求灵活选择目标版本,无需担心版本兼容性问题,大幅提升开发适配效率。
- 02:双沙箱环境集成 — 内置两个沙箱环境:Docker 版沙箱和 Release 版沙箱,均支持启动类和停止类,可在 IDE 中右键直接运行 main 方法,方便快速开发和启动。
- 03:SPI 一键打包发布 — 提供 SPI 一键打包功能,支持打包类,可在 IDE 中右键直接运行 main 方法,自动将开发的 SPI 打包为 JAR 并发布到指定的沙箱环境,简化部署流程。
- 04:内置 SPI 开发示例 — 提供 3 个 SPI 开发示例:事件监听器扩展、国密算法扩展、用户存储扩展,覆盖 Keycloak 常见扩展场景,为开发者提供参考实现。
- 05:标准化项目结构 — 采用 Maven 多模块架构,清晰分离沙箱环境和扩展模块,便于项目管理和代码维护。
技术支持
- 技术支持:北京必码科技工作室
- 官方文档:https://bima.cc
- 官方店铺:https://bima.taobao.com
- 联系邮箱:bima.cc@qq.com
- 联系微信:e18929958
快速开始
- 配置 Keycloak 版本:在父
pom.xml文件中配置目标 Keycloak 版本 - 选择沙箱环境:根据您的需求选择 Docker 版或 Release 版沙箱
- 启动沙箱:通过 IDE 直接运行启动类或使用 Maven 命令启动沙箱
- 开发 SPI 扩展:选择 SPI 示例模块,修改或添加 SPI 实现
- 打包发布:使用扩展打包模块打包并发布 SPI 到沙箱环境
- 访问服务:通过
http://localhost:8080访问 Keycloak 服务 - 测试验证:在管理控制台中配置并测试 SPI 功能
注意事项
- 环境要求:确保 JDK 版本为 11+,Maven 版本为 3.9+(Docker 版沙箱还需要 Docker 环境)
- 版本配置:根据项目需求在父
pom.xml文件中配置合适的 Keycloak 版本 - 首次启动:首次启动沙箱时,会自动下载对应版本的 Docker 镜像或 Release 发行包,可能需要一些时间
- 默认账号:沙箱环境的默认管理员账号为用户名
root,密码root - 开发测试:本项目仅用于开发和测试目的,不建议在生产环境中使用
- 扩展定制:可以根据业务需求添加新的 SPI 扩展模块,或修改现有示例
- 版本切换:切换 Keycloak 版本后,需要重新构建项目并启动沙箱环境
- 配置修改:根据沙箱类型,修改相应的配置文件以适应您的环境
- 技术支持:如有技术问题,可联系北京必码科技工作室获取支持
- 合规使用:确保在使用本项目时遵守相关法律法规和行业规范
免责声明
本项目基于 GitHub 开源软件进行定制化开发,旨在为企业和开发者提供更便捷的项目基座解决方案。使用本项目时,请务必了解以下免责声明:
- 开源基础:本项目基于 GitHub 开源软件构建,遵循原开源协议的相关规定。
- 定制开发:我们对原开源软件进行了定制和扩展,以提供更优质的开发体验和功能支持。
- 责任限制:对于使用本项目可能产生的任何直接或间接的经济损失、数据丢失或其他问题,北京必码科技工作室不承担任何责任。
- 使用建议:在生产环境中使用本项目前,请进行充分的测试和验证,确保其符合您的业务需求和安全要求。
- 技术支持:我们提供技术支持服务,但不保证解决所有可能出现的问题。
- 合规使用:用户应确保在使用本项目时遵守相关法律法规和行业规范,不得用于任何违法或违规用途。