Cloudflare Docs
Cloudflare Zero Trust
Visit Cloudflare Zero Trust on GitHub
Set theme to dark (⇧+D)

Enforce device posture

With Cloudflare Zero Trust, you can configure Zero Trust policies that rely on additional signals from the WARP client or from third-party endpoint security providers. When device posture checks are configured, users can only connect to a protected application or network resource if they have a managed or healthy device.

​​ Prerequisites

The WARP client must be deployed in Gateway with WARP mode.

​​ 1. Enable device posture checks

Setup instructions vary depending on the device posture attribute. Refer to the links below to view the setup guide for your provider.

​​ 2. Verify device posture checks

Before integrating a device posture check in a Gateway or Access policy, go to Logs > Posture and verify that the Pass/Fail results match your expectations.

​​ 3. Build a device posture policy

You can now use your device posture check in an Access policy or a Gateway network policy. In Access, the enabled device posture attributes will appear in the list of available selectors. In Gateway, the attributes will appear when you choose the Passed Device Posture Check selector.

​​ 4. Ensure traffic is going through WARP

WARP client and service-to-service posture checks rely on traffic going through WARP to detect posture information for a device. In your Split Tunnel configuration, ensure that the following domains are included in WARP:

  • The IdP used to authenticate to Cloudflare Zero Trust if posture check is part of an Access policy.
  • <your-team-name>.cloudflareaccess.com if posture check is part of an Access policy.
  • The application protected by the Access or Gateway policy.

​​ Policy enforcement rate

Access detects changes in device posture at the same rate as the polling frequency configured for the posture check.

Because Gateway evaluates network and HTTP policies on every request, it maintains a local cache of posture results that is only updated every five minutes. Therefore, Gateway policies are subject to an additional five-minute delay. For example, if you set your polling frequency to 10 minutes, it may take up to 15 minutes for Gateway to detect posture changes on a device.

​​ Polling frequency

​​ WARP client checks

By default, the WARP client polls the device for status changes every five minutes. If for some reason the new posture result does not update on Cloudflare’s edge, the previous result is considered valid for 24 hours. You can modify the polling schedule and expiration duration using the API.

​​ Service provider checks

When setting up a service-to-service integration, you will choose a polling frequency to determine how often Cloudflare will query the third-party API. The polling frequency also sets the expiration time for the device posture result.