keycloak && docker安装 &&spring boot 集成使用

1. 基础依赖
a. docker  mysql
b. dokcer  keycloak-mysql
 
2. 安装
 
  mysql (注意实际使用最好使用本地数据卷)
docker run  --name mysql -e MYSQL_DATABASE=keycloak -e MYSQL_USER=keycloak -e MYSQL_PASSWORD=password -e MYSQL_ROOT_PASSWORD=root -d mysql
 
 keycloak-mysql 
docker run  -d --name keycloak  -p:8084:8080 --link mysql:mysql -e MYSQL_DATABASE=keycloak -e MYSQL_USERNAME=keycloak -e MYSQL_PASSWORD=password  -e KEYCLOAK_USER=admin -e KEYCLOAK_PASSWORD=admin jboss/keycloak-mysql
 
3. 配置
    因为模式是使用的https 所以需要进行登录系统修改
    登录数据库进行修改
  
docker exec -it mysql /bin/sh
mysql -uroot -proot 
use keycloak
update REALM set ssl_required='NONE' where id = 'master'
docker stop keycloak && docker start keycloak or (docker restart keycloak)
 
        
   4. 界面 
 登录界面
 
操作界面
 
5. spring boot  使用
   参考Git 项目例子 中的spring boot 
https://github.com/keycloak/keycloak-quickstarts
 
   结合的例子  
service-springboot-rest
app-springboot
 
  修改配置
  service-springboot-rest
server.port = 8081
keycloak.realm= quickstart
keycloak.auth-server-url= http://xxxxxxxx:8084/auth
keycloak.ssl-required= none
keycloak.resource= product-service
keycloak.public-client= true
keycloak.securityConstraints[0].authRoles[0] = user
keycloak.securityConstraints[0].securityCollections[0].patterns[0] = /products
 
app-springboot
server.connection-timeout=5000
spring.freemarker.cache=false
server.port = 8080
keycloak.realm=quickstart
keycloak.auth-server-url=http://xxxxxx:8084/auth
keycloak.ssl-required=none
keycloak.resource=app-springboot
keycloak.public-client=true
product.service.url=http://localhost:8081/products
 
 备注: 需要在keycloak 添加对应的user  已经给予用户role 
 登录跳转,查看到的用户session 
 
 
6. 总结
   keycloak 使用起来还是比较简单的,系统集成的功能也是比较多的
 
7. 参考资料
https://github.com/keycloak/keycloak-quickstarts
http://www.keycloak.org/documentation.html
https://github.com/rongfengliang/springboot-keycloak

posted on   荣锋亮  阅读(2622)  评论(0编辑  收藏  举报

编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2016-08-17 强弱主机模式
2014-08-17 转 Katana 项目入门

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示