翼度科技»论坛 云主机 LINUX 查看内容

Keycloak部署及与Jenkins集成SSO配置

6

主题

6

帖子

18

积分

新手上路

Rank: 1

积分
18
Jenkins 与 keycloak集成

搭建keycloak

运行keycloak服务

创建docker-compose.yaml文件,运行docker-compose up -d 拉起服务
  1. version: '3'
  2. networks:
  3.   keynet:
  4.     driver: bridge
  5. services:
  6.   postgresql:
  7.     image: 'bitnami/postgresql:latest'
  8.     environment:
  9.       - POSTGRESQL_DATABASE=bitnami_keycloak
  10.       - POSTGRESQL_USERNAME=bn_keycloak
  11.       - POSTGRESQL_PASSWORD=passw@rd
  12.     networks:
  13.       - keynet
  14.   keycloak:
  15.     image: 'bitnami/keycloak:latest'
  16.     environment:
  17.       - KEYCLOAK_CREATE_ADMIN_USER=true
  18.       - KEYCLOAK_ADMIN_USER=user
  19.       - KEYCLOAK_ADMIN_PASSWORD=bitnami
  20.       - KEYCLOAK_MANAGEMENT_USER=manager
  21.       - KEYCLOAK_MANAGEMENT_PASSWORD=bitnami1
  22.       - KEYCLOAK_DATABASE_HOST=postgresql
  23.       - KEYCLOAK_DATABASE_PORT=5432
  24.       - KEYCLOAK_DATABASE_NAME=bitnami_keycloak
  25.       - KEYCLOAK_DATABASE_USER=bn_keycloak
  26.       - KEYCLOAK_DATABASE_PASSWORD=passw@rd
  27.       - KEYCLOAK_DATABASE_SCHEMA=public
  28.       - KEYCLOAK_HTTP_PORT=8080
  29.       - KEYCLOAK_BIND_ADDRESS=0.0.0.0
  30.     depends_on:
  31.       - postgresql
  32.     ports:
  33.       - 8080:8080
  34.     networks:
  35.       - keynet
复制代码
keycloak 与 OpenLDAP集成

创建新的realm, 名为SSO

选中新建的SSO Realm, 然后点击User federation -> Add new provider -> LDAP


点击保存, 然后进入刚配置的provider, 点击右上角Action -> Sync all users同步所有用户。 同步完成即可在User的页签下, 使用通配符*查询到导入的所有的用户。
keycloak与jenkins集成

keycloak 配置

创建点击Client -> Create client, clientid 填jenkins。按照下图填写client信息。

点击Client Scope -> Create Client Scope, Name填写audience, 其他默认。

点击新建的audience, 选择Mapper -> Add Mapper -> By Configuration, 选择audience, 根据图片创建mapper。Included Client Audiencee 选择上面建的jenkins

点击Client -> jenkins -> Client Scopes -> Add Client Scope, 勾选上一步建的Client Scope, 点击Add选择Default.

jenkins client页面选择Action -> Download adapter config, 把json字符串复制出来备用.
jenkins配置

建议先备份jenkins的配置文件, 以免keycloak配置错误导致的jenkins无法登陆。
jenkins 安装 Keycloak Authentication Plugin 插件,
点击Manage Jenkins -> Configure Global Security -> Security Realm, 选择Keycloak Authentication Plugin, 保存。

点击Manage Jenkins -> Configure System 找到KeyCloak Json, 把上面导出的字符串贴进去。保存
注意!!!需要把导出json中的confidential-port和policy-enforcer 字段删掉, 否则jenkins会无法登陆

随后在新窗口打开jenkins, 即可重定向到keycloak登陆页面。

来源:https://www.cnblogs.com/Chinori/p/17091126.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

举报 回复 使用道具