跳转到内容
搜索文档

创建你的第一个网络策略

最后更新 查看 MarkdownAgent 设置

你可以通过按 IP 地址和端口等选择器过滤请求来控制网络层级的流量。你还可以将网络策略与身份提供程序集成,以应用基于身份的过滤。

要创建新的网络策略:

  1. Cloudflare 仪表板中,转到 Zero Trust > Traffic policies(流量策略) > Firewall policies(防火墙策略)

  2. Network(网络) 选项卡中,选择 Add a network policy(添加网络策略)

  3. 为策略命名。

  4. Traffic(流量) 下,构建一个逻辑表达式,定义您要允许或阻止的流量。

  5. 选择当流量匹配该逻辑表达式时要采取的 Action(操作)。例如,您可以使用 设备序列号 列表,以确保用户只有在从公司设备使用 Cloudflare One 客户端连接时才能访问应用程序:

    选择器 运算符 逻辑 操作
    SNI 域名 (SNI Domain) is internalapp.com 且 (And) 阻止 (Block)
    通过设备状态检测 (Passed Device Posture Checks) not in 设备序列号 (Device serial numbers)
  6. 选择 Create policy(创建策略)

  1. 创建具有以下权限的 API 令牌

    类型 项目 权限
    Account Zero Trust Edit

2.(可选)配置您的 API 环境变量以包含您的 账户 ID 和 API 令牌。 3. 向 创建 Zero Trust Gateway 规则 端点发送 POST 请求。例如,您可以使用 设备序列号 列表,以确保用户只有在从公司设备使用 Cloudflare One 客户端连接时才能访问应用程序:

Create a Zero Trust Gateway rulebash
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/gateway/rules" \
	--request POST \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"name": "Enforce device posture",
		"description": "Ensure only devices in Zero Trust organization can connect to application",
		"precedence": 0,
		"enabled": true,
		"action": "block",
		"filters": [
				"l4"
		],
		"traffic": "any(net.sni.domains[*] == \"internalapp.com\")",
		"identity": "",
		"device_posture": "not(any(device_posture.checks.passed[*] in {\"LIST_UUID\"}))"
	}'
{
	 "success": true,
	 "errors": [],
	 "messages": []
}

API 将返回该策略的摘要以及您的请求结果。

有关详细信息,请参阅 网络策略

这篇文档对您有帮助吗?