authentik开源身份认证与管理平台-与 Jenkins 集成(5)

文章目录

什么是 Jenkins?

领先的开源自动化服务器 Jenkins 提供了数百个插件,用于支持构建、部署和自动化任何项目。

准备

在本指南中,使用了以下占位符:

jenkins.company 是服务安装的 FQDN。

authentik.company 是 authentik 安装的 FQDN。

authentik配置

为了支持 Jenkins 与 authentik 的集成,您需要在 authentik 中创建一个应用程序/提供程序对。

  1. 作为管理员登录到 authentik 并打开 authentik 管理员界面。

  2. 导航至应用程序 > 应用程序 ,然后单击使用提供程序创建以创建应用程序和提供程序对。 (或者,您可以先单独创建提供程序,然后创建应用程序并将其连接到提供程序。)

    • 应用程序 :提供一个描述性名称、一个可选的应用程序类型组、策略引擎模式和可选的 UI 设置。

      应用名称:Jenkins, Slug会自动带出:jenkins

    • 选择提供者类型 :选择 OAuth2/OpenID Connect 作为提供者类型。

    • 配置提供者 :提供名称(或接受自动提供的名称)、用于此提供者的授权流程以及以下必需配置。
      注意客户端 ID、 客户端密钥和 slug 值,因为它们将在稍后需要。

      设置一个 Strict 重定向 URI 为 https://jenkins.company/securityRealm/finishLogin

      选择任何可用的签署密钥。

      确保禁用加密。

    • 配置绑定 (可选):您可以创建一个 绑定 (策略、组或用户)来管理用户"我的应用程序"页面上应用程序的列表和访问权限。

  3. 单击提交以保存新应用程序和提供程序。

Jenkins 配置

导航到 Jenkins 插件管理器: 管理 Jenkins > 插件 > 可用插件 。在搜索框中搜索oic-auth插件,然后安装插件。之后必须重新启动 Jenkins,以确保插件已加载。
Manage Jenkins > Plugins > Available plugins > oic-auth

重新启动后,再次导航到管理 Jenkins,然后单击安全 。

修改安全域选项,选择使用 OpenID Connect 登录 。

在客户端 ID 和客户端密钥字段中,输入您创建的提供商的客户端 ID 和客户端密钥值。

将配置模式设置为自动配置 ,并将已知配置端点设置为 https://authentik.company/application/o/\<application_slug>/.well-known/openid-configuration

选中覆盖范围复选框,然后在新输入字段中输入范围 openid profile email。

在页面下方,展开高级部分,输入以下值:

  • 用户名称字段名称 :preferred_username
  • 全名欄位名 :name
  • 电子邮件字段名称 :email
  • 群组名称 :groups

我们还建议在页面下方启用启用代码交换的证明密钥选项。

此外,为了在配置错误的情况下恢复 Jenkins 访问权限,我们建议配置以下选项的配置"在 OpenID 服务不可用时的跳窗选项。如何配置此选项超出了本文件的范围,由 OpenID 插件进行说明。

相关推荐
乘云数字DATABUFF2 天前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
荣--3 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森4 天前
动手实战学 Docker — 从零到集群编排完全指南
运维
Avan_菜菜4 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
SelectDB5 天前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维
XIAOHEZIcode7 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
用户0328472220707 天前
如何搭建本地yum源(上)
运维
大树8810 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠10 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质10 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务