Jenkins的角色权限管理

Jenkins的角色权限管理

现在公司的项目繁杂,项目的发版和构建不能靠人工来记忆和维护,这时jenkins来进行自动化发版或者构建就变的十分重要。

但是由于项目越来越多,不同人维护的项目之前掺杂的不同的项目,容易弄错或者管理的不便。这是我们就需要对项目进行权限管理。实现对项目用角色的权限管理。

Jenkins的权限选择

Jenkins的权限有很多,例如矩阵权限等等,但是都很复杂,而且不太好维护,我们这里推荐一个权限管理的插件,依靠角色控制实现权限管理,让我们设置不同的角色,对不同的项目进行管理。

Jenkins的角色控制依赖插件:Role-Based Strategy

如果需要域账号,这里也可以下载一个插件:Active Directory plugin

这里的二个插件可以相互配合使用。

需要到插件库下载安装,这里不在多说插件的安装。

Jenkins启动该授权策略

  1. Manage Jenkins(系统设置)Configure Global Security(全局安全配置)界面进行配置
  2. Authorization(授权)里面选择Role-Based Strategy(角色控制)

Jenkins的项目管理

我们在创建不同的项目的时候,需要对创建的项目名进行一些规则来取名,这样方便后面我们使用正则来区分不同的项目,已达到我们对不同的项目的权限控制目的。

Jenkins的角色管理

在前面的项目管理的基础上,我们就可以进行角色管理

  1. Manage Jenkins(系统设置)Manage and Assign Roles(角色管理配置)界面进行配置;
  2. 进入Manage Roles界面;
  3. Global roles创建一个read的公共角色,这个角色,只需要给Overall -> Read的权限。让所有人都可以进到Jenkins的界面。(非常重要);
  4. Item roles,创建不同的角色,eg: Role -> prodPattern -> .*prod正则过滤项目,并给相应的权限。

Jenkins的用户授权

前面的角色设置完成后,这时我们就可以到人员授权界面进行授权了。

  1. Manage Jenkins(系统设置)Manage and Assign Roles(角色管理配置)界面进行配置;
  2. 进入Assign Roles界面;
  3. Global roles里面,需要给AnonyMous(未注册人员)-> read 的权限;
  4. 如果需要管理员权限,就在3的基础上,添加域帐号或者账号进行授权即可;
  5. Item roles,如果需要给所有默认的登录者测试环境权限,这个可以添加一个系统默认的账户authenticated(登录账户) -> prod、sitb等;
  6. 如果需要添加额外人员权限,就在5的基础上,添加域帐号或者账号进行授权即可;

注意

Jenkins有两个内置角色

Anonymous :尚未登录的用户
authenticated : 登录用户

如此以来,我们这里只需配置authenticated相关权限,然后把Anonymous的权限取消掉,这样以来,所有未经登陆的用户,就无法查看任何内容啦!

猜你喜欢

转载自blog.csdn.net/qq_36607860/article/details/123711081