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 插件进行说明。

相关推荐
考拉讲支付17 小时前
延迟分账 / 核销分账的技术实现方案:服务完成后再分钱,到底怎么设计?
大数据·运维·人工智能·微信小程序·小程序·系统架构
ADAI_Bowen18 小时前
写文章 - 知乎
大数据·运维·人工智能
云宏信息18 小时前
超融合和存算分离怎么选?从性能、可靠性、扩展、成本四个维度讲述如何精准匹配架构选型 | 附企业降本轻量云方案
运维·服务器·架构·云计算
咸鱼梦想家π19 小时前
Linux开发工具(下)
linux·运维·服务器
云飞云共享云桌面20 小时前
机械制造研发部门:一台SolidWorks云主机替代 10 台传统图形工作站
运维·服务器·网络·3d·自动化·制造
j7~21 小时前
【ProtoBuf】(篇一)初识 ProtoBuf
运维·服务器·序列化·protobuf·protobuf的适用特点
丰锋ff21 小时前
用户管理命令
linux·运维·服务器
迪菲赫尔曼21 小时前
【基础篇 08】让VS Code连接服务器:界面在本地,文件保存到远端
运维·服务器·vscode·yolo·论文·教程·ultralyt
xianyuCcCcCCCcc1 天前
Kubernetes :健康检查、认证授权与可视化面板
运维·云原生·kubernetes·dashboard
Zenova EdgeOS1 天前
Linux 日志实战:用 journalctl 精准检索与治理工业边缘日志
linux·运维·chrome