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吧。

以上。

 

posted @ 2018-04-26 13:25  三国梦回  阅读(5293)  评论(0编辑  收藏  举报