土法炼钢兴趣小组的算法知识备份

【Agent 身份与安全】人机协同授权:Human-in-the-Loop

文章导航

分类入口
architecturesecurity
标签入口
#agent#human-in-the-loop#step-up-auth#approval#adaptive-auth#pam

目录

OAuth scope 与 Function Calling 策略 可以自动拒绝明显越权调用,但业务高风险操作——转账、删除生产数据、外发邮件给未知收件人——需要人确认。Human-in-the-Loop(HITL)是 Agent 授权模型的最后一层:策略引擎 say「技术上允许」,HITL say「业务上需人工点头」。


一、何时必须 HITL

操作类 示例 自动策略能否覆盖 HITL
irreversible DELETE 生产表、关闭账户 可 deny,但误 deny 影响 UX 确认后 allow
金融 转账 > 阈值 阈值规则 超阈值必须审批
外发 邮件含外部域名 DLP 可部分覆盖 首次外部收件人
特权 提权、改 IAM 应 deny by default break-glass 审批

自适应认证 交叉:风险分数高 → step-up MFA → 再执行 tool。


二、同步确认 vs 异步审批

2.1 同步确认(Blocking)

sequenceDiagram
  participant User
  participant Host as Agent Host
  participant LLM

  LLM->>Host: tool_call transfer amount=50000
  Host->>User: Modal: 确认转账?
  User->>Host: Approve + WebAuthn
  Host->>Host: 执行 transfer
  Host->>LLM: success
优点 缺点
实现简单 用户必须在线
无队列状态 长任务阻塞 Agent

适用:单笔操作、用户正在对话中。

2.2 异步审批队列

sequenceDiagram
  participant Agent
  participant Queue as Approval Queue
  participant Approver
  participant API

  Agent->>Queue: 提交 pending_action id=pa-123
  Agent->>Agent: 状态=SUSPENDED
  Approver->>Queue: Approve pa-123
  Queue->>API: 执行
  Queue->>Agent: 唤醒 + 结果
优点 缺点
Approver 不必实时在 chat 需持久化、超时、幂等
可 SOX 双人审批 Agent 状态机复杂

适用:企业工作流、非交互式 Agent。


三、Agent 状态机

stateDiagram-v2
  [*] --> Running
  Running --> PendingApproval: 高风险 tool
  PendingApproval --> Running: approved
  PendingApproval --> Cancelled: rejected / timeout
  Running --> Completed: 任务结束
  Cancelled --> [*]
  Completed --> [*]
状态 允许行为
Running 调低风险 tool
PendingApproval poll 审批状态,禁止其他写操作
Cancelled 清理 partial side effects(若可)

:Pending 期间 Agent 若继续调其他写 API——竞态越权。Host 应 全局写锁 直到审批完成。


四、Step-up 与委托 Token

HITL 批准不应只改 UI 状态——应产生 短期 elevation proof

1. 用户 WebAuthn step-up
2. IdP 发 elevation_token TTL=5min scope=transfer:approve
3. Agent Gateway 持 elevation_token 执行 transfer
4. 执行完毕 elevation_token 作废

Token Exchange 结合:actor_token 不变,Exchange 时附加 authorization_details 或自定义 claim 表示 step-up 已完成——具体 claim 以 IdP 能力为准,不编造 payload


五、超时与默认动作

策略 行为 适用
fail-closed 超时 = reject 金融、删除
fail-open 超时 = reject(同上,无 open) 不推荐 Agent 场景
escalate 超时转上级审批 企业

Agent 应告知用户:「等待审批,7200s 后自动取消」。


六、与 PAM JIT 的对照

PAM / JIT 管特权人;HITL 管 Agent 代用户 的高危操作。可共用审批 UI 和审计管道——字段增加 agent_id, delegator_id


七、实现清单


八、边界

九、双人审批 SOX

大额 transfer 顺序双 approver——Queue 状态机扩展。


十、Pending 全局写锁

PendingApproval 期间禁止其他写 tool——防竞态。


十一、Idempotency-Key

approval_id 作幂等键——防 double execution。

附录 C.1、HITL 检查扩展项

