Jenkins权限管理之Matrix Authorization Strategy

Posted 低级知识传播者

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jenkins权限管理之Matrix Authorization Strategy相关的知识,希望对你有一定的参考价值。

一、权限管理概述

jenkins的权限管理,我目前使用的是Role-based Authorization Strateg。这个很简单,权限是jenkins已经定死了的,就那些。该插件可以让我们新建角色,可以将权限赋予给角色,

角色可以再赋予给用户。

然后突然想知道Matrix-based security(安全矩阵)和Project-based Matrix Authorization Strategy(项目矩阵授权策略)怎么玩的,以下是一些实践。

 

二、Matrix Authorization Strategy

1.插件介绍与配置

从官网的参考资料:https://jenkins.io/doc/book/managing/security/#authorization可以知道,第一章里我说的这两个选项其实不是jenkins自带的,是插件扩展来的。

 

这个插件就是 Matrix Authorization Strategy Plugin

这个插件的使用很简单,基本就是用户与权限的对应关系。另外,在下图处配置的,算是全局安全配置。

 

项目中是可以覆盖这部分配置的,也可以直接继承。在job的配置页面,见下图:

 

详细的配置细节可参考:

http://www.tothenew.com/blog/jenkins-implementing-project-based-matrix-authorization-strategy/

 

3.注意点

有心的朋友发现了,上面的权限只是和用户对应,没有用户组的概念。你在上面的“添加用户/组”里面输入的字符串,都会被当成用户名,而不是组名。

那要怎么创建自己的组呢?答案是:不行,jenkins不支持。

请参考:https://stackoverflow.com/questions/11855944/how-to-create-and-add-users-to-a-group-in-jenkins-for-authentication

 

 那那个组是干嘛的呢,说是要配合LDAP和Active Directory。我大概了解了下Active Directory,需要配置Domain Controller。(针对windows的话)

 

也就是我们的windows计算机需要加入域,这样呢,域里面的机器就可以用他们的用户名和密码直接来登录jenkins了。(表述不当的话,可以自行查找下)

如果是配置LDAP的话,也需要单独的LDAP服务器地址。

所以呢,我的理解是,LDAP和Active Directory都需要使用外部服务器(LDAP服务器或域服务器)内的已有的用户数据。用已有的用户名密码来登录。

 

4.结论

如果只是想简单地用基于角色来给jenkins配置用户权限的话,直接还是使用Role-based Authorization Strateg吧。

以上。

 

以上是关于Jenkins权限管理之Matrix Authorization Strategy的主要内容,如果未能解决你的问题,请参考以下文章

Jenkins之权限分配

Jenkins系列之-—04 配置用户和权限控制

Jenkins持续集成 之 GitLab 组权限设置

持续集成之 Jenkins 通过 Deploy 插件热部署 java 程序

Jenkins系列之-—05 节点配置

Jenkins配置:添加用户和管理权限