跳转到内容
搜索文档

内容安全规则违规情况

最后更新 查看 MarkdownAgent 设置

当浏览器加载未被您的内容安全规则之一覆盖的资源时,就会发生规则违规行为。对于 Log(记录) 规则,资源会正常加载,但会被报告。对于 Allow(允许) 规则,浏览器会阻止该资源。

在您配置内容安全规则后不久,Cloudflare 仪表板将开始显示这些规则的任何违规行为。此信息适用于具有任何操作AllowLog)的规则。

有关规则违规的信息也可以通过 GraphQL APILogpush 获取。

在仪表板中查看规则违规情况

要查看规则违规信息:

  1. 在 Cloudflare 仪表板中,转到 Security rules(安全规则) 页面。

    Go to Security rules ↗
  2. (可选)按 Content security rules(内容安全规则) 筛选。

  • 在 Cloudflare 仪表板中,转到 Security(安全) > Client-side security(客户端安全) > Rules(规则)

显示的信息包括以下内容:

  • 规则名称旁的迷你图表,显示过去七天的违规情况。
  • 对于有关联违规的内容安全规则,每条规则提供可展开的详情部分,包含违规事件中出现频率最高的资源及每个顶级资源的迷你图表。

通过 GraphQL API 获取规则违规情况

使用 Cloudflare GraphQL API,通过以下数据集获取规则违规信息:

  • pageShieldReportsAdaptiveGroups

您可以查询过去 30 天内发生的规则违规的数据集。

使用内省 (introspection) 探索 GraphQL 模式中可用的字段。有关更多信息,请参阅探索 GraphQL 模式

有关 GraphQL 查询的介绍,请参阅查询基础知识

示例

GraphQL 查询示例graphql
query PageShieldReports(
	$zoneTag: string
	$datetimeStart: Time
	$datetimeEnd: Time
) {
	viewer {
		zones(filter: { zoneTag: $zoneTag }) {
			pageShieldReportsAdaptiveGroups(
				limit: 100
				orderBy: [datetime_ASC]
				filter: { datetime_geq: $datetimeStart, datetime_leq: $datetimeEnd }
			) {
				avg {
					sampleInterval
				}
				count
				dimensions {
					policyID
					datetime
					datetimeMinute
					datetimeFiveMinutes
					datetimeFifteenMinutes
					datetimeHalfOfHour
					datetimeHour
					url
					urlHost
					host
					resourceType
					pageURL
					action
				}
			}
		}
	}
}

curl 请求示例

echo '{ "query":
  "query PageShieldReports($zoneTag: string, $datetimeStart: string, $datetimeEnd: string) {
    viewer {
      zones(filter: {zoneTag: $zoneTag}) {
        pageShieldReportsAdaptiveGroups(limit: 100,  orderBy: [datetime_ASC], filter: {datetime_geq:$datetimeStart, datetime_leq:$datetimeEnd}) {
          avg {
            sampleInterval
          }
          count
          dimensions {
            policyID
            datetime
            datetimeMinute
            datetimeFiveMinutes
            datetimeFifteenMinutes
            datetimeHalfOfHour
            datetimeHour
            url
            urlHost
            host
            resourceType
            pageURL
            action
          }
        }
      }
    }
  }",
  "variables": {
    "zoneTag": "<CLOUDFLARE_ZONE_ID>",
    "datetimeStart": "2023-04-17T11:00:00Z",
    "datetimeEnd": "2023-04-24T12:00:00Z"
  }
}' | tr -d '\n' | curl --silent \
https://api.cloudflare.com/client/v4/graphql \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--header "Content-Type: application/json" \
--data @-

通过 Logpush 获取规则违规情况

Cloudflare Logpush 支持将日志推送到存储服务、SIEM 系统和日志管理提供商。

有关规则违规的信息可以在 page_shield_events 数据集中找到。

有关配置 Logpush 作业的更多信息,请参阅 Logpush 文档。

这篇文档对您有帮助吗?