# 检查项 负责人 频率
1 委托 token TTL ≤ 策略上限 Platform 每 release
2 act 审计字段完整 Security 每周 sample
3 MCP Server integrity pin Supply chain 每升级
4 OPA bundle 版本与 audit 一致 IAM 每 policy PR
5 HITL 超时 fail-closed App 每 sprint
6 CAEP receiver 健康(若启用) SRE 实时
7 cross-server secret 隔离测试 Red team 每季
8 PII cache TTL 绑定 token DPO review 每季

零信任持续验证 对照:Agent 会话的 trust decay 速率应 ≤ 企业 Web 会话策略。

附录 C.2、HITL 检查扩展项

# 检查项 负责人 频率
1 委托 token TTL ≤ 策略上限 Platform 每 release
2 act 审计字段完整 Security 每周 sample
3 MCP Server integrity pin Supply chain 每升级
4 OPA bundle 版本与 audit 一致 IAM 每 policy PR
5 HITL 超时 fail-closed App 每 sprint
6 CAEP receiver 健康(若启用) SRE 实时
7 cross-server secret 隔离测试 Red team 每季
8 PII cache TTL 绑定 token DPO review 每季

零信任持续验证 对照:Agent 会话的 trust decay 速率应 ≤ 企业 Web 会话策略。

附录 C.3、HITL 检查扩展项

# 检查项 负责人 频率
1 委托 token TTL ≤ 策略上限 Platform 每 release
2 act 审计字段完整 Security 每周 sample
3 MCP Server integrity pin Supply chain 每升级
4 OPA bundle 版本与 audit 一致 IAM 每 policy PR
5 HITL 超时 fail-closed App 每 sprint
6 CAEP receiver 健康(若启用) SRE 实时
7 cross-server secret 隔离测试 Red team 每季
8 PII cache TTL 绑定 token DPO review 每季

零信任持续验证 对照:Agent 会话的 trust decay 速率应 ≤ 企业 Web 会话策略。

附录 C.4、HITL 检查扩展项

# 检查项 负责人 频率
1 委托 token TTL ≤ 策略上限 Platform 每 release
2 act 审计字段完整 Security 每周 sample
3 MCP Server integrity pin Supply chain 每升级
4 OPA bundle 版本与 audit 一致 IAM 每 policy PR
5 HITL 超时 fail-closed App 每 sprint
6 CAEP receiver 健康(若启用) SRE 实时
7 cross-server secret 隔离测试 Red team 每季
8 PII cache TTL 绑定 token DPO review 每季

零信任持续验证 对照:Agent 会话的 trust decay 速率应 ≤ 企业 Web 会话策略。

附录 C.5、HITL 检查扩展项

# 检查项 负责人 频率
1 委托 token TTL ≤ 策略上限 Platform 每 release
2 act 审计字段完整 Security 每周 sample
3 MCP Server integrity pin Supply chain 每升级
4 OPA bundle 版本与 audit 一致 IAM 每 policy PR
5 HITL 超时 fail-closed App 每 sprint
6 CAEP receiver 健康(若启用) SRE 实时
7 cross-server secret 隔离测试 Red team 每季
8 PII cache TTL 绑定 token DPO review 每季

零信任持续验证 对照:Agent 会话的 trust decay 速率应 ≤ 企业 Web 会话策略。

附录 C.6、HITL 检查扩展项

# 检查项 负责人 频率
1 委托 token TTL ≤ 策略上限 Platform 每 release
2 act 审计字段完整 Security 每周 sample
3 MCP Server integrity pin Supply chain 每升级
4 OPA bundle 版本与 audit 一致 IAM 每 policy PR
5 HITL 超时 fail-closed App 每 sprint
6 CAEP receiver 健康(若启用) SRE 实时
7 cross-server secret 隔离测试 Red team 每季
8 PII cache TTL 绑定 token DPO review 每季

零信任持续验证 对照:Agent 会话的 trust decay 速率应 ≤ 企业 Web 会话策略。

附录 C.7、HITL 检查扩展项

