网站注,口碑营销话题,三合一网站建设什么意思,建设公司官网介绍大家好#xff0c;我是蓝胖子#xff0c;前面几节我讲述了jenkins的语法以及我是如何使用jenkins对测试和正式环境进行发布的。但正式环境使用jenkins还有一点很重要#xff0c;那就是权限管理。正式环境的权限往往不能对所有人开放#xff0c;以及要做到每次发布都是谁在操… 大家好我是蓝胖子前面几节我讲述了jenkins的语法以及我是如何使用jenkins对测试和正式环境进行发布的。但正式环境使用jenkins还有一点很重要那就是权限管理。正式环境的权限往往不能对所有人开放以及要做到每次发布都是谁在操作 都有迹可循这样才能方便以后排查问题。所以今天我们就来看看jenkins的权限管理应该如何来做。 安装Role-based Authorization Strategy 插件
我们采用RBAC 基于角色的方式进行授权需要在jenkins上安装插件在Jenkins的Manage Jenkins→Plugins→Available Plugins 中安装 之后在Jenkins的Manage Jenkins→Security 中开启基于角色的权限策略。 然后在jenkins的配置栏里就能看到多出来的角色权限配置了。 配置角色
紧接着我们可以配置相关的角色并且为角色分配对应模块的权限。角色分为3种类型Global roles,Item roles(项目角色),Agent roles(和节点操作权限相关的角色),其中Global roles拥有最高的权限如果为它分配job的读写权限那么用户如果绑定了这个角色将会允许读取所有的job不管用户是不是拥有的项目角色的权限。 温馨提示 job 和item在jenkins中的概念都可以看成是jenkins的创建的编译部署项目。 如下图所示拥有一个admin角色拥有jenkins的所有权限我们还创建了一个dev角色拥有对jenkins界面的读权限(可能说法不太准确但事实是如果普通角色的用户没有overall的读权限那么他进去jenkins后将什么也不不能看并且提示其权限不足) 接着我们再分配两个针对具体构建项目的角色develop和prodev如下图所示分别是针对测试环境和正式环境的项目创建的角色其中pattern能够用正则表达式匹配具体构建的项目名。对job的权限勾选了buildcancelread所以这两个角色都能够对他们看到的具体项目拥有构建取消构建和读权限。 分配角色
接着我们再把配置好的角色分配给具体的用户如下图所示用户同时拥有devdevelop和prodev3个角色。 之后用该用户登录jenkins可以看到正确的项目构建页面同时拥有生产环境和测试环境的构建权限。效果如下 这里我是对用户同时分配了对正式环境和测试环境有构建权限的角色给一个用户真实开发中可以对少部分人开启这个权利毕竟知道正式环境配置的人越少系统越安全。