安全实践 · 安全与合规

待环境验证

统一身份接入、权限复核与离职回收

区分 LDAP 目录与应用授权,串联 GitLab、JumpServer 和 Kubernetes 的正反向验收、令牌会话清点与离职回收证据。

Kubernetes临时远程访问安全加固
阅读导引 · 理解后再操作

这篇知识解决什么问题

本篇以人员生命周期为线索核对目录、应用角色和独立凭据,解释为何账号停用后仍可能残留访问。先建立唯一主体映射,再分别读取各系统授权与会话证据;机器身份和紧急账号有不同交接责任,不能随人员离职一并猜测性删除。

主体一致不等于权限语义一致

同一个人的目录组、项目角色与命名空间绑定可能名称相似,但允许资源、动作和继承关系不同。台账应记录稳定主体标识和具体授权事实,而非只做名称对齐;有重名、邮箱变化或多认证来源时先验证映射,避免把别人的权限误归到离职主体。

凭据生命周期需要独立于人员状态

个人登录、访问令牌、部署密钥和机器任务的持有者及到期机制不完全相同,目录禁用只能解释它能影响的路径。把每类凭据列明用途、接替人和撤销能力,才能同时避免残留访问与误停业务;无法立即撤销的路径需显式记录风险期限与责任。

进入文章正文
关联架构图解7 个组件 · 点击展开

借用场景图区分 LDAP 目录、GitLab/JumpServer 应用授权和独立 Kubernetes 认证及 RBAC。图没有 LDAP 直接登录 Kubernetes 的路径,也未展示全部认证插件、缓存期限或令牌关系,现场必须按真实版本补齐。

查看场景架构与实施步骤
参考架构 · 非实时拓扑

目录身份、应用授权与会话回收分层架构

目录仅提供受限身份查询,各应用独立授权;Kubernetes 使用单独评审的认证机制和 RBAC。回收证据覆盖目录、角色、凭据和已有会话。

  • 数据 / 请求
  • 控制 / 管理
  • 观测 / 查询

点击组件,在图下方查看职责;连线编号对应流向解读。小屏可横向滚动,或直接展开文字说明。

目录身份、应用授权与会话回收分层架构:组件关系图目录仅提供受限身份查询,各应用独立授权;Kubernetes 使用单独评审的认证机制和 RBAC。回收证据覆盖目录、角色、凭据和已有会话。 受控测试主体 → GitLab:应用登录请求;GitLab → LDAP 目录:受限目录认证;受控测试主体 → JumpServer:实名终端登录;JumpServer → LDAP 目录:受限目录查询;受控测试主体 → 集群认证入口:独立集群身份;集群认证入口 → Kubernetes RBAC:用户名与组;授权与回收台账 → GitLab:角色与凭据回收;授权与回收台账 → JumpServer:授权和会话处置;授权与回收台账 → Kubernetes RBAC:绑定和凭据复核。箭头说明见下方流向解读。
逻辑参考图,OpenLDAP 为候选目录实现;图中没有 LDAP 直连 Kubernetes 认证,也不代表已打通 SSO 或自动回收。

受控测试主体

入口 / 来源

用稳定标识对应同一个测试人,人员、机器和紧急身份分列,不能按展示名直接合并。