# 检查项 负责人 频率
1 委托 token TTL ≤ 策略上限 Platform 每 release
2 act 审计字段完整 Security 每周 sample
3 MCP Server integrity pin Supply chain 每升级
4 OPA bundle 版本与 audit 一致 IAM 每 policy PR
5 HITL 超时 fail-closed App 每 sprint
6 CAEP receiver 健康(若启用) SRE 实时
7 cross-server secret 隔离测试 Red team 每季
8 PII cache TTL 绑定 token DPO review 每季

零信任持续验证 对照:Agent 会话的 trust decay 速率应 ≤ 企业 Web 会话策略。

附录 C.8、HITL 检查扩展项

# 检查项 负责人 频率
1 委托 token TTL ≤ 策略上限 Platform 每 release
2 act 审计字段完整 Security 每周 sample
3 MCP Server integrity pin Supply chain 每升级
4 OPA bundle 版本与 audit 一致 IAM 每 policy PR
5 HITL 超时 fail-closed App 每 sprint
6 CAEP receiver 健康(若启用) SRE 实时
7 cross-server secret 隔离测试 Red team 每季
8 PII cache TTL 绑定 token DPO review 每季

零信任持续验证 对照:Agent 会话的 trust decay 速率应 ≤ 企业 Web 会话策略。

附录 C.9、HITL 检查扩展项

# 检查项 负责人 频率
1 委托 token TTL ≤ 策略上限 Platform 每 release
2 act 审计字段完整 Security 每周 sample
3 MCP Server integrity pin Supply chain 每升级
4 OPA bundle 版本与 audit 一致 IAM 每 policy PR
5 HITL 超时 fail-closed App 每 sprint
6 CAEP receiver 健康(若启用) SRE 实时
7 cross-server secret 隔离测试 Red team 每季
8 PII cache TTL 绑定 token DPO review 每季

零信任持续验证 对照:Agent 会话的 trust decay 速率应 ≤ 企业 Web 会话策略。

附录 C.10、HITL 检查扩展项

# 检查项 负责人 频率
1 委托 token TTL ≤ 策略上限 Platform 每 release
2 act 审计字段完整 Security 每周 sample
3 MCP Server integrity pin Supply chain 每升级
4 OPA bundle 版本与 audit 一致 IAM 每 policy PR
5 HITL 超时 fail-closed App 每 sprint
6 CAEP receiver 健康(若启用) SRE 实时
7 cross-server secret 隔离测试 Red team 每季
8 PII cache TTL 绑定 token DPO review 每季

零信任持续验证 对照:Agent 会话的 trust decay 速率应 ≤ 企业 Web 会话策略。

附录 C.11、HITL 检查扩展项

# 检查项 负责人 频率
1 委托 token TTL ≤ 策略上限 Platform 每 release
2 act 审计字段完整 Security 每周 sample
3 MCP Server integrity pin Supply chain 每升级
4 OPA bundle 版本与 audit 一致 IAM 每 policy PR
5 HITL 超时 fail-closed App 每 sprint
6 CAEP receiver 健康(若启用) SRE 实时
7 cross-server secret 隔离测试 Red team 每季
8 PII cache TTL 绑定 token DPO review 每季

零信任持续验证 对照:Agent 会话的 trust decay 速率应 ≤ 企业 Web 会话策略。

附录 C.12、HITL 检查扩展项

# 检查项 负责人 频率
1 委托 token TTL ≤ 策略上限 Platform 每 release
2 act 审计字段完整 Security 每周 sample
3 MCP Server integrity pin Supply chain 每升级
4 OPA bundle 版本与 audit 一致 IAM 每 policy PR
5 HITL 超时 fail-closed App 每 sprint
6 CAEP receiver 健康(若启用) SRE 实时
7 cross-server secret 隔离测试 Red team 每季
8 PII cache TTL 绑定 token DPO review 每季

零信任持续验证 对照:Agent 会话的 trust decay 速率应 ≤ 企业 Web 会话策略。

附录 C.13、HITL 检查扩展项

# 检查项 负责人 频率
1 委托 token TTL ≤ 策略上限 Platform 每 release
2 act 审计字段完整 Security 每周 sample
3 MCP Server integrity pin Supply chain 每升级
4 OPA bundle 版本与 audit 一致 IAM 每 policy PR
5 HITL 超时 fail-closed App 每 sprint
6 CAEP receiver 健康(若启用) SRE 实时
7 cross-server secret 隔离测试 Red team 每季
8 PII cache TTL 绑定 token DPO review 每季

