AI 安全、权限与合规

这个主题讨论 AI 应用不能绕开的安全边界。模型可以生成建议,但真实系统必须负责权限、校验、审计和合规。

AI 安全不是在 prompt 里写一句“不要泄露数据”。只要模型能读取外部内容、调用工具、访问文档或代表用户执行动作,就必须把权限、输入清洗、工具边界、人工确认和审计日志做成系统能力。

学习目标

完成这个主题后,你应该能够:

  • 识别 prompt injection、jailbreak、data leakage、tool abuse 和 unsafe output 的风险来源。
  • 为 RAG、Tool Calling 和 Agent 设计独立的权限控制层。
  • 区分模型建议、应用校验、用户确认和真实执行之间的责任边界。
  • 实现文档级权限过滤、工具调用确认和 Agent 操作审计。
  • 为敏感数据、租户隔离、数据保留和供应商策略设计基本合规方案。

关键概念

Prompt Injection 是外部内容或用户输入试图覆盖系统指令、诱导模型泄露信息或执行越权操作的攻击方式。

Tool Permission 决定模型可以请求哪些工具,但真实执行前仍应由应用层校验工具名、参数、用户权限和风险等级。

RAG Permission 必须发生在检索阶段和引用展示阶段。不能先检索全部文档再指望模型不说出来。

Human Confirmation 适用于高风险动作,例如发送邮件、删除数据、付款、修改权限、提交表单或调用生产系统。

Audit Log 是事后追踪的基础。AI 系统应该记录谁在什么时候请求了什么、模型建议了什么、工具执行了什么、结果是什么。

安全权限链路

这张图强调权限链路不在模型内部,而在应用系统外层。模型可以提出操作建议,但策略、校验、确认和审计必须由确定性代码负责。

核心主题

  • AI 安全问题:prompt injection、jailbreak、data leakage、unsafe output、tool abuse。
  • 权限控制:user permission、document permission、tool permission、tenant isolation。
  • Tool 安全:allowlist、confirmation、sandbox、timeout、audit log。
  • RAG 安全:文档权限过滤、检索权限控制、引用权限控制、跨用户数据泄露。
  • Agent 安全:高风险操作确认、操作范围限制、dry run、rollback。
  • 数据隐私:PII、sensitive data、data retention、provider data policy。

阶段实践拆解

  1. 建立权限模型:定义 user、tenant、role、document permission、tool permission 和 risk level。
  2. 为 Tool Calling 增加 allowlist:模型只能请求已注册工具,工具参数必须经过 schema 校验。
  3. 增加高风险确认:对写操作、外部发送、删除、支付和权限变更展示确认页。
  4. 为 RAG 增加文档级权限过滤:检索 SQL 和向量查询都必须带上用户与租户权限条件。
  5. 增加引用权限校验:最终展示引用前再次确认用户有权查看 source。
  6. 实现 Agent 审计:记录每一步 observation、planned action、tool call、approval、result 和 error。
  7. 增加敏感数据处理:对 PII 做脱敏、最小化传输和数据保留策略说明。

阶段实践

  • 为 Tool Calling 增加权限确认。
  • 为 RAG 增加文档级权限过滤。
  • 为 Agent 增加操作审计。

计划文章

  • AI 应用的安全边界应该怎么设计
  • Prompt Injection 为什么不是小问题
  • Agent 执行真实操作前为什么必须有人类确认