全部组件职责 7 个组件
受控测试主体
用稳定标识对应同一个测试人,人员、机器和紧急身份分列,不能按展示名直接合并。
LDAP 目录
按所选目录实现保存用户属性,使用最小读取绑定身份;LDAP 是协议,不是完整 SSO 产品。工具介绍 LDAP 目录
GitLab
目录登录和项目权限分别验证,组同步能力按版本许可确认,令牌及部署密钥独立清点。工具介绍 GitLab
授权与回收台账
分别记录各平台授权、拒绝结果、令牌、会话和实际生效时间,未知或延迟回收保持未完成。
JumpServer
独立验证目录接入、本地登录路径、资产有效期和在线会话终断能力。工具介绍 JumpServer
集群认证入口
按集群实际支持选择认证方式并确认用户名与组的产生方式,不假设 LDAP 地址能直接配置为通用认证。
Kubernetes RBAC
对经过认证的主体执行命名空间与动词授权,认证凭据撤销和角色绑定处置分别确认。工具介绍 Kubernetes RBAC
流向解读 9 条连接
  1. 1

    受控测试主体 GitLab

    控制 / 管理 · 应用登录请求

    测试主体通过批准的 GitLab 入口登录,再单独核对具体项目动作。

  2. 2

    GitLab LDAP 目录

    控制 / 管理 · 受限目录认证

    GitLab 的 LDAP 接入按版本与配置验证,不表示目录授予全部应用权限。

  3. 3

    受控测试主体 JumpServer

    控制 / 管理 · 实名终端登录

    主体身份不自动产生资产连接权,仍需平台内的最小授权。

  4. 4

    JumpServer LDAP 目录

    控制 / 管理 · 受限目录查询

    核对搜索范围及同步差异;目录不可达时不默认扩大同步。

  5. 5

    受控测试主体 集群认证入口

    控制 / 管理 · 独立集群身份

    使用测试主体自己的受控集群凭据,认证类型和有效期明确记录。

  6. 6

    集群认证入口 Kubernetes RBAC

    控制 / 管理 · 用户名与组

    认证产生主体后再由角色绑定判定动作,不存在图中的 LDAP 直接认证边。

  7. 7

    授权与回收台账 GitLab

    控制 / 管理 · 角色与凭据回收

    分别审阅成员继承、个人令牌、SSH key 与机器凭据归属。

  8. 8

    授权与回收台账 JumpServer

    控制 / 管理 · 授权和会话处置

    到期拒绝新连接后,仍需单独终断已有会话并清点任务。

  9. 9

    授权与回收台账 Kubernetes RBAC

    控制 / 管理 · 绑定和凭据复核

    角色撤销和长期证书、令牌的失效边界不同,无法立即回收时记录缓解措施。

故障域与操作边界

停用目录账号不等于全面撤权

已签发令牌、SSH key、证书、应用会话和后台任务可能继续存在;按各系统能力分别处置和复验。

Kubernetes 认证独立选择

目录禁用不天然撤销客户端证书;不要通过授予 cluster-admin 掩盖认证或映射错误。

目录故障不触发全员破坏性同步

同步数量突变先停扩面并保留差异;机器身份先移交用途,避免连带中断发布和监控。

架构依据与版本核对 2 篇官方资料

图解是本站基于官方资料整理的逻辑参考;实施前仍需核对实际部署版本、组件支持范围与变更审批。

适用前提与身份边界

本文用于 LDAP 目录、GitLab、JumpServer 与 Kubernetes 的接入及离职回收设计,验证等级为 PENDING。图片中的 LDAP 是协议,不直接等于 OpenLDAP 产品或单点登录;OpenLDAP 只是候选目录实现。Kubernetes 的人员认证需另选已评审的认证服务或插件,不能把 LDAP 地址直接视为 kube-apiserver 的通用登录配置。Kubernetes 认证机制

建立实名与授权台账

为每个人记录稳定主体标识、岗位、审批人、有效期,以及目录组到 GitLab 项目角色、JumpServer 资产权限、Kubernetes 命名空间角色的实际映射。机器账号、机器人、紧急账号与人员账号分别管理;不通过复制离职人员权限给新人完成交接。角色名称相同也不表示权限语义相同,应列出允许的资源和动作。

目录连通与最小读取

TLS 证书链、主机名和有效期验证失败时停止接入,不关闭校验作为长期修复。查询身份只允许读取必要属性,禁止向应用配置目录超级用户;空密码不能当作成功认证的依据。下面示例要求组织已配置可信 CA,使用受控测试账号和批准的搜索基准,密码交互输入,不放入命令或日志。

ldapsearch -LLL -x -ZZ -H 'ldap://<DIRECTORY_HOST>' -D '<READONLY_BIND_DN>' -W -b '<APPROVED_BASE_DN>' -s one '(uid=<TEST_UID>)' dn uid

输出仅用于授权范围内的定位,禁止扩大为全员信息导出。OpenLDAP TLS 说明

正向与负向验收

使用专用测试主体确认批准的项目读取、资产连接或 Pod 查询可用;再检查无关项目、敏感命名空间和高危动作被拒绝。Kubernetes 的 kubectl auth can-i 检查当前凭据的授权,不证明目录认证或完整端到端登录成功;管理员使用 impersonation 测试时还要单独评审该权限。保存实际主体、时间和拒绝结果,不只记录管理员截图。