零信任持续验证 对照:Agent 会话的 trust decay 速率应 ≤ 企业 Web 会话策略。

附录 C.14、HITL 检查扩展项

# 检查项 负责人 频率
1 委托 token TTL ≤ 策略上限 Platform 每 release
2 act 审计字段完整 Security 每周 sample
3 MCP Server integrity pin Supply chain 每升级
4 OPA bundle 版本与 audit 一致 IAM 每 policy PR
5 HITL 超时 fail-closed App 每 sprint
6 CAEP receiver 健康(若启用) SRE 实时
7 cross-server secret 隔离测试 Red team 每季
8 PII cache TTL 绑定 token DPO review 每季

零信任持续验证 对照:Agent 会话的 trust decay 速率应 ≤ 企业 Web 会话策略。

附录 C.15、HITL 检查扩展项

# 检查项 负责人 频率
1 委托 token TTL ≤ 策略上限 Platform 每 release
2 act 审计字段完整 Security 每周 sample
3 MCP Server integrity pin Supply chain 每升级
4 OPA bundle 版本与 audit 一致 IAM 每 policy PR
5 HITL 超时 fail-closed App 每 sprint
6 CAEP receiver 健康(若启用) SRE 实时
7 cross-server secret 隔离测试 Red team 每季
8 PII cache TTL 绑定 token DPO review 每季

零信任持续验证 对照:Agent 会话的 trust decay 速率应 ≤ 企业 Web 会话策略。

附录 C.16、HITL 检查扩展项

# 检查项 负责人 频率
1 委托 token TTL ≤ 策略上限 Platform 每 release
2 act 审计字段完整 Security 每周 sample
3 MCP Server integrity pin Supply chain 每升级
4 OPA bundle 版本与 audit 一致 IAM 每 policy PR
5 HITL 超时 fail-closed App 每 sprint
6 CAEP receiver 健康(若启用) SRE 实时
7 cross-server secret 隔离测试 Red team 每季
8 PII cache TTL 绑定 token DPO review 每季

零信任持续验证 对照:Agent 会话的 trust decay 速率应 ≤ 企业 Web 会话策略。

附录 C.17、HITL 检查扩展项

# 检查项 负责人 频率
1 委托 token TTL ≤ 策略上限 Platform 每 release
2 act 审计字段完整 Security 每周 sample
3 MCP Server integrity pin Supply chain 每升级
4 OPA bundle 版本与 audit 一致 IAM 每 policy PR
5 HITL 超时 fail-closed App 每 sprint
6 CAEP receiver 健康(若启用) SRE 实时
7 cross-server secret 隔离测试 Red team 每季
8 PII cache TTL 绑定 token DPO review 每季

零信任持续验证 对照:Agent 会话的 trust decay 速率应 ≤ 企业 Web 会话策略。

附录 C.18、HITL 检查扩展项

# 检查项 负责人 频率
1 委托 token TTL ≤ 策略上限 Platform 每 release
2 act 审计字段完整 Security 每周 sample
3 MCP Server integrity pin Supply chain 每升级
4 OPA bundle 版本与 audit 一致 IAM 每 policy PR
5 HITL 超时 fail-closed App 每 sprint
6 CAEP receiver 健康(若启用) SRE 实时
7 cross-server secret 隔离测试 Red team 每季
8 PII cache TTL 绑定 token DPO review 每季

零信任持续验证 对照:Agent 会话的 trust decay 速率应 ≤ 企业 Web 会话策略。

附录 C.19、HITL 检查扩展项

# 检查项 负责人 频率
1 委托 token TTL ≤ 策略上限 Platform 每 release
2 act 审计字段完整 Security 每周 sample
3 MCP Server integrity pin Supply chain 每升级
4 OPA bundle 版本与 audit 一致 IAM 每 policy PR
5 HITL 超时 fail-closed App 每 sprint
6 CAEP receiver 健康(若启用) SRE 实时
7 cross-server secret 隔离测试 Red team 每季
8 PII cache TTL 绑定 token DPO review 每季

