技术分享 | Jenkins 中,如何管理用户及其相对应权限?
本文节选自霍格沃兹测试开发学社内部教材
上线 Jenkins 做自动构建后,随着项目越来越多,Jenkins 中配置的项目越来越多,需要根据不同项目组用户来控制项目的权限,实现 A 用户只能查看自己的项目,只有构建权限和查看权限且不能编辑项目,同理 B 用户也不能看到 A 用户的构建项目。
权限配置
启用用户安全配置,Manage Jenkins -> Configure Global Security -> Security Realm -> Jenkins’ own user database
用户可以自由注册,启用之后在 Jenkins 首页可以看到 Sign-up 入口,团队规模不大(10 人左右)建议不要启用用户自由注册选项,减少用户管理时间成本。管理员可以从后台直接添加用户,从 Jenkins 管理控制台页面 -> Manage Jenkins -> Manage user,进行添加、修改、删除用户等操作
不同的用户在 Jenkins 中可操作的内容不同,其优势是分权管理,避免误操作带来的麻烦。比如误删任务、误改代码等。常见的权限配置有
管理员:配置 Jenkins , 创建和更新 job,运行 job,查看日志
任务开发:创建和更新 job,运行 job,查看日志
使用者:运行 job, 查看日志
用户操作的权限控制,必须由管理员来完成。Manage Jenkins -> Configure Global Security -> Authorization -> 安全矩阵 | 项目矩阵授权策略
案例说明
使用管理员账号分别创建用户 a,用户 b 。在 b 用户 Read 权限。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SGPF6y5g-1665540945430)(upload://5gUwUwA4It8kp5cBH8HHxO4BmiS.png)]
管理员账号创建 ajob,并在 ajob 中 General 启动用项目安全,赋予用户 a 构建和查看 job 的权限。管理员账号创建 bjob,并在 bjob 中 General 启动用项目安全,赋予用户 b 构建和查看 job 的权限。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xlpsOhPq-1665540945431)(upload://n24flYL2hDGYmG3Ezem14xwpkA6.png)]
登录用户 a,可以看到 ajob,并可以构建和查看 ajob。没有配置和删除 ajob 的权限。用户 b 同理
点击下方链接免费领取:性能测试+接口测试+自动化测试+测试开发+测试用例+简历模板+测试文档
http://qrcode.testing-studio.com/f?from=infoQ&url=https://ceshiren.com/t/topic/22265
评论