You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Rundeck创建非管理员用户异常:默认带admin角色且配置用户无法登录

Rundeck 非管理员用户配置异常排查

核心问题根因

当前JAAS认证链配置存在两处逻辑问题,直接对应遇到的两个故障:

  • 所有用户额外携带admin角色:认证链第一个加载的JettyPamLoginModule配置了supplementalRoles="admin"参数,该参数会给所有通过PAM认证(即服务器本地系统用户)的登录主体无条件追加admin角色,和realm.properties中配置的角色列表无关。
  • realm.properties中创建的纯文件用户无法登录:当前配置的JettyRolePropertyFileLoginModule仅负责读取realm.properties中的角色映射关系,不提供用户名密码校验能力;同时配置的useFirstPass="true"参数指定该模块不会独立校验密码,只会复用前序PAM模块的认证结果。realm.properties中创建的operationsuser2没有对应本地系统用户时,第一步PAM认证就会直接失败,自然无法完成登录。

注意:JettyRolePropertyFileLoginModule是角色补充模块,并非用户认证模块,可同时支持文件内账号密码校验+角色读取的认证模块是PropertyFileLoginModule。

修复方案

根据实际用户管理需求二选一即可,所有配置修改完成后需执行systemctl restart rundeckd重启服务生效。

方案1:同时支持本地系统用户登录+realm.properties内置用户登录,取消默认admin权限

修改/etc/rundeck/jaas-loginmodule.conf配置,调整模块加载顺序、移除不合理的默认角色配置,参考配置如下:

RDpropertyfilelogin {
  // 优先加载文件认证模块,校验realm.properties中内置用户的账号密码与角色
  org.eclipse.jetty.jaas.spi.PropertyFileLoginModule sufficient
        debug="true"
        file="/etc/rundeck/realm.properties";

  // PAM认证模块后置,校验本地系统用户身份,移除supplementalRoles配置避免默认授予管理员权限
  org.rundeck.jaas.jetty.JettyPamLoginModule requisite
        debug="true"
        service="sshd"
        storePass="true";

  // 角色映射模块,为通过PAM认证的系统用户匹配realm.properties中配置的角色
  org.rundeck.jaas.jetty.JettyRolePropertyFileLoginModule required
        debug="true"
        useFirstPass="true"
        file="/etc/rundeck/realm.properties";
};

配置生效后逻辑如下:

  • 登录时优先匹配realm.properties中的内置账号,匹配成功直接完成认证,无需对应本地系统用户,权限完全按文件中配置的角色生效。
  • 本地系统用户登录时走PAM校验,不会再被默认追加admin角色,权限以realm.properties中对应用户名配置的角色为准,未配置角色的用户仅能拿到基础访问权限。

方案2:仅使用realm.properties维护全量用户,关闭PAM系统用户登录

如果不需要支持服务器本地系统用户直接登录Rundeck,可简化JAAS配置,仅保留文件认证模块:

RDpropertyfilelogin {
  org.eclipse.jetty.jaas.spi.PropertyFileLoginModule required
        debug="true"
        file="/etc/rundeck/realm.properties";
};

该配置下仅realm.properties中定义的用户可登录Rundeck,权限完全由文件内配置的角色决定,不会出现默认携带admin角色的问题。

补充说明

当前配置的operations角色ACL策略逻辑正确,用户成功绑定operations角色后,即可正常获得指定项目的只读权限、指定作业的读取/执行权限、节点读取权限和临时命令执行权限,无需额外调整。

内容的提问来源于stack exchange,提问作者Acceptance

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 10:06:20