debian

Debian 系统 Jenkins 权限如何设置

小樊
45
2025-07-02 00:03:18
栏目: 智能运维

在 Debian 系统上设置 Jenkins 权限通常涉及以下几个步骤:

安装 Jenkins

如果你还没有安装 Jenkins,可以使用包管理器进行安装。例如,在基于 Debian 的系统上,可以使用以下命令:

sudo apt update
sudo apt install jenkins

启动 Jenkins 服务

安装完成后,启动 Jenkins 服务:

sudo systemctl start jenkins

配置 Jenkins

默认情况下,Jenkins 会以系统用户 jenkins 运行。为了管理权限,你可以创建一个新的系统用户,并将该用户添加到 Jenkins 的管理组中。

  1. 创建一个新用户
sudo adduser jenkins-admin
  1. 将新用户添加到 jenkins 用户组
sudo usermod -aG jenkins jenkins-admin

配置 Jenkins Web 界面权限

编辑 Jenkins 的配置文件 /etc/default/jenkins,找到以下行并进行修改:

Jenkins_USER=jenkins-admin

修改配置后,重启 Jenkins 服务以应用更改:

sudo systemctl restart jenkins

启用 Role-based Authorization Strategy

使用管理员用户登录 Jenkins,打开系统管理 - 全局安全配置,找到授权策略。默认情况下,Jenkins 创建的新用户拥有所有权限,因为授权策略的默认配置为“登录用户可以做任何事”,这显然不能满足正常的权限管理需求。将授权策略更改为 Role-Based Strategy(该选项需要在正确安装了 Role-based Authentication Strategy 插件后才能出现)。

创建角色

  1. 进入系统管理 - 管理用户,将授权策略更改为 Role-Based Strategy 之后,安全配置列表中就会出现 Manage and Assign Roles,在其中进行角色管理的相关操作。
  2. 点击 Manage Roles,进入角色管理页面。角色共分为三类:Global Roles、Item Roles、Node Roles。这里先创建的是一个全局角色,目的是创建一个用于普通用户的角色,使分配该角色的用户不具备管理权限,只有普通的任务操作权限。

分配角色

  1. 为项目/团队添加 project role 以“demo”项目为例,添加 manager 和 user 两种 role。

    • role: demo-manager - pattern: “^demo-[a-zA-Z]*”
    • role: demo-user - pattern: “^demo-[a-zA-Z]*”
  2. 为项目/团队成员分配 role。通过以下配置,开发团队成员就只能看到自己的 “demo” 项目。

验证权限

使用不同用户登录 Jenkins,验证其权限。例如,管理员用户可以查看所有的系统管理权限和所有的项目,而普通用户只能看到自己被授权的项目。

通过以上步骤,你可以在 Debian 系统上成功配置 Jenkins 的权限控制,确保系统的安全性和可控性。

0
看了该问题的人还看了