关于 azure-ai-content-safety
azure-ai-content-safety 是为生成式 AI 应用设计的内容审核与安全防护技能,适用于聊天、Agent 和 RAG 等场景。它涵盖输入输出审核、提示注入检测及基于来源的响应核验。
主要功能
- 01文本、图像及多模态审核
- 02检测提示注入与越狱
- 03核验响应依据来源
- 04识别受保护文本与代码
- 05自定义类别和屏蔽列表
适用场景
- 01为聊天应用审核输入和输出
- 02保护 RAG 内容免受间接注入
- 03检查高风险回答是否有来源依据
- 04筛查生成文本或代码中的受保护材料
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ vinayaklatthe/ microsoft-security-skills --skill azure-ai-content-safety安装后在 Claude Code 中输入/azure-ai-content-safety确认已加载。
详细介绍
Azure AI Content Safety
Azure AI Content Safety 是用于实时内容审核和生成式 AI 安全的平台。它会分析文本、图像和多模态内容中的危害类别,阻止提示注入/越狱尝试(Prompt Shields),检测缺乏依据的响应(Groundedness),并标记受保护文本/代码的复现。
它可作为内置内容筛选器(默认安全网)与 Azure OpenAI 配合使用,也可作为可配置的防护措施,用于任何 AI/大模型应用(包括非 Microsoft 模型)。
适用场景
构建或加固任何生成式 AI 应用——聊天助手、Agent、RAG 应用、多模态产品——且需要对输入和输出进行防护。
请勿将此技能用于 AI 工作负载的 SOC 威胁检测
(defender-for-cloud-ai)、终端用户 AI 使用治理(purview-ai-hub)或通用 AI 应用架构。
能力一览
| 能力 | 功能 | 应用位置 |
|---|---|---|
| 文本审核 | 将文本分类为仇恨、暴力、色情、自残(严重程度 0–7) | 输入 + 输出 |
| 图像审核 | 对图像应用相同类别的审核 | 用户上传内容、生成的图像 |
| 多模态审核 | 结合文本 + 图像上下文 | 多模态聊天 |
| Prompt Shields — 用户提示词 | 检测用户提示词中的越狱尝试 | 输入 |
| Prompt Shields — 间接提示注入 | 检测不可信依据内容(RAG、工具结果、网页)中的注入 | 依据内容处理前 |
| 依据性检测 | 根据依据来源检查大模型响应,检测幻觉 | 输出 |
| 受保护材料 — 文本 | 检测逐字复制的受版权保护文本 | 输出 |
| 受保护材料 — 代码 | 检测对公开仓库代码的复现 | 代码生成输出 |
| 自定义类别 | 客户定义的危害类别(例如,偏离品牌定位的话题) | 输入 + 输出 |
| 屏蔽列表 | 精确匹配 + 正则表达式屏蔽列表 | 输入 + 输出 |
方法
-
从 Azure OpenAI 默认内容筛选器开始。 每个 Azure OpenAI 部署都会在所有四个危害类别中启用默认的内容安全筛选器,严重程度为 中等。不要在未启用该筛选器的情况下部署。
-
根据使用场景调整严重程度阈值。
- 儿童产品:低阈值(严重程度达到 2 时拦截)。
- 成人创意应用:高阈值(仅在严重程度达到 6 时拦截)。 在 Azure OpenAI Studio 中创建自定义内容筛选器,并将其分配给部署。
-
为任何面向用户的聊天或 Agent 启用 Prompt Shields。
- 对传入提示词启用 用户提示词防护。
- 在接地内容(RAG 文档片段、工具输出、抓取的网页)送达模型之前,对其启用 间接提示词防护。间接注入的影响更大,也更难察觉。
-
为 RAG 应用进行接地性检测。 模型生成响应后,使用来源片段调用接地性检测。标记或拒绝缺乏依据的声明。这会增加延迟(额外调用一次模型),但对于高风险应用(医疗、法律、金融)而言,这是防范幻觉的主要手段。
-
对于大规模生成文本或代码的产品,启用受保护材料检测:
- 文本:SaaS 文案撰写工具。
- 代码:开发者助手(Copilot 风格)。 标记输出,并选择抑制输出或为其添加注释。
-
针对品牌或领域特有的风险(提及竞争对手、受监管的披露措辞、内部代号),使用自定义类别和屏蔽列表。 通过 Content Safety Studio 训练自定义类别,每个类别约需 100 个示例。
-
架构模式(边车 / 中间件)。
- 请求 → Prompt Shield →(LLM 调用)→ 输出分类器(危害、接地性、受保护材料)→ 响应。
- 失败时默认拒绝:如果 Content Safety 调用出错,不要返回未经控制的 LLM 输出。
- 记录每项判定(允许 / 拦截 / 标记),以便审计和调整。
-
性能。 每项防护措施会增加 50–300ms。并行执行输入和输出检查;遇到第一个硬性拦截条件时立即终止。将延迟纳入用户预期。
-
运营。 每周审查被拦截内容的样本(并采用隐私控制措施)。调整阈值、自定义类别和屏蔽列表。按类别跟踪误报率和漏报率。
防护措施
- 默认筛选器只是基线,并非完整的安全策略。 Prompt Shields、接地性检测和自定义类别能够弥补实际存在的缺口。
- 不要向终端用户公开危害类别评分。 “你说的 X 暴力评分为 6”这类消息会帮助攻击者调整越狱提示词。
- Content Safety 出错时默认拒绝。 服务返回 500 时,不应导致未经审核的 LLM 输出传递给用户。
- 间接提示词注入是容易被低估的风险。 用户的提示词是可见的;抓取的网页或文档中的恶意字符串则不可见。务必对接地内容启用防护。
- 接地性检测要求你发送接地来源。 RAG 应用本身就有这些来源;纯聊天应用则没有。
- 自定义类别不能替代产品策略。 它们只能检测内容;无法阻止用户通过其他工具生成有害内容。
- 受保护材料检测只能尽力而为。 版权 / IP 审查是法律流程,而非 API 的检测结果。
- Content Safety 按调用计费。 高流量应用需要进行成本建模;并非每次调用都要运行所有功能(接地性检测开销很大,应根据使用场景决定是否启用)。
- 与 Defender for Cloud AI 搭配使用,以检测 SOC 侧的攻击尝试和模式(
defender-for-cloud-ai)。
常见反模式
- “默认筛选器就够了”——没有越狱/注入防护。
- “因为‘我们的所有来源都可信’,所以跳过间接提示词防护”——这些来源只是可信地存在,并不代表未遭篡改。RAG 语料库会遭到投毒。
- “无论是否有依据,每次聊天调用都进行依据性检测”——对于没有可供核对的依据来源的纯聊天,会徒增成本。
- “以明文记录用户提示词以便调优”——会暴露隐私/个人身份信息。应进行假名化处理。
- “在错误消息中返回 Content Safety 严重性分数”——这会给攻击者提供调优依据。
- “仅用 5 个示例训练自定义类别”——无法提升模型效果。至少需要约 100 个示例。
- “将屏蔽列表作为主要策略”——无法应对改述。应结合分类器类别使用。
- “只对输出应用 Content Safety”——输入攻击(越狱)会到达模型。
示例提示词
Architect Content Safety guardrails for a RAG-based customer support assistant on Azure OpenAI.Configure Prompt Shields for a Foundry agent with internet-grounded tools.Tune content filter severity thresholds for a teen-audience product.Add groundedness detection to flag hallucinations in our medical Q&A assistant.Train a custom category for "competitor mention" and integrate as output blocklist.Cost and latency model: Content Safety calls per chat turn on a 10K-user app.IR runbook: how SOC handles "prompt shield blocked attempted jailbreak" pattern (paired with Defender for Cloud AI alert).
Microsoft Learn
- Content Safety 概述:https://learn.microsoft.com/azure/ai-services/content-safety/overview
- 文本审核:https://learn.microsoft.com/azure/ai-services/content-safety/concepts/harm-categories
- 图像审核:https://learn.microsoft.com/azure/ai-services/content-safety/quickstart-image
- Prompt Shields:https://learn.microsoft.com/azure/ai-services/content-safety/concepts/jailbreak-detection
- 依据性检测:https://learn.microsoft.com/azure/ai-services/content-safety/concepts/groundedness
- 受保护内容:https://learn.microsoft.com/azure/ai-services/content-safety/concepts/protected-material
- 自定义类别:https://learn.microsoft.com/azure/ai-services/content-safety/concepts/custom-categories
- Azure OpenAI 内容筛选:https://learn.microsoft.com/azure/ai-services/openai/concepts/content-filter
- Content Safety Studio:https://learn.microsoft.com/azure/ai-services/content-safety/studio-quickstart