零信任持续验证 对照:Agent 会话的 trust decay 速率应 ≤ 企业 Web 会话策略。

附录 A、Human-in-the-Loop 场景演练

A.1 邮件摘要 Agent

步骤 动作
1 用户 consent read:mail
2 Exchange scope=read:mail:inbox
3 OPA 限 folder
4 audit 含 act
flowchart LR
  S1["用户 consent read:mail"] --> S2["Exchange scope=read:mail:inbox"]
  S2 --> S3["OPA 限 folder"]
  S3 --> S4["audit 含 act"]

A.2 SQL 分析 Agent

步骤 动作
1 read:warehouse
2 只读 DB role
3 Rego deny DDL
4 HITL 导出 CSV >10k rows
flowchart LR
  S1["read:warehouse"] --> S2["只读 DB role"]
  S2 --> S3["Rego deny DDL"]
  S3 --> S4["HITL 导出 CSV >10k rows"]

A.3 MCP Git Agent

步骤 动作
1 per-server OAuth
2 stdio pin version
3 tool allowlist
4 supply chain SBOM
flowchart LR
  S1["per-server OAuth"] --> S2["stdio pin version"]
  S2 --> S3["tool allowlist"]
  S3 --> S4["supply chain SBOM"]

A.4 跨 API 编排

步骤 动作
1 多 resource Exchange
2 每 API 独立 token
3 Gateway 聚合
4 trace 串联
flowchart LR
  S1["多 resource Exchange"] --> S2["每 API 独立 token"]
  S2 --> S3["Gateway 聚合"]
  S3 --> S4["trace 串联"]

A.5 offboarding

步骤 动作
1 SCIM deactivate
2 CAEP or TTL
3 cache flush
4 audit retention
flowchart LR
  S1["SCIM deactivate"] --> S2["CAEP or TTL"]
  S2 --> S3["cache flush"]
  S3 --> S4["audit retention"]

A.6 供应链攻击响应

步骤 动作
1 disconnect MCP Server
2 rotate per-server token
3 SBOM diff
4 post-incident audit
flowchart LR
  S1["disconnect MCP Server"] --> S2["rotate per-server token"]
  S2 --> S3["SBOM diff"]
  S3 --> S4["post-incident audit"]

A.7 HITL 超时

步骤 动作
1 pending transfer
2 7200s expire
3 Agent Cancelled
4 audit expired
flowchart LR
  S1["pending transfer"] --> S2["7200s expire"]
  S2 --> S3["Agent Cancelled"]
  S3 --> S4["audit expired"]

A.8 跨云 OBO

步骤 动作
1 Entra user token
2 Gateway normalize act
3 RS 统一 audit schema
4 policy 同构
flowchart LR
  S1["Entra user token"] --> S2["Gateway normalize act"]
  S2 --> S3["RS 统一 audit schema"]
  S3 --> S4["policy 同构"]

附录 B、Human-in-the-Loop 常见问题

Q:能否省略 Agent Gateway?
A:仅当 Agent 永不持 user refresh 且 RS 支持 Token Exchange 直联——多数企业仍要 Gateway 聚 policy、HITL、audit。

Q:MCP 是否替代 OAuth?
A:否。MCP 管 tool 协议;OAuth 管身份。

Q:CAEP 未支持怎么办?
A:短 TTL(≤15min)为基线;heartbeat 补 Gateway 层 revoke。

Q:如何证明 Agent 未越权?
A:deny 日志 + policy_version + 定期 access review(IGA)。

Q:Gen2 到 Gen4 最小步骤?
A:Gateway 托管 refresh → 启用 Exchange → RS 解析 act → 下线 Agent 侧 refresh。



上一篇Function Calling 授权

下一篇MCP 架构


附录 Z.1、系列交叉检查

标准 关联
委托链 JWT 含可解析 act 第 02 篇
工具策略 deny 100% 审计 第 04 篇
MCP 隔离 per-server token 第 07 篇
吊销 TTL ≤ 15min 基线 第 08 篇
归因 delegator_id 必填 第 09 篇
flowchart LR
  IDP[IdP] --> GW[Agent Gateway]
  GW --> MCP[MCP Host]
  GW --> RS[Resource Server]

