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

Rundeck社区版单点登录(SSO)预认证模式实现咨询

Rundeck社区版SSO(预认证模式)实现方案

一、可运行的预认证模式示例(基于Nginx前置代理)

这是目前仍广泛使用的成熟方案,核心是通过反向代理完成身份认证,再将用户信息传递给Rundeck:

1. Nginx配置片段

server {
    listen 443 ssl;
    server_name rundeck.example.com;

    # SSL配置(自行补充证书、加密套件等内容)

    location / {
        # 此处对接你的SSO认证逻辑(如LDAP、OAuth2代理等)
        # 示例:假设已通过外部认证拿到用户名,注入请求头
        proxy_set_header X-Remote-User $remote_user;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;

        proxy_pass http://localhost:4440;
    }
}

2. Rundeck配置修改(rundeck-config.properties)

# 启用预认证模式
rundeck.security.authentication.provider=preauth
# 从请求头获取用户名
preauth.username.header=X-Remote-User
# 可选:自动创建不存在的用户
preauth.createUser=true
# 可选:传递用户角色(需代理层提供角色信息)
preauth.role.header=X-Remote-Roles
preauth.role.delimiter=,

3. 验证流程

  • 启动Nginx和Rundeck服务
  • 访问Nginx代理的Rundeck地址,完成外部SSO认证后,会自动登录到Rundeck系统

二、近期新增的实现方法

1. 社区版OIDC插件支持

现在Rundeck社区版可通过第三方插件实现OpenID Connect(OIDC)SSO,无需依赖预认证代理:

  • 安装插件:在Rundeck插件市场搜索并安装OpenID Connect Authentication插件
  • 配置插件:在系统设置中填入OIDC提供商的客户端ID、密钥、授权端点等信息
  • 启用插件:将认证provider设置为oidc,重启Rundeck后即可使用OIDC账号登录

2. JWT预认证扩展

部分场景会用JWT令牌作为预认证凭证:在代理层验证JWT合法性后,将用户名、角色信息注入请求头,Rundeck只需调整预认证的请求头参数即可适配,这种方式比传统预认证更安全,适合微服务架构环境


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.23 13:52:32