参照:Freeipa的简单搭建配置,完成一下与jenkins的简单集成,用户组与权限的简单配置!
先说一下实现目标与规划:









jenkins用户组中 将zhangpeng用户设置为jenkins member managers:



将tanyuqiang huozhonghao 加入jenkins-develop组:

将tanyuqiang用户加入jenkins-qa组:

关于jenkins的安装我是直接本地启动了一个容器:
mkdir -p /data/jenkins/jenkins_home
docker run -itd --name jenkins -p 8080:8080 -p 50000:50000 -e JAVA_OPTS="-Dorg.apache.commons.jelly.tags.fmt.timeZone='Asia/Shanghai'" --privileged=true --restart=always -v /data/devops5/jenkins_home:/var/jenkins_home jenkins/jenkins:2.387.1-lts-jdk11
docker logs -f jenkins
chmod 777 -R /data/jenkins/jenkins_home/
docker restart jenkins
docker logs -f jenkins
web登陆jenkins服务器输入日志中的bf4052ecfdae48edbff5xxx 或者在 /var/jenkins_home/secrets/initialAdminPassword中找到


进入插件安装页面:

为了节省时间只安装了Localization: Chinese (Simplified) Pipeline Role-based Authorization Strategy LDAP插件

等待ing

初始化了admin用户

保存完成:

就绪,开始使用jenkins:

创建两个测试认识qa-111 develop-111(两个前缀标识,区分对应jenkins组方便授权!)



系统管理-全局安全配置:

修改安全域,选择ldap:

ldap相关配置:


测试ldap 配置:

保存:

使用ldap zhangpeng用户测试登陆:

系统管理-全局安全配置-授权策略-Role-Based Stragegy 保存



刷新一下其他浏览器登陆的ldap用户zhangpeng 发现没有全部/Read权限

系统管理-Manage and Assign Roles

Manage Roles 管理角色

管理角色:
Global roles:

Add 添加jenkins-develop jenkins-qa role给了read权限!
Item roles
role to add 添加jenkins-develop role Pattern 匹配了 develop.* ,jenkins-qa role Pattern 匹配了 qa.* 具体权限按需来,为这里都设置了任务的build cancel Didcover Read 视图的read

Assign Roles
Global roles Add group jenkins-qa 对应 jenkins-qa role jenkins-develop对应jenkins-develop role

Item roles也这样: jenkins-develop 用户组对应role jenkins-develop jenkins-qa用户组 对应role jenkins-qa


登陆tanyuqiang用户可以发现develop-111 qa-111任务可运行符合

but 登陆zhangpeng 用户是没有权限的,因为只针对了jenkins 组下两个子用户进行了授权!虽然他是组的管理员,他只能在freeips控制台管理jenkins组下的用户以及自权限

火狐浏览器登陆admin账户无法登陆了用上面我们初始化jenkins生成的密码,且我们并没有将zhangpeng用户设置为管理员,怎么破?
使用freeipa admin 用户名密码登陆:

当然了这里最好的是对zhangpeng用户进行admin授权:

刷新火狐浏览器zhangpeng用户拥有Administer权限:

也可以Manage and Assign Roles 这里管理角色创建一个角色zhangpeng 绑定Administer权限,然后zhangpeng 用户绑定zhangpeng 角色!这个完全可以看自己的习惯喜好,进行个性化配置!
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。