附录 Z.2、系列交叉检查

标准 关联
委托链 JWT 含可解析 act 第 02 篇
工具策略 deny 100% 审计 第 04 篇
MCP 隔离 per-server token 第 07 篇
吊销 TTL ≤ 15min 基线 第 08 篇
归因 delegator_id 必填 第 09 篇
flowchart LR
  IDP[IdP] --> GW[Agent Gateway]
  GW --> MCP[MCP Host]
  GW --> RS[Resource Server]

附录 Z.3、系列交叉检查

标准 关联
委托链 JWT 含可解析 act 第 02 篇
工具策略 deny 100% 审计 第 04 篇
MCP 隔离 per-server token 第 07 篇
吊销 TTL ≤ 15min 基线 第 08 篇
归因 delegator_id 必填 第 09 篇
flowchart LR
  IDP[IdP] --> GW[Agent Gateway]
  GW --> MCP[MCP Host]
  GW --> RS[Resource Server]

附录 Z.4、系列交叉检查

标准 关联
委托链 JWT 含可解析 act 第 02 篇
工具策略 deny 100% 审计 第 04 篇
MCP 隔离 per-server token 第 07 篇
吊销 TTL ≤ 15min 基线 第 08 篇
归因 delegator_id 必填 第 09 篇
flowchart LR
  IDP[IdP] --> GW[Agent Gateway]
  GW --> MCP[MCP Host]
  GW --> RS[Resource Server]

附录 Z.5、系列交叉检查

标准 关联
委托链 JWT 含可解析 act 第 02 篇
工具策略 deny 100% 审计 第 04 篇
MCP 隔离 per-server token 第 07 篇
吊销 TTL ≤ 15min 基线 第 08 篇
归因 delegator_id 必填 第 09 篇
flowchart LR
  IDP[IdP] --> GW[Agent Gateway]
  GW --> MCP[MCP Host]
  GW --> RS[Resource Server]

附录 Z.6、系列交叉检查

标准 关联
委托链 JWT 含可解析 act 第 02 篇
工具策略 deny 100% 审计 第 04 篇
MCP 隔离 per-server token 第 07 篇
吊销 TTL ≤ 15min 基线 第 08 篇
归因 delegator_id 必填 第 09 篇
flowchart LR
  IDP[IdP] --> GW[Agent Gateway]
  GW --> MCP[MCP Host]
  GW --> RS[Resource Server]

附录 Z.7、系列交叉检查

标准 关联
委托链 JWT 含可解析 act 第 02 篇
工具策略 deny 100% 审计 第 04 篇
MCP 隔离 per-server token 第 07 篇
吊销 TTL ≤ 15min 基线 第 08 篇
归因 delegator_id 必填 第 09 篇
flowchart LR
  IDP[IdP] --> GW[Agent Gateway]
  GW --> MCP[MCP Host]
  GW --> RS[Resource Server]

附录 Z.8、系列交叉检查

标准 关联
委托链 JWT 含可解析 act 第 02 篇
工具策略 deny 100% 审计 第 04 篇
MCP 隔离 per-server token 第 07 篇
吊销 TTL ≤ 15min 基线 第 08 篇
归因 delegator_id 必填 第 09 篇
flowchart LR
  IDP[IdP] --> GW[Agent Gateway]
  GW --> MCP[MCP Host]
  GW --> RS[Resource Server]

参考资料

  1. 自适应认证
  2. PAM 与审计
  3. NIST SP 800-63B, Authentication and Lifecycle Management(step-up 参考)

同主题继续阅读

把当前热点继续串成多页阅读,而不是停在单篇消费。

2026-06-16 · architecture / security

【身份与访问控制工程】风险感知认证:设备信任、异常登录与挑战升级

MFA 是固定策略——启用后每个人每次登录都要输入验证码。风险感知认证(Adaptive/Risk-based Authentication)让认证强度随风险动态调整:从新设备、新位置触发额外验证,到持续的行为分析和会话风险评估。本文拆解风险引擎的信号模型、设备指纹的实现选型、挑战升级的 UX 设计,以及硅谷大厂的实践对比。


By .