数据丢失预防(Data Loss Prevention,简称 DLP)允许您捕获、存储和查看触发特定 DLP 策略的数据,以用作取证证据。DLP 提供了三种日志记录方式,每种方式适用于不同的需求:
| 方式 | 捕获内容 | 加密方式 | 可用性 |
|---|---|---|---|
| 有效负载日志记录 | 脱敏后的匹配项 + 75 字节的上下文 | 使用您的公钥加密 | 所有计划 |
| AI 提示词日志记录 | 生成式 AI 提示词主题、用户提示词和模型响应 | 使用您的公钥加密 | 所有计划 |
| Logpush 取证副本 | 完整的 HTTP 请求(标头 + 正文) | 仅在传输中加密 (TLS) | Enterprise |
所有计划的用户都可以在其 Cloudflare 日志中记录匹配的 HTTP 请求的有效负载或生成式 AI 提示词内容。此外,Enterprise 用户还可以配置 Logpush 作业,将完整的匹配 HTTP 请求副本发送到存储目标。
触发 DLP 策略的数据存储在 HTTP 请求的正文中 — 即携带文件上传、表单提交和聊天消息等内容的部分。该正文被称为有效负载(payload)。在诊断 DLP 策略的行为时,有效负载日志记录特别有用。由于触发规则的值可能包含敏感数据,因此它们使用客户提供的公钥进行加密,以便仅您可以稍后进行检查。存储的数据将包括匹配项的脱敏版本,以及匹配项前后各 75 字节的其他上下文信息。
在开始记录 DLP 有效负载日志之前,您需要设置 DLP 有效负载加密公钥。DLP 使用公钥加密,以便匹配的敏感数据仅对您可读 — Cloudflare 无法访问您的私钥,也无法解密您的日志。
您还可以配置有效负载日志掩码以控制 DLP 如何在日志中脱敏敏感数据。
DLP 可以在您的 Cloudflare 日志中记录匹配的 HTTP 请求的有效负载。使用有效负载日志记录来验证是什么内容触发了 DLP 检测 — 例如,确认匹配是真实发现还是误报。
您可以为使用 DLP Profile 选择器(将流量与您的 DLP 检测配置式进行匹配的筛选条件)的任何 Allow 或 Block HTTP 策略启用有效负载日志记录。
- 转到 Traffic policies(流量策略)> Firewall policies(防火墙策略)> HTTP。
- 编辑现有的 Allow 或 Block DLP 策略,或者创建新策略。
- 在策略生成器中,向下滚动到 **Configure policy settings(配置策略设置)**并开启 Log the payload of matched rules(记录匹配规则的有效负载)。
- 选择 Save(保存)。
DLP 现在将存储与该策略匹配的 HTTP 请求的部分有效负载。
要查看 DLP 有效负载日志:
- 转到 Insights(洞察) > Logs(日志) > HTTP request logs(HTTP 请求日志)。
- 转到您有兴趣查看的 DLP 日志并展开该行。
- 选择 Decrypt payload log(解密有效负载日志)。
- 输入您的私钥并选择 Decrypt(解密)。
您将看到匹配的 DLP 配置式 ID,后跟解密后的有效负载。
当您为 DLP 配置式开启了 AI 上下文分析时,您可以通过报告误报和正报来逐步提高检测准确性。误报是 DLP 错误标记的匹配(内容实际上并不敏感)。正报则确认 DLP 正确识别了敏感数据。这些报告会训练 AI 模型来调整其置信度阈值。
要将 DLP 匹配有效负载报告为误报或正报:
- 找到并解密您想要报告的有效负载日志。
- 在 Log details(日志详情) 中,选择检测到的上下文匹配。
- 在 Context(上下文) 中,选择脱敏后的匹配数据。
- 在 Match details(匹配详情) 中,选择您是要将匹配报告为误报还是正报。
根据您的报告,DLP 的机器学习将调整其对该关联配置式未来匹配的置信度。
- 所有 Cloudflare 日志都会进行静态加密(在存储在磁盘上时进行加密)。对有效负载内容进行加密为触发 DLP 规则的匹配值增加了第二层加密。
- Cloudflare 无法解密加密的有效负载,因为此操作需要您的私钥。Cloudflare 员工绝不会向您索要私钥。
- 默认情况下,DLP 使用 Full Mask(全遮码)对匹配模式中的字母数字字符进行脱敏,将其替换为
*,同时保留原有格式。例如,123-45-6789变为***-**-****。如果您的事件响应工作流需要更多上下文,您可以配置遮码级别以显示部分或完整匹配项。- 您可以使用 Exact Data Match (EDM) 来定义敏感数据。EDM 匹配日志将对您定义的字符串进行脱敏。
DLP 可以检测并记录发送到 AI 工具的提示词主题。
你可以为使用 Application 选择器以及支持的应用程序细粒度控制(Application Granular Controls)应用程序的任何 Allow 或 Block HTTP 策略启用 AI 提示词内容日志记录。这意味着您的策略必须针对特定的 AI 应用程序(如 ChatGPT),Gateway 才能对其进行细粒度检测。
- 转到 Traffic policies(流量策略) > Firewall policies(防火墙策略) > HTTP。
- 编辑现有的 Allow 或 Block DLP 策略,或者创建新策略。
- 在策略生成器中,向下滚动到 Configure policy settings(配置策略设置) 并开启 Capture generative AI prompt content in logs(在日志中捕获生成式 AI 提示词内容)。
- 选择 Save(保存)。
DLP 现在将为匹配该策略的请求存储用户提示词和 AI 模型响应。
要查看生成式 AI 提示词日志详细信息:
- 转到 Insights(洞察) > Logs(日志) > HTTP request logs(HTTP 请求日志)。
- 转到您有兴趣查看的 DLP 日志并展开该行。
- 选择 Decrypt payload log(解密有效负载日志)。
- 输入您的私钥并选择 Decrypt(解密)。
- 在 Summary(摘要) > GenAI prompt captured(已捕获 GenAI 提示) 中,选择 View prompt(查看提示)。
Gateway 日志将提供对话的摘要,包括使用的主题和 AI 模型,以及用户提示词和 AI 模型的原始响应(如果可用)。必须存在文本提示词,DLP 才能捕获提示词。
与有效负载日志记录(存储匹配内容的加密摘录)不同,取证副本会将完整的、未经修改的 HTTP 请求(包括所有标头和完整正文)发送到外部存储目标。
Gateway 允许您将 HTTP Allow 和 Block 策略中匹配的整个 HTTP 请求的副本,发送到在 Logpush(Cloudflare 的日志传送服务)中配置的存储目标(包括第三方目标)。取证副本包括未经修改的有效负载和可能包含敏感数据的标头。Logpush 日志仅在传输过程中加密,例如作为 TLS 流量发送时。一旦数据到达您的存储目标,它就会根据该目标的加密策略进行存储 — 而不是由 Cloudflare 加密。
要设置 DLP 取证副本 Logpush 作业:
- 在 Cloudflare 仪表板 ↗中,转到 Zero Trust > Insights(洞察) > Logs(日志),然后选择 Manage Logpush(管理 Logpush)。
- 在 Logpush 中,选择 Create a Logpush job(创建 Logpush 作业)。
- 选择 Logpush 目标。
- 在 Configure logpush job(配置 Logpush 作业) 中,选择 DLP forensic copies 数据集。选择 Create Logpush job(创建 Logpush 作业)。
- 返回 Zero Trust,转到 Traffic policies(流量策略) > Firewall policies(防火墙策略) > HTTP。
- 编辑现有的 Allow 或 Block 策略,或者创建新策略。您的策略不需要包含 DLP 配置式 — 任何 Gateway HTTP 策略都可以发送取证副本。
- 在策略生成器中,向下滚动到 Configure policy settings(配置策略设置) 并开启 Send DLP forensic copies to storage(将 DLP 取证副本发送到存储)。
- 选择存储目标。Gateway 将列出可以接收 HTTP 请求的任何已配置 Logpush 作业或集成。
- 选择 Save policy(保存策略)。
DLP 现在将把匹配该策略的 HTTP 请求的副本发送到您的 Logpush 目标。
每个账户的 Logpush 最多支持四个 DLP 取证副本 Logpush 作业。默认情况下,Gateway 将向您配置的 DLP 取证副本作业发送所有匹配的 HTTP 请求。要向特定作业发送特定的策略匹配,请配置日志过滤器(Log filter)。如果请求包含压缩包文件,DLP 将仅向您配置的存储发送最多 100 MB 的未压缩内容。