Jenkins针对不同的项目视图对不同的用户进行权限分配

简介: Jenkins创建用户并分配不同视图的权限根据不同的部门分配不同的角色,角色成员只能看到自己部门视图内部的jenkins jobJenkins版本:2.249因安装了中文包的原因,语言大多以中文的方式显示,但不影响配置使用

Jenkins创建用户并分配不同视图的权限

根据不同的部门分配不同的角色,角色成员只能看到自己部门视图内部的jenkins job

Jenkins版本:2.249

因安装了中文包的原因,语言大多以中文的方式显示,但不影响配置使用Jenkins要想以视图分配权限,需要注意一个规范:在创建视图时以项目的缩写命名再加上项目的具体名称,例如:dev_boss,dev就是项目的整体名称,boss就是其中的一个模块,这样一来我们做权限分配时,以dev开头就能匹配到所有dev的项目并且在一个视图中显示

1.安装权限管理插件

Manage Jenkins -> Manage Plugins 选择安装Role-based Authorization Strategy插件

安装成功

将授权策略设置为 Role-Based Strategy

设置完成后即可在security中看到Manage and Assign Roles

2.创建2个不同的账号及job视图

新建视图,以test1视图为例,test2一致

指定任务到该视图

新建用户,以test1为例,test2配置一致

点击系统管理—管理用户—新建用户

用户和视图均已创建完毕

3.创建Jenkins角色

Jenkins两种角色的说明:

Global roles:全局角色,主要用于配置用户的功能权限

Item roles:项目角色,主要管理项目的权限

点击系统管理—Manage and Assign Roles

点击Manage Roles

3.1.创建全局角色

在role to add中填写角色的名称,然后勾选对应的权限即可

**注意:**job权限这里只选择一个create即可,不要勾选read否则所有项目都可以查看到,如果希望用户都看到项目但是不能操作也可以勾选read

3.2.创建项目角色

项目角色主要是用户对项目有什么权限,可以给所有权限

在创建项目角色的时候,Pattern所填的内容是正则匹配

test1.*表示以test1开头的项目,test.*|Test.*表示以test或Test开头的项目

全局角色和项目角色添加完后要点击下面的save进行保存

4.将角色分配给用户

角色是用来决定用户有什么权限,因此需要和用户进行绑定

点击Assign Roles

在 User/group to add 输入用户的名称点击add即可添加用户,然后根据不同的用户勾选不同的角色对应,全局角色和项目角色都需要添加,最后点击保存

5.验证用户权限

test1用户登录

直接看all即可,可以看到只有test1开头的项目能被看到,所有视图都在这里显示,但是只能看到test1开头的项目

test2用户登录

直接看all即可,可以看到只有test2开头的项目能被看到,所有视图都在这里显示,但是只能看到test2开头的项目

其他视图的job无法查看

目录
相关文章
|
6月前
|
jenkins Java 持续交付
【项目集成工具】Jenkins
【项目集成工具】Jenkins
|
5月前
|
jenkins Java 持续交付
运用Jenkins实现Java项目的持续集成与自动化部署
在新建的Jenkins Job中,我们需要配置源码管理,通常选择Git、SVN等版本控制系统,并填入仓库地址和凭据。接着,设置构建触发器,如定时构建、轮询SCM变更、GitHub Webhook等方式,以便在代码提交后自动触发构建过程。
225 2
|
24天前
|
自然语言处理 jenkins 测试技术
Jenkins适合什么样的项目
【10月更文挑战第18天】Jenkins适合什么样的项目
29 3
|
5月前
|
Java jenkins 持续交付
Java项目jar包启动脚本,适用jenkins或定时任务或手动执行
Java项目jar包启动脚本,适用jenkins或定时任务或手动执行
340 3
|
1月前
|
jenkins Shell 持续交付
Jenkins持续集成GitLab项目 GitLab提交分支后触发Jenkis任务 持续集成 CI/CD 超级详细 超多图(二)
Jenkins持续集成GitLab项目 GitLab提交分支后触发Jenkis任务 持续集成 CI/CD 超级详细 超多图(二)
67 0
|
6月前
|
jenkins 网络安全 持续交付
新的centos7.9安装docker版本的jenkins2.436.1最新版本-后端项目发布(四)
新的centos7.9安装docker版本的jenkins2.436.1最新版本-后端项目发布(四)
125 3
|
1月前
|
jenkins Shell 持续交付
Jenkins持续集成GitLab项目 GitLab提交分支后触发Jenkis任务 持续集成 CI/CD 超级详细 超多图(一)
Jenkins持续集成GitLab项目 GitLab提交分支后触发Jenkis任务 持续集成 CI/CD 超级详细 超多图(一)
136 0
|
3月前
|
jenkins 测试技术 持续交付
Jenkins 在多分支项目中的应用
【8月更文第31天】在现代软件开发实践中,分支管理是一项至关重要的策略,它允许开发团队在不同的功能开发、修复bug或进行实验时不会干扰主干代码。随着项目的复杂度增加,维护多个分支并确保它们的质量变得越来越具有挑战性。Jenkins 作为一款流行的持续集成(CI)和持续部署(CD)工具,提供了强大的功能来支持多分支项目的自动化测试和部署。本文将探讨 Jenkins 如何帮助管理多分支项目,并提供具体的代码示例。
91 0
|
3月前
|
jenkins Java Shell
jenkins学习笔记之十三:配置SonarScanner扫描Java项目
jenkins学习笔记之十三:配置SonarScanner扫描Java项目
|
3月前
|
jenkins Java 持续交付
自动化魔法:用Jenkins打造Java项目的持续部署流水线
【8月更文挑战第13天】在软件开发中,自动化部署是提高效率与减少错误的关键。Jenkins作为一款强大的持续集成工具,支持Java项目的自动化构建、测试与部署。通过配置Jenkins及其丰富的插件生态(如Git和Maven插件),可实现从代码提交到上线的全自动化流程。此流程包括从GitHub自动拉取代码、使用Maven构建项目,并通过如`mvn clean install`命令执行构建,最后利用插件如“Publish Over SSH”将制品部署至远程服务器。此外,还可配置邮件通知等后处理动作确保发布的稳定可靠。借助Jenkins,开发者能显著加速软件交付周期,同时减少手动操作带来的风险。
145 0