离职及到期回收

在确认生效时间后冻结新授权,逐一处理目录账号、GitLab 成员关系及个人令牌/SSH key、JumpServer 登录和资产权限、Kubernetes 角色绑定及认证凭据。项目令牌、部署密钥、服务账号可能不随人员禁用消失,必须核实其归属、接替人和轮换窗口。检查已有 Web 会话、堡垒机会话和后台任务;禁止把“无法新登录”写成“所有已有访问已终止”。

同步失败与停止条件

若目录禁用但应用仍可登录,分辨同步延迟、本地认证后门、缓存、令牌或组映射残留。JumpServer LDAP 严格模式会影响同步中未发现的用户,首次启用前先核对范围,避免目录暂时不可达导致批量误禁用。JumpServer LDAP 设置

主体匹配歧义、同步数量突变或合法值班人员失去紧急访问时停止扩批,由身份管理员复核。误禁用恢复需重新审批最小权限;已撤销的令牌不从旧记录恢复,应重新签发、设置期限并补验收。保留审计日志,不为“回滚”删除回收记录。

关联入口

参考资料

从现象到判断

先收集证据,再缩小范围。以下是判读路径,不代表已经确认根因或获准变更。

  1. 目录记录已经禁用,但应用仍有访问成功日志,尚不清楚是个人登录、机器凭据还是已有会话。

    只读核对
    只读比对访问主体、认证来源、令牌或会话类型、成员继承和同步时间,不读取秘密值或重新启用账号。
    如何判读
    可能由缓存、本地认证、长期凭据或角色残留造成;必须按实际路径判断,不能简单归为目录同步延迟。
  2. 测试主体能读取批准资源,同时意外拥有无关项目或敏感命名空间权限,角色名称却看似正常。

    只读核对
    读取现有组成员、继承角色和绑定记录,核对稳定主体标识及允许动词;使用已有授权判断结果而不执行高危动作。
    如何判读
    名称一致不说明作用域正确,权限可能由其他规则累加;查清来源前不应通过额外授予管理员权限修补映射。
  3. 目录查询或同步异常后,大量应用用户状态同时变化,合法值班账号也受到影响且缺少差异清单。

    只读核对
    只读核对目录 TLS 与绑定错误、搜索范围、同步候选数量及变更前后配置版本,保留受限人员数据摘要。
    如何判读
    可能是目录故障、范围变化或严格同步行为,不能据同步结果批量处置人员;先确认误匹配与紧急访问边界。
常见误区与判断边界 2 项

把 can-i 结果当作目录登录验证

授权判断回答当前凭据能否做某动作,不能单独证明它来自预期目录主体或整条认证链健康。应同时记录凭据类型、用户名、组和实际认证来源;管理员模拟身份的结果也有独立权限前提,不能替代测试主体自己的受控读取证据。

按旧台账一键恢复全部离职权限

旧台账证明历史授权,不构成新授权依据,也可能包含已经撤销或交接的机器身份。误禁用恢复需重新确认用途和最小资源范围,已撤销令牌不从记录中复用;真实离职回收中遇到系统问题应追踪残留和业务接替,而不是整体恢复旧访问。

交接时应留下的证据

作为记录提纲使用,不是自动检查结果;未取得的证据应标记缺口,并注明负责人。

  • 保存稳定主体标识、实际认证来源及各平台账号映射,列出人员、机器、机器人和紧急账号的用途与责任差异。
  • 记录具体项目、资产、命名空间及允许动词,并关联组继承和角色绑定来源,避免只交付无法解释的角色名称。
  • 按访问路径归档目录、成员、令牌、会话和后台任务的读取证据与生效时间,未立即撤销项明确期限和风险责任人。
  • 交接正向及拒绝证据、同步异常差异、合法紧急访问边界和后续复核条件,原始人员资料保存在受限位置不公开。

记录需包含环境、版本、时间与时区;分享前脱敏,不附访问令牌、密码或完整业务敏感数据。

继续阅读与资料核对

补充相关主题,再结合当前环境的实施记录形成结论。

返回原理导读

DOUYA OPS ECOSYSTEM

贡献你的经验,帮助更多运维人

把故障复盘、标准流程和最佳实践沉淀为可检索、可复用的知识内容。