第四部分:LLM系统的安全与治理:护栏、PII、审计与记忆

第四部分:LLM系统的安全与治理:护栏、PII、审计与记忆

💡 原文英文,约3800词,阅读约需14分钟。
📝

内容提要

LLM生产系统成熟度模型第四级聚焦安全与治理,核心为四层防护:护栏分层且失败即阻断;输入输出边界处脱敏PII,并用HMAC哈希替代原始存储;审计账本仅追加、哈希链防篡改;记忆按租户和用户分类隔离。同时区分随版本发布的种子配置与运行时积累状态,重置仅清运行时,学习须经评审合并。

🔎

延伸解读

分层护栏:失败即阻断的工程实现

文章强调护栏应分层且失败即阻断,而非单一过滤器。每层护栏遵循统一契约,可独立测试和重排。关键规则是:护栏出错或不可用时必须阻断或升级,绝不能放行请求。同时,每次阻断都需记录指标,因为阻断率突增可能意味着攻击、回归或错误部署。这种设计避免了单点故障,让不同层捕获不同类别的风险。

PII边界处理:哈希替代存储与默认拒绝

文章提出在数据流动的每个边界处脱敏PII,而非事后补救。核心做法包括:基于声明的分类驱动脱敏,未知字段默认视为PII;使用带密钥的HMAC哈希(而非裸SHA-256)存储低熵敏感字段,防止彩虹表攻击;审计账本仅存哈希和脱敏摘要,实现可验证性而不保留原始负载。模型作为外部边界,其输出也需清洗,因为模型会回显输入。

审计账本:仅追加与哈希链防篡改

审计账本必须是仅追加、防篡改的决策记录。文章通过数据库权限(仅INSERT和SELECT,仅outcome列可更新)和哈希链实现:每条记录包含前一条的哈希,任何修改都会破坏后续链。但哈希链仅防篡改,不防截断或重写,因此需结合序列连续性检查、非对称签名和外部锚定。账本写入应是每个决策的最后一步,无条件执行,避免审计漏洞。

记忆分类与种子/运行时分离

多租户代理的记忆需按类别隔离,如租户共享、代理命名空间、工作流上下文、审计、语义知识和对话。每类有明确的范围、访问权限和PII规则,在存储边界强制执行。对话记忆必须按用户和会话隔离,防止跨用户泄露。此外,种子(随版本发布的提示、规则等)与运行时(积累的审计、学习状态)必须分离,重置仅清运行时,学习需经评审合并到种子,避免系统失忆或未经验证的行为变更。

❓

Q&A

LLM系统成熟度模型第四级安全与治理包含哪四个核心部分?

包含四层防护:分层护栏且失败即阻断;在输入输出边界处脱敏PII并用HMAC哈希替代原始存储;仅追加、哈希链防篡改的审计账本;按租户和用户分类隔离的记忆模型。

为什么LLM系统的护栏需要分层而不是只加一个过滤?

因为单一过滤存在单点故障,分层护栏让一个漏掉的检查被下一层捕获。不同层捕获不同失败模式:输入层防注入,接地层限制模型行为,输出层清理PII,验证层查逻辑错误,裁判层查看似合理的错误,置信度层处理未知。每层简单可测试,且失败即阻断。

在LLM系统中如何处理PII以降低风险?

在数据流动的每个边界(输入、模型、账本、日志、输出)进行脱敏。基于声明的分类驱动,未知字段默认视为PII。账本中存储HMAC哈希和脱敏摘要,而非原始敏感数据,使用每租户密钥的HMAC防止低熵数据被暴力破解。

审计账本如何实现防篡改?

通过仅追加、哈希链和签名实现。每条记录包含前一条的哈希,形成链;修改任何一行都会导致后续哈希不匹配。数据库层面撤销UPDATE/DELETE权限,仅允许插入和读取。对于操作员级威胁,使用非对称密钥签名并定期发布签名检查点到外部存储。

多租户LLM系统的记忆模型如何防止数据泄露?

通过类型化记忆模型,每个数据属于一个类别,类别定义作用域、访问权限和敏感性。所有读写携带tenant_id,跨租户访问硬错误。对话记忆按用户和会话隔离,防火墙阻止决策代理读取其他用户的对话。共享记忆禁止存储PII。

种子配置和运行时状态有什么区别?重置时应该清除什么?

种子是随版本发布的配置(提示词、规则、黄金集、接地数据),只读且版本控制;运行时是系统运行积累的状态(审计账本、学习记忆、漂移信号、会话上下文),可变且可清除。重置应仅清除运行时,保留种子和审计账本,避免系统失忆。

LLM系统如何从运行时学习并更新种子配置?

运行时信号(如重复模式或人工纠正)被提议为候选变更,经过评审和评估门禁(确保不降低基线质量),然后合并到种子中,随下次发布生效。系统不会在运行时自行编辑种子,学习是一个经过评审的PR过程。

🏷️

标签

➡️

继续阅读