Jenkins高级操作,欢迎阅读
1: 根据不同账号显示不同视图

当公司项目的多起来之后,不同项目组负责不同项目,特别是开发环境需要开放给开发人员自行打包部署。这里就要求我们将不同的项目分给不同的账号。
1)下载安装 Role-based Authorization Strategy 插件来管理 Jenkins 用户权限;
Manage Jenkins - Manage Plugins -
可选插件中安装 Role-based Authorization Strategy
中文路径是:系统管理-插件管理-搜索
Role-based Authorization Strategy 然后安装
记得重启Jenkins。实在不行,若安装在Tomcat下重启tomcat,
楼主就是没重启之前一直不生效。 非tomcat试试 service Jenkins restart

若遇到jenkins升级报错An attempt to save the global configuration was made before it was loaded。可下载对应hpi文件放到安装目录,重启即可解决:
2)开启权限全局安全配置
首先开启权限全局安全配置:系统管理-全局安全配置;
安全域,选择 Jenkins专有用户数据库;
授权策略,选择刚安装的插件Role-Based Strategy;
英文版的同学请自行脑补


3)创建不同的角色并分配不同的视图
Global roles (全局角色):管理员等高级用户可以创建基于全局的角色
Item roles(项目角色):针对某个或者某些项目的角色
Slave roles(节点角色):节点相关的权限
系统管理->Manage and Assign Roles->Manage Roles
首先创建一个 baseRole :该角色为全局角色。
这个角色【只需要】分配 Overall下面的Read权限,
是为了给所有用户绑 定最基本的Jenkins访问权限。
注意:如果不给后续用户绑定这个角色,会报错误:
用户名 is missing the Overall/Read permission;
然后是分配项目权限item role 这里划重点:
1)用 ".*" 做正则匹配,添加之后鼠标单击看是否匹配到项目;
2)项目带层级的,点到项目里面看具体路径,比如:
k8s-demo 下有个 demo_java_k8s ,路径是:k8s-demo/demo_java_k8s





3)给不同的账号分配不同的角色
系统管理->Manage and Assign Roles->Assign Roles
划重点:
所有账号都吧base权限分配上,不然进去之后是空白;
千万别手残把管理员的权限去掉了,不然又浪费两个小时时间了。
先应用,再保存,ok
请看成果


2: 误删管理员权限之后的操作
希望不会有同学看到这一步O(∩_∩)O哈哈~
这里以Tomcat安装举例:
找到Jenkins的home目录:系统管理->系统配置。
连接服务器进入该目录,找到config.xml 并编辑,
将 <useSecurity>true</useSecurity> 改为false。
重启tomcat 或者 service jenkins restart;
修改安全域选择 Jenkins’ own user database,否则会导致无法登录。
授权策略我用的是 Role-Based Strategy(用户角色策略),这里再重新勾回去。然后重新配置一下权限,就可以恢复到之前的状态。



874

被折叠的 条评论
为什么被折叠?



