Jenkins篇-权限管理

我使用 权限管理插件是Role Strategy Plugin,他可以对构建的项目进行授权管理,让不同的用户管理不同的项目,将不同环境的权限进行区分

1)安装插件

系统管理》插件管理查找Role-based Authorization Strategy

实现需求:

开发环境需要一个通用用户,需要对开发环境的所有项目拥有只读的权限
测试环境需要一个通用用户,需要对测试环境的所有项目拥有只读的权限
其他环境暂时不创建用户
系统用户:
1、dev:dev环境所需用户
2、test:test环境所需用户

jenkins 项目命名规则介绍:
开发环境:所有项目的名称均以dev-开头,如:dev-cg-api
测试环境:所有项目的名称均以test-开头,如:test-cg-api

插件安装完成后,可以Configure Global Security中看到:

 选择Role-Based Strategy 保存, 此时不要退出账号, 退出后可能无法登录

在Mange Jenkins界面会出现Manage  and Assign Roles

2)权限配置

a)下面来配置Global roles中的三个角色

 

admin:超级管理员,它拥有所有的全局权限
dev_roles:dev环境的用户,它只可以看到全局的Overall面板
test_roles:test环境的用户,它只可以看到全局的Overall面板
先说下,这里为什么要添加dev_roles和test_roles的Overall的read权限,如果不添加的话,这些普通用户登录到jenkins则会提示:用户没有Overall/read权限

2:下面来配置 Project roles 中的两个角色

 分别为:dev_roles和test_roles
dev_roles:匹配所有dev-.*的项目,并分配view、read及workspace等权限
test_roles:匹配所有test-.*的项目,并分配view、read及workspace等权限

3:配置Assign Roles
上面的roles和权限已经配置好了,那怎么让他生效呢?或者说让谁拥有这些roles的权限呢?
下面我们来将定义好的规则分配给具体的用户,前面我们提到了系统用户,那么我们现在有两个用户:dev and test

之前我们在dev_roles和test_roles中定义了overall/read权限,现在将用户和roles关联起来,这样dev和test用户就拥有了改权限
接着配置Item roles

之前我们在Project roles中定义了dev_roles和test_roles规则,分别对应dev-.和test-.的项目及权限,在这里我们将用户和roles关联起来,这样对应的用户就拥有了对应roles的权限。

原文地址:https://www.cnblogs.com/xingxia/p/jenkins_auth.html