Jenkins配置:添加用户和管理权限
参考文章:http://www.cnblogs.com/zz0412/p/jenkins_jj_14.html
今天给大家说说使用Jenkins专有用户数据库的配置,和一些常用的权限配置。
配置用户注册
在新安装好的jenkins中,默认是没有设置用户权限的,也就是说进入主页就是管理员权限。为了安全,我们需要配置用户权限。
1. 配置Jenkins权限,添加管理员账户
点击 左侧的 Manage Jenkins—>Configure Global Security进入如下界面:
(1)选中 “Enable security”;
a.在Security Realm中 选中”Jenkins’ own user database“ 并勾选 “Allow users to sign up”
b. 在 Authorization中,选择 “Matrix-based security”, 在 User/group to add 文本框中,输入admin,点击“Add”按钮,可以看到用户admin被添加到User/group表格中;
c. 在User/group表格中,给admin选择所有权限。
以上操作如下图:
设置如上图,点击 Apply,点击 保存 按钮后,页面会跳转到 用户登录页面。页面右上角也会出现登录/注册的选项。
有的同学走到这儿 会有疑问"那用户和密码不是还没有设置吗?",当然没有设置用户名和密码。
执行如下操作:
点击 右上角 Sign Up, 进入 Sign up 页面
输入用户名 admin,密码 111111,确认密码,全名,E-mail 地址,点击 Sign up 按钮,页面会提示 Success,默认已经用admin用户登录了,而且admin是管理员,因为之前给admin选择了所有权限。
2.添加其他用户(非管理员用户)
(1)用户需要在jenkins页面注册一个账户。方法:点击 右上角Sign up并填写相关信息,完成用户注册。(当然,注册后可以登录,但是没有其他权限)
(2)admin用户为该用户添加权限。方法:
a. 点击左侧的 Manage Jenkins—>Configure Global Security
b. 在User/group to add 文本框中,输入cheers(刚才注册的用户名),点击“Add”按钮,用户被添加到User/group表格中。
c. 在到User/group表格中,找到对应的用户cheers,并选择相应的权限,然后Apply,保存。
到现在,用户添加成功了,用新的用户登录jenkins后,就可以看到 已经有相关操作权限了。
各种权限如下(在配置页面将鼠标放到该权限上即可查看帮助):
Overall(全局)Credentials(凭证)Slave(节点)Job(任务)View(视图)
AdministerReadRunScriptsUploadPluginsConfigureUpdateCenterCreateUpdateViewDeleteManageDomainsConfigureDeleteCreateDisconnectConnectBuildCreateDeleteConfigureReadDiscoverBuildWorkspaceCancelCreateDeleteConfigureRead
管理员(最大)阅读运行脚本升级插件配置升级中心创建更新查看删除管理域配置删除创建断开连接连接构建创建删除配置阅读重定向构建查看工作区取消构建创建删除配置阅读
其中有一些比较特别的权限:
最大的权限是Overall的Administer,拥有该权限可以干任何事情。
最基本的权限是Overall的Read,用户必须赋予阅读的权限,不然什么都看不到。
Job的Discover权限是一个奇葩的权限,帮助说Discover比Read的级别更低。如果匿名用户(没有访问job的权限)直接访问一个Job的Url将重定向到登陆页面。(经测试,这个权限应该是被废弃了。)
Credentials的ManageDomains这个权限没有看懂干嘛的,有懂的大家一起交流哈!
ps:如果有个用户被赋予了Overall的Read,并没有被赋予Job的Read权限,那么该用户就无法访问job。原因:没有权限。
其他都是一些基本的权限,大家根据自己的需求选择。
小技巧:
(1)注册用户或者admin时,会有提示 用户已经存在,需要到 “/var/lib/jenkins/users”目录中将相应用户删掉(以linux为例)。
(2)如果是老的jenkins系统忘记admin的密码,参考 前一篇文章:
jenkins 忘记admin用户账号密码
(3)每个用户后都有1-2个图标,第一个是反选功能(删除当前已选择的权限,选择其他所有权限),第二个是删除功能(删除该用户)
在Job中配置项目安全,如下图:
参考文献