jenkins 用户与权限管理
jenkins的常用用户认证方式
jenkins共有5种常用的认证方式,其中我们最常用的认证方式有2种,分别是
Jenkins专有用户数据库
和LDAP
,在对jenkins用户进行管理前,首先需要对其进行配置。
使用Jenkins专有用户数据库进行创建
当选择
Jenkins专有用户数据库
进行用户认证后,就可以直接在jenkins中对用户进行管理了。
- 创建用户
- 点击
系统管理
->管理用户
->新建用户
->输入相关信息完成用户新建
- 点击
- 用户配置
- 点击
系统管理
->管理用户
->点击某用户右侧的工具按钮->自定义配置
->保存
- 点击
- 用户删除
- 点击
系统管理
->管理用户
->点击某用户右侧的删除按钮
- 点击
使用ldap创建用户
当选择
LDAP
认证后,用户的管理和认证由LDAP统一进行,其优势在于众多研发工具都支持LDAP接入,可以对研发账号进行统一管理,提升了用户使用的便捷性、账号管理员的效率以及账号管理安全性。
-
LDAP集成
- 点击
系统管理
->全局安全配置
->勾选LDAP
,输入以下几项内容后,即可完成LDAP接入.
- 完成配置后,进行配置校验测试,测试成功后,即可
保存配置
。
- 点击
用户权限控制
随着公司规模的扩大,项目的持续增多,需要对权限对用户的权限进行控制,可以使用
Role-based Authorization Strategy
插件来进行基于角色的授权,插件安装链接
创建角色
-
修改授权策略,点击
系统管理
->全局安全配置
->授权策略
->勾选Role-Based Strategy
,点击保存
-
创建角色,点击
系统管理
->Manage and Assign Roles
->Manage Roles
,此处共有3中角色类型,分别是Global roles
,Item roles
,Node roles
,这三中类型的角色的权限,jenkins都做了相应的说明,只需把鼠标悬停在某一权限上即可弹出,用户可以根据自己的实际情况进行角色权限配置。- Global roles:用于控制用户的全局角色,一般需要给予普通用户read权限,否则登录后会提示
没有全部/Read权限
,在该角色类型中,Administer和Read权限级别最高不受其他角色类型影响。
- Item roles: 用于控制用户对项目权限的控制,当同一个用户同时属于全局角色和项目角色,项目角色的权限要高于全局角色(Administer和Read除外)。
- Node roles: 用于控制节点,如非必要不对用户做限制。
- Global roles:用于控制用户的全局角色,一般需要给予普通用户read权限,否则登录后会提示
角色分配
在创建好权限角色后,如果用户不绑定角色,会出现登录无权限的情况,因此在创建好角色后,应立即对账号进行授权,至少有一个账号授予Administer权限。
-
点击
系统管理
->Manage and Assign Roles
->Assign Roles
,根据实际情况收取用户对应的权限- 全局权限
- 项目权限
- 全局权限
-
登录wsdevops和yang用户进行验证,发现权限得到了控制。