核心用法
consensus-permission-escalation-guard 是特权提升前的最终安全闸门,适用于以下场景:
- IAM权限变更审查:代理或工作流提议授予、扩展或假设更高权限时
- 事前合规验证:在权限实际生效前执行策略检查
- 审计留痕:生成可重放、可审查的决策产物
主要功能
1. 严格模式验证:拒绝未知字段,确保输入结构符合预期
2. 策略评估:执行硬阻断和重写策略标志检查
3. 加权投票:支持本地确定性角色投票或聚合外部投票
4. 三态决策:返回 ALLOW(允许)、BLOCK(阻断)、REQUIRE_REWRITE(要求重写)
5. 审计产物:写入共识看板/状态产物,支持合规追溯
典型阻断规则
| 类型 | 触发条件 |
|------|---------|
| 硬阻断 | 通配符权限(`*`)、缺失工单引用、无事件引用的应急提升、职责分离冲突 |
| 要求重写 | 理由不充分、临时授权超期、生产环境需人工确认 |
调用模式
mode="persona"(默认):本地确定性角色投票mode="external_agent":消费外部投票数组,确定性聚合
技术栈
- Runtime: Node.js + tsx
- 零凭证、零网络(核心逻辑)
- 状态配置:
CONSENSUS_STATE_FILE,CONSENSUS_STATE_ROOT
显著优点
- 确定性输出:相同输入始终产生相同决策,消除不可预测性
- 零信任架构:无需凭证即可执行核心守卫逻辑
- 可审计设计:所有决策产物写入文件系统,支持重放与合规审查
- 策略即代码:硬阻断与重写规则可版本化、可测试
- 幂等性保证:重复调用相同输入不会产生副作用
潜在缺点与局限性
- Node.js 依赖:需要特定运行时环境,非通用二进制
- 外部状态耦合:依赖
consensus-guard-core包进行聚合与状态管理 - 策略覆盖盲区:预定义规则集可能无法覆盖组织特有的复杂合规场景
- 人工确认门缺失:生产环境人工确认需外部系统配合,非内建能力
- 无实时阻断能力:仅提供决策输出,实际权限系统执行需额外集成
适合人群
- 平台工程团队:构建内部权限治理工作流
- 安全运维(SecOps):需要标准化 IAM 变更审查
- 合规审计人员:要求决策可追溯、可重放的场景
- 多代理系统设计者:需要确定性权限仲裁机制
常规风险
- 状态文件完整性:
CONSENSUS_STATE_ROOT配置不当可能导致审计数据丢失或篡改 - 依赖供应链:
consensus-guard-core的漏洞将传导至本技能 - 模式演进冲突:输入模式变更若未同步更新,可能导致意外阻断或绕过
- 外部投票操纵:
external_agent模式下,投票来源的完整性需外部保证 - 部署配置漂移:生产环境未遵循
SECURITY-ASSURANCE.md的加固指南可能引入边界突破风险