如何保障 AI 智能体的安全:提示注入、权限与数据隐私检查清单
一旦 AI 智能体能够读取数据库、发送邮件或调用外部 API,风险就不再局限于回答的准确性。安全设计必须覆盖输入、权限、执行、输出和日志,而不是在上线前仅仅增加一层内容过滤。
首先绘制智能体的攻击面地图
风险并非仅来自用户输入。网页、邮件、知识库文档以及第三方工具的响应都可能包含隐藏的操纵性指令;日志和错误信息也可能泄露凭证。上线前,需完整梳理数据摄入、模型处理、工具调用、结果输出及日志保留的全流程。
- 输入端:公开表单、网页、邮件及上传文件。
- 权限端:数据库、文件、API、消息发送及删除操作。
- 输出端:用户回复、外部写入及智能体间传递的数据。
- 依赖项:社区技能包、第三方 API 及运行环境。
仅靠关键词过滤无法防止提示注入
系统指令与外部内容应明确分层隔离。来自网页或文档的文本仅应被视为数据,不得自动获得执行操作的权限。即使模型做出错误判断,运行时权限也必须阻止未授权的操作。对于删除、导出、支付及向外部发送数据等操作,需添加确定性规则并引入人工确认环节。
遵循最小权限原则以限制事故影响
| 资源类型 | 推荐控制措施 |
|---|---|
| 数据库 | 优先使用只读账号,限制可访问的表及返回数据范围 |
| 邮件 | 读写权限分离 |
| 文件 | 限制可访问目录,默认屏蔽凭证访问 |
| 外部 API | 使用独立凭证、设置速率限制及白名单 |
| 高风险操作 | 要求人工审批,并记录操作执行人 |
为每个智能体分配独立身份,以便更轻松地执行撤销、轮换和审计。不要仅仅因为“以后可能需要”就提前授予写入权限。
统筹设计隐私保护与日志记录
数据最小化原则意味着仅收集完成任务所需的字段。日志默认应进行脱敏处理,严禁记录密码、令牌或完整的个人信息;同时需建立访问控制与保留期限策略。当多个智能体协同工作时,下游智能体仅应接收完成子任务所需的数据,而非整个对话记录。
上线前安全检查清单
- 已识别所有不受信任的外部输入源。
- 工具权限与任务目标严格对应。
- 敏感写入操作需人工确认,并具备幂等性保障。
- 可验证第三方技能包的来源、版本及网络访问范围。
- 已制定日志脱敏、保留与删除规则。
- 可通过调用链追溯还原工具调用过程,且不暴露凭证。
常见问题
能否彻底消除提示注入风险?
仅依靠模型层无法彻底消除该风险。因此,必须通过输入隔离、最小权限、基于策略的拦截以及人工审批协同作用,才能有效降低风险。
小团队是否也需要全面的治理框架?
可以从四项基础措施起步:独立身份标识、只读权限、敏感操作确认机制以及日志脱敏。随着业务风险上升,再逐步增加更多控制手段。
合规是否仅仅意味着获取某项认证?
并非如此。合规性还取决于具体数据类型、应用场景、所在地区及组织内部流程。本文提供的是工程检查清单框架,不能替代法律建议。
后续行动建议
在 SmaugBrain 中配置真实工作流之前,请先使用只读数据和低风险操作进行威胁建模与越权访问测试,随后再逐步扩大权限范围。