4. 账号生命周期状态机

账号生命周期状态机是账号治理工程的核心模型。它把账号从“有人提出需求”到“彻底消失”的全过程,抽象为一组有限状态和受控转换。没有状态机,账号管理就会退化为“谁都能改、改完没人知道”的散乱操作;有了状态机,每一次状态变化都必须回答三个问题:当前状态是什么、触发条件是否满足、转换后由谁负责。

本节讨论的状态集合包括:申请、审批、创建、启用、变更、停用、归档、删除。它们不是简单的线性队列,而是一个带分支、可回退、有终态的有向图。理解这张图的关键,是区分“业务状态”和“技术状态”:申请与审批属于流程状态,创建与启用属于资源状态,变更、停用、归档、删除则同时涉及权限、数据和合规属性。

状态定义与进入条件

申请是生命周期的起点。申请人提交账号需求,通常包含身份标识、所属组织、岗位、所需系统、权限范围、使用期限和审批依据。此时账号尚不存在,系统只生成一条申请单,状态为“申请中”。申请单必须有唯一编号,作为后续所有操作的关联键。

审批是对申请单的合规判断。审批不是单一节点,而是可能包含直属主管、资源所有者、安全管理员的多级审批链。审批通过后,申请单进入“已批准”,但账号仍未创建;审批驳回则回到申请环节或直接关闭。这里要特别注意:审批通过不等于账号可用,它只是授权“可以创建”。

创建是技术动作,指在目标系统中生成账号对象,分配唯一账号名、初始凭据和基础属性。创建完成后,账号处于“已创建未启用”状态。这个中间态非常重要:它允许管理员在正式开放前完成权限绑定、多因素认证注册和基线检查。

启用是账号正式可用的标志。启用后,账号可以登录、被授权访问资源,并开始计入活跃账号统计。启用通常需要满足前置条件:初始密码已修改、MFA已绑定、所属组织与岗位信息完整。

变更不是独立状态,而是覆盖在“启用”之上的操作集合。变更包括权限增减、组织调整、岗位变动、凭据重置、认证方式变更等。每次变更都应产生一条变更记录,并保留变更前后快照。变更本身不改变账号的生命周期主状态,但可能触发权限复核或临时停用。

停用是账号失去访问能力但数据仍保留的状态。停用适用于离职、长期休假、安全事件隔离、岗位暂时空缺等场景。停用后账号不能登录,但历史操作记录、归属关系和关联数据仍然可查。停用是可逆的,满足条件后可重新启用。

归档是停用后的长期保存状态。归档账号不再参与日常权限计算,只保留最小必要信息以满足审计、合规和追溯要求。归档通常有保留期限,例如离职后保留180天或依据行业法规保留更长时间。归档期间账号不可启用,除非走特殊恢复流程。

删除是生命周期的终态。删除意味着账号对象及其直接关联的凭据、会话、临时权限被清除。删除必须谨慎:如果账号仍有关联的审计日志、未结清的数据归属或法律保留要求,则不能直接删除,只能停留在归档状态。删除操作应记录操作人、时间、原因和审批依据。

转换规则设计

状态机的转换规则可以用“当前状态 + 触发事件 + 守卫条件 + 目标状态 + 动作”五元组描述。守卫条件是转换能否发生的判断依据,动作是转换时系统自动执行的操作。以下给出一个可落地的规则示例:

规则ID: LC-004
当前状态: 已创建未启用
触发事件: 启用请求
守卫条件:
  1. 初始密码已修改
  2. MFA已绑定
  3. 所属组织与岗位非空
  4. 审批单状态为“已批准”
目标状态: 启用
动作:
  1. 写入启用时间与操作人
  2. 开放登录权限
  3. 发送启用通知
  4. 记录审计日志

再比如“启用 → 停用”的转换,守卫条件通常包括:离职流程已完结、安全事件已确认、或管理员手动发起且具备停用权限。动作包括:撤销所有活跃会话、冻结登录、保留数据、通知账号所有者。而“停用 → 启用”的转换必须额外检查:原停用原因是否已消除、是否超过停用保留期、是否需要重新审批。

对于“归档 → 删除”的转换,守卫条件最为严格:保留期已满、无法律保留、无未结审计事项、删除审批已通过。动作包括:清除凭据、匿名化或删除个人数据、保留最小审计索引。任何一条守卫条件不满足,转换都应被拒绝,并记录拒绝原因。

状态机图示

下图用状态节点和带标签的转换边,展示账号生命周期的主要状态与转换关系。实线表示常规正向流转,虚线表示回退或恢复路径,红色边表示高风险或不可逆操作。

账号生命周期状态机 实线=正向流转 虚线=回退/恢复 红色=高风险或不可逆 申请 审批 创建 启用 变更 停用 归档 删除 提交 通过 就绪 权限/岗位调整 变更完成 离职/隔离 恢复启用 保留期满 审批通过 驳回/补充材料 终态 关键转换守卫条件速查 申请→审批:需求完整、有审批依据 审批→创建:多级审批通过、资源所有者确认 创建→启用:密码已改、MFA已绑、属性完整 启用→停用:离职/安全事件/管理员操作 停用→归档:保留期满、无活跃关联 归档→删除:保留期满、无法律保留、审批通过 停用→启用:原因消除、未超保留期、重新审批 启用↔变更:权限复核、变更留痕、快照保留 审批→申请:驳回需说明原因并允许补充

落地要点与常见陷阱

设计状态机时,最容易犯的错误是把“审批通过”直接等同于“启用”。这会导致账号在权限未绑定、MFA未注册的情况下提前暴露。正确的做法是保留“已创建未启用”中间态,并把它作为安全基线检查的窗口。

第二个常见陷阱是忽略“停用”与“删除”之间的归档层。很多组织在员工离职后直接删除账号,结果审计时无法追溯历史操作。归档层的价值在于:既让账号退出日常权限体系,又保留合规所需的证据链。归档不是“冷数据”,而是“受控数据”。

第三个陷阱是变更没有版本。权限变更如果只记录“改成了什么”,不记录“改之前是什么”,就无法回答“这个权限是什么时候获得的”。每次变更应保存前后快照,并关联变更单号、操作人、审批人和生效时间。

状态机的转换规则应集中配置,而不是散落在各个系统的代码里。建议用一张状态转换表作为唯一事实来源,所有系统通过接口查询或订阅转换事件,避免出现“A系统认为已停用、B系统认为仍启用”的不一致。
删除操作必须设置二次确认和审批门槛。对于涉及财务、人事、核心生产系统的账号,建议默认不允许直接删除,只能归档;确需删除时,必须由安全管理员和数据所有者双签。

最后,状态机不是画完就结束的文档。它需要配套监控指标:各状态账号数量、平均审批时长、停用后重新启用比例、归档转删除的周期分布、异常转换告警。当“已创建未启用”账号数量持续偏高,说明创建与启用之间的流程存在阻塞;当“停用”账号长期未归档,说明保留策略执行不到位。状态机的价值,最终体现在这些可观测、可审计、可优化的运行数据上。