大多数传统 VPN 都有一个全局超时设置,要求最终用户每 X 小时登录一次,或者以一定的频率重置 VPN 配置文件。通过进行持续的身份评估,Zero Trust 安全模型消除了对大多数由会话超时触发的打断用户工作流的需求。然而,无论是定期还是访问特定的、高度敏感或受监管的内部服务,仍然可能有合法的理由希望用户重新验证身份。
要强制执行 Cloudflare One Client 重新验证,你可以在 Gateway 网络策略中按应用程序配置 Cloudflare One Client 会话超时。
当用户访问受保护的应用程序或网站时,Cloudflare 将根据配置的会话超时检查其设备客户端会话持续时间。如果会话已过期,系统将提示用户向用于注册 Cloudflare One Client 的身份提供商 (IdP) 重新进行身份验证。

注意:此图片中的标签可能反映了以前的产品名称。
每当用户向 IdP 重新进行身份验证时,用户的设备客户端会话持续时间就会重置为零,而不管是什么触发了该身份验证事件。
您可以在任何具有 Allow 操作的 Gateway 网络和 HTTP 策略上强制执行设备客户端会话超时。如果您未指定会话超时,则默认情况下设备客户端会话将是不受限制的。
会话超时对 Gateway DNS 策略没有影响。即使用户需要重新进行身份验证,DNS 策略仍保持活动状态。
要为 Gateway 策略配置会话超时:
- 在 Cloudflare 仪表板 ↗ 中,前往 Zero Trust > Traffic policies(流量策略) > Firewall policies(防火墙策略)。选择 Network(网络) 或 HTTP。
- 添加一条策略并选择 Allow 操作。或者,选择任何现有的 Allow 策略。
- 在 Step 4 - Configure policy settings(步骤 4 - 配置策略设置) 下,选择 Enforce Cloudflare One Client session duration(强制执行 Cloudflare One Client 会话时长) 旁的 Edit(编辑)。
- 输入格式为
1h30m0s的会话过期时间,然后保存。 - 保存策略。
-
将以下权限添加到您的
cloudflare_api_token↗:Zero Trust Write
-
选择一个具有 Allow 操作的网络 (
l4) 或 HTTP (http) 策略。 -
在策略的
rule_settings↗ 中,使用check_session参数启用并配置会话超时:resource "cloudflare_zero_trust_gateway_policy" "network_allow_wiki_IPs" { name = "Company Wiki Network policy" enabled = true account_id = var.cloudflare_account_id description = "Managed by Terraform - Allow employees to access company wiki IPs." precedence = 103 action = "allow" filters = ["l4"] traffic = "net.dst.ip in ${"$"}${cloudflare_zero_trust_list.wiki_IPs.id}" identity = "identity.email matches \".*@example.com\"" rule_settings = { check_session = { enforce = true duration = "1h30m0s" } } }
受此策略保护的应用程序现已启用会话检查。用户可以继续访问该策略定义之外的应用程序。
要设置全局重新验证事件(类似于传统 VPN 上的全局超时),我们建议将所有 Gateway Network Allow 策略设置为相同的基线 Cloudflare One Client 会话持续时间(通常在 3-7 天之间)。这将确保无论何时你的用户尝试在该时间窗口内访问私有网络上的任何应用程序,如果他们未在选择的天数内登录,他们将被迫通过你的身份提供者重新进行身份验证。
如果特定应用程序需要更严格的重新验证时间线,访问该应用程序的用户不必完成基线重新验证事件,因为他们已经符合基线策略。
配置全局 Cloudflare One Client 会话持续时间时,一个常见的错误是构建覆盖整个私有网络范围的单一策略。一个例子是 Allow 策略,该策略要求所有 destination IP 在 10.0.0.0/8 中的流量的用户每 7 天重新验证一次。这种类型的全局策略可能会导致次优的用户体验,因为过期的会话会阻断用户访问整个内部网络(包括私有 DNS 功能),而不是特定应用程序。如果用户错过了单次重新验证通知,他们可能不知道需要手动进入其 Cloudflare One Client 设置来进行重新验证。