Jenkins集成Keycloak

Keycloak


  1. 先用docker容器部署一个Keycloak服务,可以参考以下网址:
    https://hub.docker.com/r/jboss/keycloak
    我简单搭一个马上可以用的服务,不考虑volume
docker run -d -p 8080:8080 -e KEYCLOAK_USER=admin -e KEYCLOAK_PASSWORD=admin jboss/keycloak
  1. 配置
    2.1 新建Realm


    新建Realm

    2.2 新建Client


    新建Client

    2.3 配置Client
    配置Client

    之后到Installation在Format Option处选择Keycloak OJDC JSON把json粘贴出来一会配置Jenkins使用。
  2. 新建用户
    可以参考我之前的文章的创建用户部分
    https://www.jianshu.com/p/a538af117112

Jenkins

  1. 此处也使用docker简单部署一个Jenkins服务,可以参考以下网址:
    https://hub.docker.com/_/jenkins
    如下:
docker run -p 8080:8080 -p 50000:50000 -v /opt/jenkins_home:/var/jenkins_home jenkins

容器启动后,可以按照界面操作,拿到第一次登陆的密码,安装所需插件,密码其实看log是有输出的,不必费劲找到文件,命令如下:

docker logs 

登陆后再Manage Jenkins选项中选择Manage Plugins,安装一个KeyCloak的插件Keycloak Authentication Plugin。
安装成功后开始配置。

  1. 配置
    2.1 在Manage Jenkins选项中选择Configure System,找到如下配置,把刚刚从Keycloak中粘贴出来的json粘贴进去。


    Configure System配置

    2.2 在Manage Jenkins选项中选择Configure Global Security,勾选Enable security,然后如下配置:


    Security配置

    保存后则会退出登录,跳转到Keycloak的登录页面
    Keycloak登录页面

    接下来用我们在Keycloak中创建的用户登录就可以了,不需要在Jenkins主动创建这个用户,看见如下页面,我们就登录成功了,再次对出,或者访问Jenkins都会跳转到Keycloak的登录校验页面。
    Jenkins主页

    真正开放公网访问,我们中间可能还会加一些代理,加密什么的,例如httpd、nginx、https等,这些可以之后慢慢更新~

想写一些东西分享,欢迎转载,请注明出处。
-板凳儿儿
https://www.jianshu.com/p/1829ae460e36

你可能感兴趣的:(Jenkins集成Keycloak)