• Jenkins 如何 使用企业权限 登录


    实现方式

    基于Jenkins的 “CAS Plugin” 和 “Role-based Authorization Strategy”插件实现
    CAS Plugin: 该插件支持使用CAS作为身份验证源,以支持单点登录(SSO)。一般的,企业都会有 这么一个服务,提供企业 统一身份管理,比如 百度的UUAP等。
    Role-based Authorization Strategy*: 使用基于角色的策略启用用户授权。角色可以全局定义,也可以为正则表达式选择的特定作业或节点定义。这样可以基于任务纬度进行权限的管理。

    配置详情

    主要是5步:
    1.Jenkins插件安装
    2. 为Jenkins配置域名和VIP
    3.在企业的统一身份管理平台申请权限;
    4.Jenkins配置CAS登录
    5.配置角色策略

    1.Jenkins插件安装

    一般的,可以通过Jenkins的插件管理进行安装插件,安装完毕后,需要重启 Jenkins ,重启后,在“插件管理–> 已安装”中确保插件已经生效。
    系统管理–> 插件管理
    CAS Plugin
    Role-based Authorization Strategy

    2. 为Jenkins配置域名和VIP

    • 为Jenkins 配置一个VIP,VIP 自身需要是80端口
    • 后端的Jenkins 端口随意
    • 然后为VIP绑定一个域名
    • 修改Jenkins的"Jenkins URL"为前面申请的域名(这个很重要,Jenkins在调企业的统一认证时,认证平台是根据这个域名进行校验的)
      系统管理-系统配置-Jenkins Location
      为什么需要这么做?
      当然,也可以不用配置域名,不用配置VIP,主要得看 你们企业统一身份管理平台 的要求。重点是:如果需要使用域名,那么就需要 通过域名可以直接访问 jenkins,不用加端口。不然,在使用 企业统一身份管理平台登录后,无法跳转到Jenkins(因为 企业统一身份管理平台 是直接用域名跳转过去的,无法配置端口。)

    3.在企业的统一身份管理平台申请权限

    这个可以去参考企业的权权限申请,一般的,需要指定域名的。

    4.Jenkins配置CAS登录

    4.1 系统管理 --> 全局安全配置 --> 安全域

    在“安全域”中选择"CAS “,然后需要填写 “CAS Server URL” 和 “CAS Protocol”。其中,

    • “CAS Server URL“就是企业统一身份管理平台提供CAS登录的地址,注意:填写到"login/"之前的内容即可;
    • “CAS Protocol” 版本 需要选择合适的版本,这个根据 企业统一身份管理平台 提供的 进行选择,注意的是:根据 Jenkins的说明 不知道时,选择 3.0版本,这样做是不行的,协议版本并不是兼容。
      在这里插入图片描述
    4.2 系统管理 --> 全局安全配置 --> 授权策略

    这里你可以选择 “登录用户可以做任何事”,这样任何用户登录都可以操作Jenkins。到这里,已经可以 通过 “使用企业权限”进行登录Jenkins了。你可以退出,再登录测试下。
    在这里插入图片描述
    或者使用“Role-based Authorization Strategy” 进行角色分配

    4.3 使用“Role-based Authorization Strategy” 进行角色分配

    4.3.1 系统管理 --> 全局安全配置 --> 授权策略
    选择 Role-Based Strategy
    在这里插入图片描述

    4.3.2 系统管理–> Manage and Assign Roles
    需要先配置“Manage Roles”,再配置“Assign Roles”
    在这里插入图片描述
    先配置一个 developer ,它有全局只读权限
    在这里插入图片描述
    配置一些Job的组,用于哪些用户可以使用 哪些 Job,可以使用正则匹配进行筛选
    在这里插入图片描述
    点击 “Assign Roles”进行角色分配
    在这里插入图片描述
    你需要把你自己配置到 admin的全局角色中,这个切记,不然 你保存后,就没admin用户了。
    在这里插入图片描述
    然后你还可以给其他人新增,这个新增的就是 你企业登陆的地址,一般是邮箱前缀。
    然后给用户增加 Job操作权限。
    在这里插入图片描述
    保存后,即可尝试。

    问题处理

    1.配置错误导致无法登陆,如何解决?

    1. 关掉jenkins
    2. 找到 Jenkins的家目录,一般是:~/.jenkins
    3. vim .jenkins/config.xml,安全里修改为 false
      在这里插入图片描述
    4. 保存后,启动Jenkins即可,这样,就不需要使用密码就能登录Jenkins 了。
    5. 然后 系统管理 --> 全局安全配置 选择 如下内容,这样你就又回到了最开始的admin登录了。
      在这里插入图片描述
  • 相关阅读:
    Mysql 基础
    Netstat 命令详解
    Ubuntu20配置Mysql常用操作
    QStandardPaths
    接口使用的最佳时机
    06. Web大前端时代之:HTML5+CSS3入门系列~HTML5 画布
    【MicroPython ESP32】通过sdcard模块读取SD卡实例
    Mysql安装
    超简单的视频截取方法,迅速提取所需片段!
    二叉树的存储结构
  • 原文地址:https://blog.csdn.net/zhinengyunwei/article/details/127981206