
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/">
    <channel>
        <title><![CDATA[ The Cloudflare Blog ]]></title>
        <description><![CDATA[ Get the latest news on how products at Cloudflare are built, technologies used, and join the teams helping to build a better Internet. ]]></description>
        <link>https://blog.cloudflare.com</link>
        <atom:link href="https://blog.cloudflare.com/" rel="self" type="application/rss+xml"/>
        <language>en-us</language>
        <image>
            <url>https://blog.cloudflare.com/favicon.png</url>
            <title>The Cloudflare Blog</title>
            <link>https://blog.cloudflare.com</link>
        </image>
        <lastBuildDate>Sat, 04 Apr 2026 15:06:26 GMT</lastBuildDate>
        <item>
            <title><![CDATA[Ending the "silent drop": how Dynamic Path MTU Discovery makes the Cloudflare One Client more resilient]]></title>
            <link>https://blog.cloudflare.com/client-dynamic-path-mtu-discovery/</link>
            <pubDate>Thu, 05 Mar 2026 14:00:00 GMT</pubDate>
            <description><![CDATA[ The Cloudflare One Client now features the ability to actively probe and adjust packet sizes. This update eliminates the problems caused by tunnel layering and MTU differences, providing more stability and resiliency.  ]]></description>
            <content:encoded><![CDATA[ <p></p><p>You’ve likely seen this support ticket countless times: a user’s Internet connection that worked just fine a moment ago for Slack and DNS lookups is suddenly hung the moment they attempt a large file upload, join a video call, or initiate an SSH session. The culprit isn't usually a bandwidth shortage or service outage issue, it is the "PMTUD Black Hole" — a frustration that occurs when packets are too large for a specific network path, but the network fails to communicate that limit back to the sender. This situation often happens when you’re locked into using networks you do not manage or vendors with <a href="https://www.cloudflare.com/learning/network-layer/what-is-mtu/"><u>maximum transmission unit</u></a> (MTU) restrictions, and you have no means to address the problem.</p><p>Today, we are moving past these legacy networking constraints. By implementing <a href="https://developers.cloudflare.com/cloudflare-one/team-and-resources/devices/warp/deployment/mdm-deployment/path-mtu-discovery/"><u>Path MTU Discovery</u></a> (PMTUD), the Cloudflare One Client has shifted from a passive observer to an active participant in path discovery.</p><p>Dynamic Path MTU Discovery allows the client to intelligently and dynamically adjust to the optimal packet size for most network paths using MTUs above <a href="https://developers.cloudflare.com/cloudflare-one/team-and-resources/devices/warp/deployment/mdm-deployment/path-mtu-discovery/#path-mtu-discovery"><u>1281 bytes</u></a>. This ensures that a user’s connection remains stable, whether they are on a high-speed corporate backbone or a restrictive cellular network.</p>
    <div>
      <h3>The “modern security meets legacy infrastructure” challenge<b> </b></h3>
      <a href="#the-modern-security-meets-legacy-infrastructure-challenge">
        
      </a>
    </div>
    <p>To understand the solution, we have to look at how modern security protocols interact with the diversity of global Internet infrastructure. The MTU represents the largest data packet size a device can send over a network without fragmentation: typically 1500 bytes for standard Ethernet.</p><p>As the Cloudflare One client has evolved to support modern enterprise-grade requirements (such as <a href="https://developers.cloudflare.com/ssl/edge-certificates/additional-options/cipher-suites/compliance-status/#fips-140-2"><u>FIPS 140-2 compliance</u></a>), the amount of metadata and encryption overhead within each packet has naturally increased. This is a deliberate choice to ensure our users have the highest level of protection available today.</p><p>However, much of the world’s Internet infrastructure was built decades ago with a rigid expectation of 1500-byte packets. On specialized networks like LTE/5G, satellite links, or public safety networks like FirstNet, the actual available space for data is often lower than the standard. When a secure, encrypted packet hits an older router with a lower limit (e.g., 1300 bytes), that router should ideally send an <a href="https://www.cloudflare.com/learning/ddos/glossary/internet-control-message-protocol-icmp/"><u>Internet Control Message Protocol</u></a> (ICMP) message stating "Destination Unreachable" back to the sender to request a smaller size.</p><p>But that doesn’t always happen. The "Black Hole" occurs when firewalls or middleboxes silently drop those ICMP feedback messages. Without this feedback, the sender keeps trying to send large packets that never arrive, and the application simply waits in a "zombie" state until the connection eventually times out.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/N8nwoU8QnWvDeM0yymBX0/2482b85f8ebade81520fdd950f968341/image2.png" />
          </figure>
    <div>
      <h3>Cloudflare’s solution: active probing with PMTUD</h3>
      <a href="#cloudflares-solution-active-probing-with-pmtud">
        
      </a>
    </div>
    <p>Cloudflare’s implementation of <a href="https://datatracker.ietf.org/doc/html/rfc8899"><u>RFC 8899 Datagram Packetization Layer Path MTU Discovery (PMTUD)</u></a> removes the reliance on these fragile, legacy feedback loops. Because our modern client utilizes the <a href="https://developers.cloudflare.com/cloudflare-one/team-and-resources/devices/warp/configure-warp/warp-settings/#device-tunnel-protocol"><u>MASQUE protocol</u></a> — built on top of Cloudflare’s open source <a href="https://github.com/cloudflare/quiche"><u>QUIC library</u></a> — the client can perform active, end-to-end interrogation of the network path.</p><p>Instead of waiting for an error message that might never come, the client proactively sends encrypted packets of varying sizes to the Cloudflare edge. This probe tests MTUs from the upper bound of the supported MTU range to the midpoint, until the client narrows down to the exact MTU to match. This is a sophisticated, non-disruptive handshake happening in the background. If the Cloudflare edge receives a specific-sized probe, it acknowledges it; if a probe is lost, the client instantly knows the precise capacity of that specific network segment.</p><p>The client then dynamically resizes its virtual interface MTU on the fly, by periodically validating the capacity of the path that we established at connection onset. This ensures that if, for example, a user moves from a 1500-MTU Wi-Fi network at a station to a 1300-MTU cellular backhaul in the field, the transition is seamless. The application session remains uninterrupted because the client has already negotiated the best possible path for those secure packets.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/bRWgjgUSJtxj6QQ7sn6Et/3dc26d7c97173909860d9c942202bf0e/image3.png" />
          </figure>
    <div>
      <h3>Real-world impact, from first responders to hybrid workers</h3>
      <a href="#real-world-impact-from-first-responders-to-hybrid-workers">
        
      </a>
    </div>
    <p>This technical shift has profound implications for mission-critical connectivity. Consider the reliability needs of a first responder using a vehicle-mounted router. These systems often navigate complex NAT-traversal and priority-routing layers that aggressively shrink the available MTU. Without PMTUD, critical software like Computer Aided Dispatch (CAD) systems may experience frequent disconnects during tower handoffs or signal fluctuations. By using active discovery, the Cloudflare One Client maintains a sticky connection that shields the application from the underlying network volatility.</p><p>This same logic applies to the global hybrid workforce. A road warrior working from a hotel in a different country often encounters legacy middleboxes and complex double-NAT environments. Instead of choppy video calls and stalled file transfers, the client identifies the bottleneck in seconds and optimizes the packet flow — before the user even notices a change.</p>
    <div>
      <h3>Get PMTUD for your devices</h3>
      <a href="#get-pmtud-for-your-devices">
        
      </a>
    </div>
    <p>Anyone using the Cloudflare One Client with the MASQUE protocol can try Path MTU Discovery now for free. Use our detailed <a href="https://developers.cloudflare.com/cloudflare-one/team-and-resources/devices/warp/deployment/mdm-deployment/path-mtu-discovery/"><u>documentation</u></a> to get started routing traffic through the Cloudflare edge with the speed and stability of PMTUD on your Windows, macOS, and Linux devices.</p><p>If you are new to Cloudflare One, you too can start protecting your first 50 users for free. Simply <a href="https://dash.cloudflare.com/sign-up/zero-trust"><u>create an account</u></a>, download the<a href="https://1.1.1.1/"> <u>Cloudflare One Client</u></a>, and follow our<a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-devices/warp/"> <u>onboarding guide</u></a> to experience a faster, more stable connection for your entire team.</p> ]]></content:encoded>
            <category><![CDATA[Cloudflare Zero Trust]]></category>
            <category><![CDATA[Cloudflare One]]></category>
            <category><![CDATA[Cloudflare One Client]]></category>
            <category><![CDATA[Zero Trust]]></category>
            <category><![CDATA[Connectivity]]></category>
            <category><![CDATA[SASE]]></category>
            <guid isPermaLink="false">XzwjagUzAbLvFCj2KNgGB</guid>
            <dc:creator>Koko Uko</dc:creator>
            <dc:creator>Rhett Griggs</dc:creator>
            <dc:creator>Todd Murray</dc:creator>
        </item>
        <item>
            <title><![CDATA[A QUICker SASE client: re-building Proxy Mode]]></title>
            <link>https://blog.cloudflare.com/faster-sase-proxy-mode-quic/</link>
            <pubDate>Thu, 05 Mar 2026 06:00:00 GMT</pubDate>
            <description><![CDATA[ By transitioning the Cloudflare One Client to use QUIC streams for Proxy Mode, we eliminated the overhead of user-space TCP stacks, resulting in a 2x increase in throughput and significant latency reduction for end users.  ]]></description>
            <content:encoded><![CDATA[ <p>When you need to use a <a href="https://blog.cloudflare.com/a-primer-on-proxies/"><u>proxy</u></a> to keep your zero trust environment secure, it often comes with a cost: poor performance for your users. Soon after deploying a client proxy, security teams are generally slammed with support tickets from users frustrated with sluggish browser speed, slow file transfers, and video calls glitching at just the wrong moment. After a while, you start to chalk it up to the proxy — potentially blinding yourself to other issues affecting performance. </p><p>We knew it didn’t have to be this way. We knew users could go faster, without sacrificing security, if we completely re-built our approach to <a href="https://developers.cloudflare.com/cloudflare-one/team-and-resources/devices/warp/configure-warp/warp-modes/#local-proxy-mode"><u>proxy mode</u></a>. So we did.</p><p>In the early days of developing the device client for our <a href="https://www.cloudflare.com/learning/access-management/what-is-sase/"><u>SASE</u></a> platform, <a href="https://www.cloudflare.com/sase/"><u>Cloudflare One</u></a>, we prioritized universal compatibility. When an admin enabled proxy mode, the Client acted as a local SOCKS5 or HTTP proxy. However, because our underlying tunnel architecture was built on WireGuard, a Layer 3 (L3) protocol, we faced a technical hurdle: how to get application-layer (L4) TCP traffic into an L3 tunnel. Moving from L4 to L3 was especially difficult because our desktop Client works across multiple platforms (Windows, macOS, Linux) so we couldn’t <a href="https://blog.cloudflare.com/from-ip-packets-to-http-the-many-faces-of-our-oxy-framework/#from-an-ip-flow-to-a-tcp-stream"><u>use the kernel </u></a>to achieve this.</p><p>To get over this hurdle, we used smoltcp, a Rust-based user-space TCP implementation. When a packet hit the local proxy, the Client had to perform a conversion, using smoltcp to convert the L4 stream into L3 packets for the WireGuard tunnel.</p><p>While this worked, it wasn't efficient. Smoltcp is optimized for embedded systems, and does not support modern TCP features. In addition, in the Cloudflare edge, we had to convert the L3 packets back into an L4 stream. For users, this manifested as a performance ceiling. On media-heavy sites where a browser might open dozens of concurrent connections for images and video, and the lack of a high performing TCP stack led to high latency and sluggish load times when even on high-speed fiber connections, proxy mode felt significantly slower than all the other device client modes.</p>
    <div>
      <h3>Introducing direct L4 proxying with QUIC</h3>
      <a href="#introducing-direct-l4-proxying-with-quic">
        
      </a>
    </div>
    <p>To solve this, we’ve re-built the Cloudflare One Client’s proxy mode from the ground up and deprecated the use of WireGuard for proxy mode, so we can capitalize on the capabilities of QUIC. We were already leveraging <a href="https://blog.cloudflare.com/zero-trust-warp-with-a-masque/"><u>MASQUE</u></a> (part of QUIC) for proxying IP packets, and added the usage of QUIC streams for direct L4 proxying.</p><p>By leveraging HTTP/3 (<a href="https://datatracker.ietf.org/doc/rfc9114"><u>RFC 9114</u></a>) with the CONNECT method, we can now keep traffic at Layer 4, where it belongs. When your browser sends a SOCKS5 or HTTP request to the Client, it is no longer broken down into L3 packets.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/w9mIuKa8usLgxDxVqaHax/9861604fc84508b7fc6666bf8b82a874/image1.png" />
          </figure><p>Instead, it is encapsulated directly into a QUIC stream.</p><p>This architectural shift provides three immediate technical advantages:</p><ul><li><p>Bypassing smoltcp: By removing the L3 translation layer, we eliminate IP packet handling and the limitations of smoltcp’s TCP implementation.</p></li><li><p>Native QUIC Benefits: We benefit from modern congestion control and flow control, which are handled natively by the transport layer.</p></li><li><p>Tuneability: The Client and Cloudflare’s edge can tune QUIC’s parameters to optimize performance.</p></li></ul><p>In our internal testing, the results were clear: <b>download and upload speeds doubled, and latency decreased significantly</b>.</p>
    <div>
      <h3>Who benefits the most</h3>
      <a href="#who-benefits-the-most">
        
      </a>
    </div>
    <p>While faster is always better, this update specifically unblocks three key common use cases.</p><p>First, in <b>coexistence with third-party VPNs </b>where a legacy VPN is still required for specific on-prem resources or where having a dual SASE setup is required for redundancy/compliance, the local proxy mode is the go-to solution for adding zero trust security to web traffic. This update ensures that "layering" security doesn't mean sacrificing the user experience.</p><p>Second, for <b>high-bandwidth application partitioning</b>, proxy mode is often used to steer specific browser traffic through Cloudflare Gateway while leaving the rest of the OS on the local network. Users can now stream high-definition content or handle large datasets without sacrificing performance.</p><p>Finally, <b>developers and power users</b> who rely on the SOCKS5 secondary listener for CLI tools or scripts will see immediate improvements. Remote API calls and data transfers through the proxy now benefit from the same low-latency connection as the rest of the Cloudflare global network.</p>
    <div>
      <h3>How to get started</h3>
      <a href="#how-to-get-started">
        
      </a>
    </div>
    <p>The proxy mode improvements are available with minimum client version 2025.8.779.0 for Windows, macOS, and Linux devices. To take advantage of these performance gains, ensure you are running the <a href="https://developers.cloudflare.com/cloudflare-one/team-and-resources/devices/warp/download-warp/"><u>latest version of the Cloudflare One Client</u></a>.</p><ol><li><p>Log in to the <b>Cloudflare One dashboard</b>.</p></li><li><p>Navigate to <b>Teams &amp; Resources &gt; Devices &gt; Device profiles &gt; General profiles</b>.</p></li><li><p>Select a profile to edit or create a new one and ensure the <b>Service mode</b> is set to <b>Local proxy mode</b> and the <b>Device tunnel protocol</b> is set to <b>MASQUE</b>.</p></li></ol><p>You can verify your active protocol on a client machine by running the following command in your terminal: </p>
            <pre><code>warp-cli settings | grep protocol</code></pre>
            <p>Visit our <a href="https://developers.cloudflare.com/cloudflare-one/team-and-resources/devices/warp/configure-warp/warp-modes/#set-up-local-proxy-mode"><u>documentation</u></a> for detailed guidance on enabling proxy mode for your devices.</p><p>If you haven't started your SASE journey yet, you can sign up for a<a href="https://dash.cloudflare.com/sign-up/zero-trust"><u> free Cloudflare One account</u></a> for up to 50 users today. Simply <a href="https://dash.cloudflare.com/sign-up/zero-trust"><u>create an account</u></a>, download the<a href="https://1.1.1.1/"> <u>Cloudflare One Client</u></a>, and follow our<a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-devices/warp/"> <u>onboarding guide</u></a> to experience a faster, more stable connection for your entire team.</p> ]]></content:encoded>
            <category><![CDATA[SASE]]></category>
            <category><![CDATA[Proxying]]></category>
            <category><![CDATA[Cloudflare Zero Trust]]></category>
            <category><![CDATA[Zero Trust]]></category>
            <category><![CDATA[Cloudflare One]]></category>
            <category><![CDATA[Cloudflare One Client]]></category>
            <category><![CDATA[Connectivity]]></category>
            <category><![CDATA[TCP]]></category>
            <guid isPermaLink="false">11I7Snst3LH2T0tJC5HLbN</guid>
            <dc:creator>Koko Uko</dc:creator>
            <dc:creator>Logan Praneis</dc:creator>
            <dc:creator>Gregor Maier</dc:creator>
        </item>
        <item>
            <title><![CDATA[Mind the gap: new tools for continuous enforcement from boot to login]]></title>
            <link>https://blog.cloudflare.com/mandatory-authentication-mfa/</link>
            <pubDate>Wed, 04 Mar 2026 14:00:00 GMT</pubDate>
            <description><![CDATA[ Cloudflare’s mandatory authentication and independent MFA protect organizations by ensuring continuous enforcement, from the moment a machine boots until sensitive resources are accessed. ]]></description>
            <content:encoded><![CDATA[ <p>One of our favorite ask-me-anything questions for company meetings or panels at security conferences is the classic: “What keeps you up at night?”</p><p>For a <a href="https://www.cloudflare.com/ciso/"><u>CISO</u></a>, that question is maybe a bit of a nightmare in itself. It does not have one single answer; it has dozens. It’s the constant tension between enabling a globally distributed workforce to do their best work, and ensuring that "best work" does not inadvertently open the door to a catastrophic breach.</p><p>We often talk about the "<a href="https://www.cloudflare.com/the-net/roadmap-zerotrust/"><u>zero trust journey</u></a>," but the reality is that the journey is almost certainly paved with friction. If security is too cumbersome, users find creative (and dangerous) ways around it. If it’s seamless at the cost of effectiveness, it might not be secure enough to stop a determined adversary.</p><p>Today, we are excited to announce two new tools in Cloudflare’s <a href="https://www.cloudflare.com/learning/access-management/what-is-sase/"><u>SASE</u></a> toolbox designed to modernize remote access by eliminating the "dark corners" of your network security without adding friction to the user experience: mandatory authentication and Cloudflare’s own <a href="https://www.cloudflare.com/learning/access-management/what-is-multi-factor-authentication/"><u>multi-factor authentication (MFA)</u></a>. </p>
    <div>
      <h2>Addressing the gap between installation and enforcement</h2>
      <a href="#addressing-the-gap-between-installation-and-enforcement">
        
      </a>
    </div>
    <p>When you deploy the Cloudflare One Client, you gain incredible visibility and control. You can apply policies for permitted destinations, define the Internet traffic that routes through Cloudflare, and set up traffic inspection at both the application and network layer. But there has always been a visibility challenge from when there is no user actually authenticated.</p><p>This gap occurs in two primary scenarios:</p><ol><li><p>A new device: Cloudflare One Client is installed via mobile device management (MDM), but the user has not authenticated yet.</p></li><li><p>Re-authentication grey zone: The session expires, and the user, either out of forgetfulness or a desire to bypass restrictions, does not log back in.</p></li></ol><p>In either case, the device is now unknown. This is dangerous. You lose visibility, and your security posture reverts to whatever the local machine allows.</p>
    <div>
      <h3>Introducing mandatory authentication</h3>
      <a href="#introducing-mandatory-authentication">
        
      </a>
    </div>
    <p>To close this loop, we are introducing <b>mandatory authentication</b>. When enabled via your MDM configuration, the Cloudflare One Client becomes the gatekeeper of Internet access from the moment the machine boots up.</p><p>If a user is not actively authenticated, the Cloudflare One client will:</p><ul><li><p>Block all Internet traffic by default using the system firewall.</p></li><li><p>Allow traffic from the device client’s authentication flow using a process-specific exception.</p></li><li><p>Prompt users to authenticate, guiding them through the process, so they don’t have to hunt for the right buttons.</p></li></ul><p>By making authentication a prerequisite for connectivity, you ensure that every managed device is accounted for, all the time.</p><p><i>Note: mandatory authentication will become available in our Cloudflare One client on Windows initially, with support for other platforms to follow. </i></p>
    <div>
      <h2>When one source of trust is not enough</h2>
      <a href="#when-one-source-of-trust-is-not-enough">
        
      </a>
    </div>
    <p>Most organizations have moved toward <a href="https://www.cloudflare.com/learning/access-management/what-is-sso/"><u>single sign-on (SSO)</u></a> as their primary security anchor. If you use Okta, Entra ID, or Google, you likely require MFA at the initial login. That’s a great start, but in a modern threat landscape, it is no longer the finish line.</p><p>The hard truth is that <a href="https://www.cloudflare.com/learning/access-management/what-is-an-identity-provider/"><u>identity providers (IdPs)</u></a> are high-value targets. If an attacker successfully compromises a user’s SSO session, perhaps through a sophisticated session hijacking or social engineering, they effectively hold the keys to every application behind that SSO.</p>
    <div>
      <h3>Cloudflare’s independent MFA: a secondary root of trust</h3>
      <a href="#cloudflares-independent-mfa-a-secondary-root-of-trust">
        
      </a>
    </div>
    <p>This is where Cloudflare’s MFA can help. Think of this as a "step-up MFA" that lives at the network edge, independent of your IdP.</p><p>By remaining separate from your IdP, this introduces another authority that has to “sign off” on any user trying to access a protected resource. That means even if your primary IdP credentials are compromised or spoofed, an attacker will hit a wall when trying to access something like your production database—because they do not have access to the second factor.</p><p><a href="https://www.cloudflare.com/zero-trust/products/access/"><u>Cloudflare Access</u></a> will offer a few different means of providing MFA:</p><ul><li><p>Biometrics (i.e., Windows Hello, Apple Touch ID, and Apple Face ID)</p></li><li><p>Security key (WebAuthn and FIDO2 as well as PIV for SSH with Access for Infrastructure)</p></li><li><p>Time-based one-time password (TOTP) through authenticator apps</p></li></ul><p>Administrators will have the flexibility to define how users must authenticate and how often. This can be configured not only at a global level (i.e., establish mandatory MFA for all Access applications), but also with more granular controls for specific applications or policies. For example, your organization may decide to allow lower assurance MFA methods for chat apps, but require a security key for access to source code.</p><p>Or, you could enforce strong MFA to sensitive resources for third-parties like contractors, who otherwise may use a personal email or social identity like LinkedIn. You can also easily add modern MFA methods to legacy apps that don’t otherwise support it natively, without touching a line of code.</p><p>End users will be able to enroll an MFA device easily through their <a href="https://developers.cloudflare.com/cloudflare-one/access-controls/access-settings/app-launcher/"><u>App Launcher</u></a>.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/soh6QIt80EoRsWAaTKLIc/9398094837a2ef71025f012f28ffbd2e/image2.jpg" />
          </figure><p><sup><i>Example of what customizing MFA settings for an Access policy may look like. Note: This is a mockup and may change.</i></sup></p><p>Cloudflare’s independent MFA is in closed beta with new customers being onboarded each week. You can <a href="https://www.cloudflare.com/lp/access-independent-mfa"><u>request access here</u></a> to try out this new feature!</p>
    <div>
      <h3>Helping CISOs sleep at night</h3>
      <a href="#helping-cisos-sleep-at-night">
        
      </a>
    </div>
    <p>Security is often a game of "closing the loop." By ensuring that devices are registered and authenticated before they can touch the open Internet and by requiring an independent second layer of verification for your most precious assets, we are making the "blast radius" of a potential attack significantly smaller.</p><p>These features don't just add security; they add certainty. Certainty that your policies are being enforced and certainty that a single compromised password won't lead to a total breach.</p><p>We are moving beyond simple access control and into a world of continuous, automated posture enforcement. And we’re just getting started.</p><p>Ready to lock down your fleet? You can <a href="https://dash.cloudflare.com/sign-up/zero-trust"><u>get started today</u></a> with Cloudflare One for free for up to 50 users. </p><p>We’re excited to see how you use these tools to harden your perimeter and simplify your users’ day-to-day workflows. As always, we’d love to hear your feedback! Join us in the <a href="https://community.cloudflare.com/"><u>Cloudflare Community</u></a> or reach out to your account team to share your thoughts.</p> ]]></content:encoded>
            <category><![CDATA[Cloudflare Zero Trust]]></category>
            <category><![CDATA[Cloudflare One]]></category>
            <category><![CDATA[Cloudflare Access]]></category>
            <category><![CDATA[Access]]></category>
            <category><![CDATA[Zero Trust]]></category>
            <category><![CDATA[WARP]]></category>
            <guid isPermaLink="false">KiwO7JTmCDekuq75t4Jf4</guid>
            <dc:creator>Alex Holland</dc:creator>
            <dc:creator>Shahed El Baba</dc:creator>
            <dc:creator>Yi Huang</dc:creator>
            <dc:creator>Rhett Griggs</dc:creator>
        </item>
        <item>
            <title><![CDATA[Defeating the deepfake: stopping laptop farms and insider threats]]></title>
            <link>https://blog.cloudflare.com/deepfakes-insider-threats-identity-verification/</link>
            <pubDate>Wed, 04 Mar 2026 06:00:00 GMT</pubDate>
            <description><![CDATA[ Cloudflare One is partnering with Nametag to combat laptop farms and AI-enhanced identity fraud by requiring identity verification during employee onboarding and via continuous authentication. ]]></description>
            <content:encoded><![CDATA[ <p>Trust is the most expensive vulnerability in modern security architecture. In recent years, the security industry has pivoted toward a <a href="https://www.cloudflare.com/learning/security/glossary/what-is-zero-trust/"><u>zero trust model</u></a> for networks — assuming breach and verifying every request. Yet when it comes to the <i>people</i> behind those requests, we often default back to implicit trust. We <i>trust</i> that the person on the Zoom call is who they say they are. We <i>trust</i> that the documents uploaded to an HR portal are genuine.</p><p>That trust is now being weaponized at an unprecedented scale.</p><p>In our <a href="http://blog.cloudflare.com/2026-threat-report"><u>2026 Cloudflare Threat Report</u></a>, we highlight a rapidly accelerating threat vector: the rise of "remote IT worker" fraud. Often linked to nation-states, including North Korea, these are not just individual bad actors. They are organized operations running laptop farms: warehouses of devices remotely accessed by workers using stolen identities to infiltrate companies, steal intellectual property (IP), and funnel revenue illicitly.</p><p>These attackers have evolved and continue to do so with advancements in <a href="https://www.cloudflare.com/learning/ai/what-is-artificial-intelligence/"><u>artificial intelligence (AI)</u></a>. They use <a href="https://www.cloudflare.com/learning/ai/what-is-generative-ai/"><u>generative AI</u></a> to pass interviews and deepfake tools to fabricate flawless government IDs. Traditional background checks and standard <a href="https://www.cloudflare.com/learning/access-management/what-is-an-identity-provider/"><u>identity providers (IdPs)</u></a> are no longer enough. Bad actors are exploiting an <a href="https://www.go.nametag.co/2026-workforce-impersonation-report"><u>identity assurance gap</u></a>, which exists because most zero trust onboarding models verify devices and credentials, not people.</p><p>To close this gap, Cloudflare is partnering with <a href="https://getnametag.com/"><u>Nametag</u></a>, a pioneer in workforce identity verification, to bring identity-verified onboarding and continuous identity assurance to our SASE platform, <a href="https://developers.cloudflare.com/cloudflare-one/"><u>Cloudflare One</u></a>.</p>
    <div>
      <h3>Your biggest insider threat was scheming from the start</h3>
      <a href="#your-biggest-insider-threat-was-scheming-from-the-start">
        
      </a>
    </div>
    <p>The challenge with insider risk is that companies naturally want to trust their employees. By the time malicious actors are detected by traditional <a href="https://www.cloudflare.com/learning/access-management/what-is-dlp/"><u>data loss prevention (DLP)</u></a> or <a href="https://www.cloudflare.com/learning/security/what-is-ueba/"><u>user entity behavior analytics (UEBA)</u></a> tools, they are already inside the perimeter. They have valid credentials, a corporate laptop, and access to sensitive repositories.</p><p>The "remote IT worker" scheme exploits the gap between <i>hiring</i> and <i>onboarding</i>. Attackers use stolen or fabricated identities to get hired. Once the laptop is shipped to a "mule" address (typically a domestic laptop farm located in the country of the remote worker’s alleged employment), it is racked and connected to a keyboard, video, and mouse (KVM) switch. The remote actor then logs in via VPN (or perhaps remote desktop), appearing to be a legitimate employee.</p><p>Because the credentials are valid and the device is corporate-issued, standard <a href="https://www.cloudflare.com/learning/access-management/what-is-ztna/"><u>zero trust network access (ZTNA)</u></a> policies often see this traffic as "safe" — when in fact it’s an enormous risk to your business.</p>
    <div>
      <h3>Enter identity-verified zero trust</h3>
      <a href="#enter-identity-verified-zero-trust">
        
      </a>
    </div>
    <p><a href="https://www.cloudflare.com/zero-trust/products/access/"><u>Cloudflare Access</u></a> already serves as the aggregation layer for your <a href="https://developers.cloudflare.com/cloudflare-one/access-controls/policies/"><u>security policies</u></a> — checking attributes such as device posture, location, and user group membership before granting access to applications, infrastructure, or <a href="https://www.cloudflare.com/learning/ai/what-is-model-context-protocol-mcp/"><u>MCP servers</u></a>. <b>Through our partnership with Nametag, we are adding a critical new layer: workforce identity verification.</b></p><p>Previously, IT departments had no choice but to assume trust throughout the new user onboarding process. They could either ship a laptop to an address provided by the new hire and then send their initial credentials to their personal email, or require them to come in person –– costly and impractical in a world of distributed workforces and contractors. </p><p>Nametag replaces assumed trust with verified identity, ensuring that the person receiving, configuring, and connecting a device to protected resources is a real person, a legitimate person, and the right person throughout the entire process. This integration allows organizations to uncover and stop bad actors, including North Korean IT workers, <i>before</i> they gain access to any internal resources or data.</p>
    <div>
      <h3>How it works</h3>
      <a href="#how-it-works">
        
      </a>
    </div>
    <p>Nametag is integrated using <a href="https://openid.net/developers/discover-openid-and-openid-connect/"><u>OpenID Connect</u></a> (OIDC). You can configure it as an IdP within Cloudflare Access or chain it as an external evaluation factor alongside your primary identity provider (like Okta or Microsoft Entra ID).</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/6qMAEp4s6PAD9zEBrbDYMF/dc269f1553141e7ee2b6cf9adb44caa0/image2.png" />
          </figure><p><i>Example of the Cloudflare Access login page prompting for a user to authenticate using Nametag.</i></p><p>Here is an example workflow for a high-security onboarding scenario:</p><ol><li><p><b>Trigger:</b> A new user attempts to access their initial onboarding portal (protected by Cloudflare Access).</p></li><li><p><b>Challenge:</b> Instead of just asking for a username and password, Cloudflare directs the user to Nametag for authentication via OIDC.</p></li><li><p><b>Verification:</b> The user enters their new work email address, then snaps a quick selfie and scans their government-issued photo ID using their phone.</p></li><li><p><b>Attestation:</b> Nametag’s <a href="https://getnametag.com/technology/deepfake-defense"><u>Deepfake Defense</u></a>™ identity verification engine leverages advanced cryptography, biometrics, AI and other features to ensure that the user is both a <i>real</i> person and the <i>right</i> person. Nametag’s technology uniquely prevents bad actors from using deepfake IDs and selfies in sophisticated injection attacks or presentation attacks (e.g., holding up a printed photo).</p></li><li><p><b>Enforcement: </b>If that check is successful, Nametag returns an ID token to Cloudflare to complete the OIDC flow. Cloudflare then grants or denies access to the application based on the user’s identity and the Access policies.</p></li></ol><p>All of this happens before the user can access email, code repositories, or other internal resources.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4z3lwwRE7KIq8655FOB9Dp/f3135a1da5f48360fb457ce88309cd20/image4.png" />
          </figure><p>Verifying your identity with Nametag takes under 30 seconds to complete. No biometrics are stored after this interaction.</p>
    <div>
      <h3>A layered defense</h3>
      <a href="#a-layered-defense">
        
      </a>
    </div>
    <p>This partnership complements Cloudflare’s existing suite of insider threat protections. Today, you can:</p><ul><li><p><b>Scan for data exfiltration</b> using our API-driven <a href="https://developers.cloudflare.com/cloudflare-one/data-loss-prevention/"><u>DLP</u></a>.</p></li><li><p><b>Reduce browsing risk</b> with <a href="https://developers.cloudflare.com/cloudflare-one/remote-browser-isolation/"><u>Remote Browser Isolation (RBI)</u></a>.</p></li><li><p><b>Identify shadow IT</b> and detect misconfigurations with our <a href="https://developers.cloudflare.com/cloudflare-one/insights/analytics/shadow-it-discovery/"><u>shadow IT report</u></a> and our <a href="https://developers.cloudflare.com/cloudflare-one/integrations/cloud-and-saas/"><u>Cloud Access Security Broker (CASB</u></a>).</p></li></ul><p>Nametag provides the missing link: identity assurance. It moves us from knowing <i>what</i> account is logging in, to knowing exactly <i>who</i> is behind the keyboard.</p><p>In an era where AI can fake a face and a voice, cryptographic proof of identity is the only way to safely trust your workforce.</p>
    <div>
      <h3>Beyond onboarding: continuous verification</h3>
      <a href="#beyond-onboarding-continuous-verification">
        
      </a>
    </div>
    <p>While stopping bad actors at the door is critical, the threat landscape is dynamic. Legitimate credentials can be sold, and legitimate employees can be compromised.</p><p>To protect against that present and ever-evolving risk, Cloudflare Access now incorporates <a href="https://blog.cloudflare.com/adaptive-access-user-risk-scoring"><u>user risk scores</u></a> so security teams can build context-aware policies. If a user’s risk score suddenly increases from low to high, access can be revoked to any (or all) applications.</p><p>In the future, you’ll be able to enforce step-up verification based on signals such as user risk score, in the middle of an active session. Rather than hitting the “big red button” and potentially disrupting a user who does have a legitimate reason for accessing the production billing system from an usual location, you will instead be able to challenge the user to verify with Nametag or by using Cloudflare’s independent MFA with strong authentication methods. If the user is a session hijacker or a bot, they will be unable to pass these checks. </p><p>This capability will also extend to self-service IT workflows. Password resets and MFA device registration are prime targets for social engineering (e.g., the <a href="https://www.bloomberg.com/news/articles/2023-09-16/mgm-resorts-hackers-broke-in-after-tricking-it-service-desk"><u>MGM Resorts help desk attacks</u></a>). By placing Nametag behind Cloudflare Access for these specific portals, you eliminate the possibility of a support agent being socially engineered into resetting a password for an attacker.</p>
    <div>
      <h3>Defend against the future, now</h3>
      <a href="#defend-against-the-future-now">
        
      </a>
    </div>
    <p>Security cannot rely on assumptions. As AI tools lower the barrier to entry for sophisticated fraud, your defenses must evolve to verify the human element with cryptographic certainty. The "remote IT worker" threat is not a hypothetical scenario—it is an active campaign targeting organizations globally.</p><p>You don't need to overhaul your entire infrastructure to stop it. You can layer these protections on top of your existing IdP and applications immediately.</p><p><b>Cloudflare One is free for up to 50 users</b>, allowing you to pilot identity-verified onboarding flows or protect high-risk internal portals right now.</p><ul><li><p><b>Get started:</b> <a href="https://dash.cloudflare.com/sign-up/zero-trust"><u>Sign up</u></a> for Cloudflare One to begin building your policy engine.</p></li><li><p><b>Deploy the integration:</b> Follow the <a href="https://getnametag.com/docs/cloudflare/"><u>step-by-step guide</u></a> to connect Nametag to Cloudflare Access in minutes.</p></li><li><p><b>Understand the risk:</b> Read the full <a href="http://blog.cloudflare.com/2026-threat-report"><u>Cloudflare Threat Report</u></a> to see the data behind the rise in insider threats and AI impersonation.</p></li></ul><p>Don't wait for a breach to verify your workforce. Start implementing a SASE architecture that trusts nothing — not even the face on the screen — without verification.</p> ]]></content:encoded>
            <category><![CDATA[SASE]]></category>
            <category><![CDATA[Cloudflare Zero Trust]]></category>
            <category><![CDATA[Cloudflare One]]></category>
            <category><![CDATA[Access]]></category>
            <category><![CDATA[Cloudflare Access]]></category>
            <category><![CDATA[Partners]]></category>
            <guid isPermaLink="false">iteras2eloIu0LJ7zULaP</guid>
            <dc:creator>Ann Ming Samborski</dc:creator>
        </item>
        <item>
            <title><![CDATA[Moving from license plates to badges: the Gateway Authorization Proxy]]></title>
            <link>https://blog.cloudflare.com/gateway-authorization-proxy-identity-aware-policies/</link>
            <pubDate>Wed, 04 Mar 2026 06:00:00 GMT</pubDate>
            <description><![CDATA[ Cloudflare’s Gateway Authorization Proxy adds support for identity-aware policies for clientless devices, securing virtual desktops, and guest networks without a device client. ]]></description>
            <content:encoded><![CDATA[ <p>We often talk about the "ideal" state, one where every device has a managed client like the <a href="https://developers.cloudflare.com/cloudflare-one/team-and-resources/devices/warp/"><u>Cloudflare One Client</u></a> installed, providing deep visibility and seamless protection. However, reality often gets in the way.</p><p>Sometimes you are dealing with a company acquisition, managing virtual desktops, or working in a highly regulated environment where you simply cannot install software on an endpoint. You still need to protect that traffic, even when you don’t fully manage the device.</p><p>Closing this gap requires moving the identity challenge from the device to the network itself. By combining the browser’s native proxy capabilities with our global network, we can verify users and enforce granular policies on any device that can reach the Internet. We’ve built the <a href="https://developers.cloudflare.com/cloudflare-one/networks/resolvers-and-proxies/proxy-endpoints/"><u>Gateway Authorization Proxy</u></a> and <a href="https://developers.cloudflare.com/cloudflare-one/networks/resolvers-and-proxies/proxy-endpoints/best-practices/"><u>Proxy Auto-Configuration (PAC) File Hosting</u></a> to automate this authentication and simplify how unmanaged devices connect to Cloudflare.</p>
    <div>
      <h3><b>The problem: sometimes IP addresses aren't enough</b></h3>
      <a href="#the-problem-sometimes-ip-addresses-arent-enough">
        
      </a>
    </div>
    <p>Back in 2022, we released <a href="https://developers.cloudflare.com/cloudflare-one/networks/resolvers-and-proxies/proxy-endpoints/#source-ip-endpoint"><u>proxy endpoints</u></a> that allowed you to route traffic through Cloudflare to apply filtering rules. It solved the immediate need for access, but it had a significant "identity crisis."</p><p>Because that system relied on static IP addresses to identify users, it was a bit like a security guard who only recognizes cars, not the people inside them. If a car (a specific IP) showed up, it was let in. But if the driver switched cars or worked from a different location, the guard got confused. This created a few major headaches:</p><ul><li><p><b>Anonymous Logs:</b> We knew the IP address, but we didn’t know the person.</p></li><li><p><b>Brittle Policies:</b> If a user moved to a new home or office, the endpoint broke or required an update.</p></li><li><p><b>Manual Maintenance:</b> You had to host your own PAC file (the "GPS" that tells your browser where the proxy is) — one more thing for your team to manage.</p></li></ul>
    <div>
      <h3><b>The solution: the Authorization Proxy</b></h3>
      <a href="#the-solution-the-authorization-proxy">
        
      </a>
    </div>
    
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4keaUmegcmKUc2WxgcbTym/50b4a5fd446a7ad5a3bd0e12d2d2fb8d/image2.png" />
          </figure><p><i>Authorization proxy Access policy setup page</i></p><p>The new <a href="https://developers.cloudflare.com/cloudflare-one/networks/resolvers-and-proxies/proxy-endpoints/"><u>Gateway Authorization Proxy</u></a> adds a "badge reader" at the entrance. Instead of just looking at where the traffic is coming from, we now use a Cloudflare Access-style login to verify who the user is, before enforcing Gateway filtering.</p><p>Think of this as moving from a guest list based on license plates, to a system where everyone has their own badge. This brings several massive benefits:</p><ul><li><p><b>True identity integration:</b> Your logs related to proxy endpoints now show exactly which user is accessing which site. You can write specific rules like "only the Finance team can access this accounting tool," even without a client installed on the device.</p></li><li><p><b>Multiple identity providers:</b> This is a superpower for large companies or those undergoing M&amp;A. You can choose which identity providers to show your users. You can display one or multiple login methods (like Okta and Azure AD) at the same time. This is a level of flexibility that competitors don't currently offer.</p></li><li><p><b>Simplified billing:</b> Each user simply occupies a "seat," exactly like they do with the Cloudflare One Client. There are no complicated new metrics to track.</p></li></ul><p>To make this possible, we had to overcome the technical hurdle of associating a user’s identity with every request, and without a device client. Read on to see how it works.</p>
    <div>
      <h3><b>How Authorization Proxy tracks identity</b></h3>
      <a href="#how-authorization-proxy-tracks-identity">
        
      </a>
    </div>
    <p>The Authorization Proxy uses signed JWT cookies to maintain identity, but there's a catch: when you first visit a new domain through the proxy, there's no cookie yet. Think of it like showing your badge at each new building you enter.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4ImFMDkJWfn6lAva3NtTzg/82d646b89e851e0826493e2a71f7c8fc/image3.png" />
          </figure><p>The flowchart above illustrates exactly how this authentication process works:</p><ul><li><p><b>First visit to a domain</b>: When you navigate to a new domain, the Gateway Authorization Proxy checks if a domain identity cookie is present. If not, you're redirected to Cloudflare Access, which then checks for an existing Cloudflare Access identity cookie. If you're already authenticated with Cloudflare Access, we generate a secure token specifically for that domain. If you're not, we redirect you to login with your identity provider(s).</p></li><li><p><b>Invisible to users</b>: This entire process happens in milliseconds thanks to Cloudflare's global edge network. The redirect is so fast that users don't notice it — they simply see their page load normally.</p></li><li><p><b>Repeat visits are instant</b>: Once the cookie is set, all subsequent requests to that domain (and its subdomains) are immediately authorized. No more redirects needed.</p></li></ul><p>Because of this approach, we can log and filter traffic per person across all domains they access, and revoke access in an instant when needed — all without requiring any software installation on the user's device.</p>
    <div>
      <h3><b>No more hosting your own PAC files</b></h3>
      <a href="#no-more-hosting-your-own-pac-files">
        
      </a>
    </div>
    <p>We are also taking the "homework" out of the setup process. You can now host your PAC files directly on Cloudflare, using <a href="https://developers.cloudflare.com/cloudflare-one/networks/resolvers-and-proxies/proxy-endpoints/best-practices/"><u>Proxy Auto-Configuration (PAC) File Hosting</u></a>.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4KnkVcR1Kq6BbFxPbLezRO/89c6a69adc62105b9c9344c24df69a36/image4.png" />
          </figure><p><i>PAC file configuration page</i></p><p>To make it easy, we have included starter templates to get you up and running in minutes. We have also integrated our AI assistant, Cloudy, to provide summaries that help you understand exactly what your PAC file is doing, without having to read through lines of code.</p>
    <div>
      <h3><b>Is this right for your team?</b></h3>
      <a href="#is-this-right-for-your-team">
        
      </a>
    </div>
    <p>While we still recommend the Cloudflare One Client for greater control and the best user experience, the Auth Proxy is the perfect fit for specific scenarios:</p><ul><li><p><b>Virtual desktops (VDI):</b> Environments where users log into a virtual machine and use a browser to reach the Internet.</p></li><li><p><b>Mergers and acquisitions:</b> When you need to bring two different companies under one security umbrella quickly.</p></li><li><p><b>Compliance constraints:</b> When you are legally or technically prohibited from installing software on an endpoint.</p></li></ul>
    <div>
      <h3><b>What’s next?</b></h3>
      <a href="#whats-next">
        
      </a>
    </div>
    <p>This expands our clientless security options to connect to Cloudflare One, and we are already working on expanding our supported identity methods related to Authorization Endpoints. Look out for Kerberos, mTLS, and traditional username/password authentication to give you even more flexibility in how you authenticate your users.</p><p>The <a href="https://developers.cloudflare.com/cloudflare-one/networks/resolvers-and-proxies/proxy-endpoints/#authorization-endpoint"><u>Gateway Authorization Proxy</u></a> and <a href="https://developers.cloudflare.com/cloudflare-one/networks/resolvers-and-proxies/proxy-endpoints/best-practices/"><u>PAC File Hosting</u></a> are available in open beta today for all account types. You can get started by going to the "Resolvers and Proxies" section of your Cloudflare dashboard.</p> ]]></content:encoded>
            <category><![CDATA[SASE]]></category>
            <category><![CDATA[Secure Web Gateway]]></category>
            <category><![CDATA[Cloudflare Gateway]]></category>
            <category><![CDATA[Cloudflare Zero Trust]]></category>
            <category><![CDATA[Cloudflare One]]></category>
            <guid isPermaLink="false">2K6ieiC5putSKvW7Jg65kR</guid>
            <dc:creator>Ankur Aggarwal</dc:creator>
            <dc:creator>Alex Holland</dc:creator>
        </item>
        <item>
            <title><![CDATA[Stop reacting to breaches and start preventing them with User Risk Scoring]]></title>
            <link>https://blog.cloudflare.com/adaptive-access-user-risk-scoring/</link>
            <pubDate>Wed, 04 Mar 2026 06:00:00 GMT</pubDate>
            <description><![CDATA[ Cloudflare One now incorporates dynamic User Risk Scores into Access policies to enable automated, adaptive security responses. This update allows teams to move beyond binary "allow/deny" rules by evaluating continuous behavior signals from both internal and third-party sources. ]]></description>
            <content:encoded><![CDATA[ <p>Most security teams spend their days playing a high-stakes game of Whac-A-Mole. A user’s credentials get phished, or they accidentally download a malicious file, and suddenly you’re in incident response mode. </p><p>We built our <a href="https://www.cloudflare.com/learning/access-management/what-is-sase/"><u>SASE</u></a> platform, Cloudflare One, to stop that cycle. By placing Access and Gateway in front of your applications and Internet traffic, we gave you the tools to decide who gets in and where they can go.</p><p>Today, we’re making those decisions smarter. You can now incorporate <b>User Risk Scores</b> directly into your <a href="https://www.cloudflare.com/learning/access-management/what-is-ztna/"><u>zero trust network access (ZTNA)</u></a> policies. Instead of just checking "Who is this user?" and "Is their device healthy?", you can now ask, "How has this user been behaving lately?" and adjust their access in real time.</p>
    <div>
      <h3>Step 1: From "what" to "how"</h3>
      <a href="#step-1-from-what-to-how">
        
      </a>
    </div>
    <p>For years, traditional corporate access was binary. You either had the right login and the right certificate, or you didn’t. But identity is fluid. A legitimate user can become a risk if their account is compromised or if they start exhibiting "<a href="https://www.cloudflare.com/learning/access-management/what-is-an-insider-threat/"><u>insider threat</u></a>" behaviors — like impossible travel, multiple failed login attempts, or triggering data loss prevention rules by moving sensitive data.</p><p>Cloudflare One now continuously calculates a risk score for every user in your organization based on these behaviors.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/15N4TzN0c5kYtPjlpMWYDa/e8c621ba2c2c253c04e6d6dbff992117/image1.png" />
          </figure><p><sup><i>Example list of users and their risk scores</i></sup></p><p>Once you’ve onboarded your team to Cloudflare One, you can navigate to the <b>Team &amp; Resources &gt; Users &gt; Risk Score </b>section of the dashboard. Here, you can define which behaviors matter to you. For example, you might decide that impossible travel has a "high" risk level, while using a device in need of an update is "medium."</p><p>Cloudflare’s risk engine continuously evaluates telemetry from across the SASE platform. For internal signals, the engine monitors logs from <a href="https://www.cloudflare.com/zero-trust/products/access/"><u>Cloudflare Access</u></a> (e.g., successful/failed logins, geographic context) and <a href="https://www.cloudflare.com/zero-trust/products/gateway/"><u>Cloudflare Gateway</u></a> (e.g., malware hits, risky browsing categories, or sensitive data triggers in DLP).</p><p>For third-party signals, we’ve built service-to-service integrations with partners like CrowdStrike and <a href="https://developers.cloudflare.com/reference-architecture/architectures/cloudflare-sase-with-sentinelone/"><u>SentinelOne</u></a>. These integrations allow Cloudflare to ingest external telemetry, such as <a href="https://developers.cloudflare.com/cloudflare-one/integrations/service-providers/crowdstrike/#device-posture-attributes"><u>CrowdStrike’s device posture attributes</u></a>, and map it to a user’s profile.</p><p>The calculation logic is designed to be deterministic:</p><ol><li><p><b>Selection:</b> Administrators choose which specific "risk behaviors" (impossible travel, DLP violations, and more) to enable for their organization.</p></li><li><p><b>Aggregation:</b> The engine identifies all risk events associated with a user.</p></li><li><p><b>Scoring:</b> A user’s risk score is determined by the highest risk level (low, medium, or high) of any <i>enabled</i> behavior triggered during that period.</p></li><li><p><b>Reset:</b> If an admin investigates and clears an incident, they can manually reset the user’s score, which preserves the history but resets their access based on risk data gathered going forward.</p></li></ol>
    <div>
      <h3>Step 2: Easily apply adaptive access</h3>
      <a href="#step-2-easily-apply-adaptive-access">
        
      </a>
    </div>
    <p>Knowing a user is risky is step one. Doing something about it — automatically — is step two.</p><p>In the past, if a security analyst saw a suspicious user, they’d have to manually revoke sessions or move the user into a "restricted" group in their <a href="https://www.cloudflare.com/learning/access-management/what-is-an-identity-provider/"><u>Identity Provider (IdP)</u></a>. That takes time — time an attacker uses to move laterally.</p><p>Now, you can build <b>Adaptive Access</b> policies. When you create or edit an Access policy, you’ll find a new selector: <b>User Risk Score</b>.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/23fnnidZJpbIsd0btV88uD/cc1ae840bf753758febd63f1f44cb851/image3.png" />
          </figure><p><sup><i>Example of the new User Risk Score selector in an Access policy.</i></sup><sup> </sup></p><p>This allows you to create global or application-specific rules such as: "If a user's risk score is high, they cannot access the Finance Portal," or "If a user's risk score is medium, they must use a physical security key to log in." Such rules ensure corporate operations are not interrupted while additional layers of security are applied.</p>
    <div>
      <h3>Step 3: Closing the loop</h3>
      <a href="#step-3-closing-the-loop">
        
      </a>
    </div>
    <p>The best part of this system is that it’s dynamic. If a user’s risk score drops after being reviewed and cleared by an investigator, their access is automatically restored based on your policy. Today, risk-based access can revoke access in the middle of an active session when risk score increases. In the future, we will explore expanding this to enforce step-up MFA in the middle of an active session when the risk score changes as well. </p><p>We’ve also made sure this works with the tools you already use. If you use Okta, Cloudflare can <a href="https://developers.cloudflare.com/cloudflare-one/team-and-resources/users/risk-score/#send-risk-score-to-okta"><u>share these risk signals back to Okta</u></a>, ensuring that a user flagged on the network is also restricted at the front door of your <a href="https://www.cloudflare.com/learning/access-management/what-is-sso/"><u>SSO</u></a>. This integration uses the <a href="https://openid.net/specs/openid-sharedsignals-framework-1_0.html"><u>Shared Signals Framework</u></a>, which enables the sharing of risk signals across platforms.</p>
    <div>
      <h3>Move faster, stay secure</h3>
      <a href="#move-faster-stay-secure">
        
      </a>
    </div>
    <p>We built Cloudflare One so that security teams could stop being the "department of no" and start being the department of "yes, and safely." Incorporating user risk scores into your Access policies is the next step in that journey. It moves your security from a static snapshot at login to a continuous, living conversation with your network architecture.</p><p>If you’re already a Cloudflare customer, you can start exploring these risk signals in your dashboard today. If you’re still wrestling with legacy VPNs or manual security reviews, we’d love to help you flip the switch.</p><p>You can <a href="https://dash.cloudflare.com/sign-up/zero-trust"><u>get started for free</u></a> for up to 50 users — no sales call required. For larger organizations looking to integrate third-party signals like CrowdStrike or SentinelOne into their global policies, our team is ready to walk you through a ZTNA pilot.</p><p><a href="https://www.cloudflare.com/products/zero-trust/plans/enterprise/"><u>Reach out to our team here</u></a> to see how adaptive access can fit into your SASE roadmap.</p> ]]></content:encoded>
            <category><![CDATA[Cloudflare Zero Trust]]></category>
            <category><![CDATA[Cloudflare One]]></category>
            <category><![CDATA[Access]]></category>
            <category><![CDATA[Cloudflare Access]]></category>
            <category><![CDATA[Cloudflare One User Risk Score]]></category>
            <guid isPermaLink="false">1YQO5CPesGaryX68LLpSmv</guid>
            <dc:creator>Nevins Bartolomeo</dc:creator>
            <dc:creator>Noelle Kagan</dc:creator>
            <dc:creator>Ann Ming Samborski</dc:creator>
        </item>
        <item>
            <title><![CDATA[15 years of helping build a better Internet: a look back at Birthday Week 2025]]></title>
            <link>https://blog.cloudflare.com/birthday-week-2025-wrap-up/</link>
            <pubDate>Mon, 29 Sep 2025 14:00:00 GMT</pubDate>
            <description><![CDATA[ Rust-powered core systems, post-quantum upgrades, developer access for students, PlanetScale integration, open-source partnerships, and our biggest internship program ever — 1,111 interns in 2026. ]]></description>
            <content:encoded><![CDATA[ <p>Cloudflare launched fifteen years ago with a mission to help build a better Internet. Over that time the Internet has changed and so has what it needs from teams like ours.  In this year’s <a href="https://blog.cloudflare.com/cloudflare-2025-annual-founders-letter/"><u>Founder’s Letter</u></a>, Matthew and Michelle discussed the role we have played in the evolution of the Internet, from helping encryption grow from 10% to 95% of Internet traffic to more recent challenges like how people consume content. </p><p>We spend Birthday Week every year releasing the products and capabilities we believe the Internet needs at this moment and around the corner. Previous <a href="https://blog.cloudflare.com/tag/birthday-week/"><u>Birthday Weeks</u></a> saw the launch of <a href="https://blog.cloudflare.com/introducing-cloudflares-automatic-ipv6-gatewa/"><u>IPv6 gateway</u></a> in 2011,  <a href="https://blog.cloudflare.com/introducing-universal-ssl/"><u>Universal SSL</u></a> in 2014, <a href="https://blog.cloudflare.com/introducing-cloudflare-workers/"><u>Cloudflare Workers</u></a> and <a href="https://blog.cloudflare.com/unmetered-mitigation/"><u>unmetered DDoS protection</u></a> in 2017, <a href="https://blog.cloudflare.com/introducing-cloudflare-radar/"><u>Cloudflare Radar</u></a> in 2020, <a href="https://www.cloudflare.com/developer-platform/products/r2/"><u>R2 Object Storage</u></a> with zero egress fees in 2021,  <a href="https://blog.cloudflare.com/post-quantum-tunnel/"><u>post-quantum upgrades for Cloudflare Tunnel</u></a> in 2022, <a href="https://blog.cloudflare.com/best-place-region-earth-inference/"><u>Workers AI</u></a> and <a href="https://blog.cloudflare.com/announcing-encrypted-client-hello/"><u>Encrypted Client Hello</u></a> in 2023. And those are just a sample of the launches.</p><p>This year’s themes focused on helping prepare the Internet for a new model of monetization that encourages great content to be published, fostering more opportunities to build community both inside and outside of Cloudflare, and evergreen missions like making more features available to everyone and constantly improving the speed and security of what we offer.</p><p>We shipped a lot of new things this year. In case you missed the dozens of blog posts, here is a breakdown of everything we announced during Birthday Week 2025. </p><p><b>Monday, September 22</b></p>
<div><table><thead>
  <tr>
    <th><span>What</span></th>
    <th><span>In a sentence …</span></th>
  </tr></thead>
<tbody>
  <tr>
    <td><a href="https://blog.cloudflare.com/cloudflare-1111-intern-program/?_gl=1*rxpw9t*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MTgwNzEkajI4JGwwJGgw"><span>Help build the future: announcing Cloudflare’s goal to hire 1,111 interns in 2026</span></a></td>
    <td><span>To invest in the next generation of builders, we announced our most ambitious intern program yet with a goal to hire 1,111 interns in 2026.</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/supporting-the-future-of-the-open-web/?_gl=1*1l701kl*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MTg0MDMkajYwJGwwJGgw"><span>Supporting the future of the open web: Cloudflare is sponsoring Ladybird and Omarchy</span></a></td>
    <td><span>To support a diverse and open Internet, we are now sponsoring Ladybird (an independent browser) and Omarchy (an open-source Linux distribution and developer environment).</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/new-hubs-for-startups/?_gl=1*s35rml*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MTg2NjEkajYwJGwwJGgw/"><span>Come build with us: Cloudflare’s new hubs for startups</span></a></td>
    <td><span>We are opening our office doors in four major cities (San Francisco, Austin, London, and Lisbon) as free hubs for startups to collaborate and connect with the builder community.</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/ai-crawl-control-for-project-galileo/?_gl=1*n9jmji*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MTg2ODUkajM2JGwwJGgw"><span>Free access to Cloudflare developer services for non-profit and civil society organizations</span></a></td>
    <td><span>We extended our Cloudflare for Startups program to non-profits and public-interest organizations, offering free credits for our developer tools.</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/workers-for-students/?_gl=1*lq39wt*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MTg3NDgkajYwJGwwJGgw"><span>Introducing free access to Cloudflare developer features for students</span></a></td>
    <td><span>We are removing cost as a barrier for the next generation by giving students with .edu emails 12 months of free access to our paid developer platform features.</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/capnweb-javascript-rpc-library/?_gl=1*19mcm4k*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MjA2MTgkajYwJGwwJGgw"><span>Cap’n Web: a new RPC system for browsers and web servers</span></a></td>
    <td><span>We open-sourced Cap'n Web, a new JavaScript-native RPC protocol that simplifies powerful, schema-free communication for web applications.</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/workers-launchpad-006/?_gl=1*8z9nf6*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MjA3MTckajUwJGwwJGgw"><span>A lookback at Workers Launchpad and a warm welcome to Cohort #6</span></a></td>
    <td><span>We announced Cohort #6 of the Workers Launchpad, our accelerator program for startups building on Cloudflare.</span></td>
  </tr>
</tbody></table></div><p><b>Tuesday, September 23</b></p>
<div><table><thead>
  <tr>
    <th><span>What</span></th>
    <th><span>In a sentence …</span></th>
  </tr></thead>
<tbody>
  <tr>
    <td><a href="https://blog.cloudflare.com/per-customer-bot-defenses/?_gl=1*1i1oipn*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MjA3NjAkajckbDAkaDA./"><span>Building unique, per-customer defenses against advanced bot threats in the AI era</span></a></td>
    <td><span>New anomaly detection system that uses machine learning trained on each zone to build defenses against AI-driven bot attacks. </span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/cloudflare-astro-tanstack/?_gl=1*v1uhzx*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MjE2MzckajYwJGwwJGgw"><span>Why Cloudflare, Netlify, and Webflow are collaborating to support Open Source tools</span></a></td>
    <td><span>To support the open web, we joined forces with Webflow to sponsor Astro, and with Netlify to sponsor TanStack.</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/x402/?_gl=1*kizcyy*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MjA5OTUkajYkbDAkaDA./"><span>Launching the x402 Foundation with Coinbase, and support for x402 transactions</span></a></td>
    <td><span>We are partnering with Coinbase to create the x402 Foundation, encouraging the adoption of the </span><a href="https://github.com/coinbase/x402?cf_target_id=4D4A124640BFF471F5B56706F9A86B34"><span>x402 protocol</span></a><span> to allow clients and services to exchange value on the web using a common language</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/ai-crawl-control-for-project-galileo/?_gl=1*1r1zsjt*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MjE3NjYkajYwJGwwJGgw"><span>Helping protect journalists and local news from AI crawlers with Project Galileo</span></a></td>
    <td><span>We are extending our free Bot Management and AI Crawl Control services to journalists and news organizations through Project Galileo.</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/confidence-score-rubric/"><span>Cloudflare Confidence Scorecards - making AI safer for the Internet</span></a></td>
    <td><span>Automated evaluation of AI and SaaS tools, helping organizations to embrace AI without compromising security.</span></td>
  </tr>
</tbody></table></div><p><b>Wednesday, September 24</b></p>
<div><table><thead>
  <tr>
    <th><span>What</span></th>
    <th><span>In a sentence …</span></th>
  </tr></thead>
<tbody>
  <tr>
    <td><a href="https://blog.cloudflare.com/automatically-secure/?_gl=1*8mjfiy*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MjE4MTckajkkbDAkaDA."><span>Automatically Secure: how we upgraded 6,000,000 domains by default</span></a></td>
    <td><span>Our Automatic SSL/TLS system has upgraded over 6 million domains to more secure encryption modes by default and will soon automatically enable post-quantum connections.</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/content-signals-policy/?_gl=1*lfy031*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MjE5NTkkajYwJGwwJGgw/"><span>Giving users choice with Cloudflare’s new Content Signals Policy</span></a></td>
    <td><span>The Content Signals Policy is a new standard for robots.txt that lets creators express clear preferences for how AI can use their content.</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/building-a-better-internet-with-responsible-ai-bot-principles/?_gl=1*hjo4nx*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MjIwMTIkajckbDAkaDA."><span>To build a better Internet in the age of AI, we need responsible AI bot principles</span></a></td>
    <td><span>A proposed set of responsible AI bot principles to start a conversation around transparency and respect for content creators' preferences.</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/saas-to-saas-security/?_gl=1*tigi23*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MjIwNjgkajYwJGwwJGgw"><span>Securing data in SaaS to SaaS applications</span></a></td>
    <td><span>New security tools to give companies visibility and control over data flowing between SaaS applications.</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/post-quantum-warp/?_gl=1*1vy23vv*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MjIyMDIkajYwJGwwJGgw"><span>Securing today for the quantum future: WARP client now supports post-quantum cryptography (PQC)</span></a></td>
    <td><span>Cloudflare’s WARP client now supports post-quantum cryptography, providing quantum-resistant encryption for traffic. </span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/a-simpler-path-to-a-safer-internet-an-update-to-our-csam-scanning-tool/?_gl=1*1avvoeq*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MjIxMTUkajEzJGwwJGgw"><span>A simpler path to a safer Internet: an update to our CSAM scanning tool</span></a></td>
    <td><span>We made our CSAM Scanning Tool easier to adopt by removing the need to create and provide unique credentials, helping more site owners protect their platforms.</span></td>
  </tr>
</tbody></table></div><p>
<b>Thursday, September 25</b></p>
<div><table><thead>
  <tr>
    <th><span>What</span></th>
    <th><span>In a sentence …</span></th>
  </tr></thead>
<tbody>
  <tr>
    <td><a href="https://blog.cloudflare.com/enterprise-grade-features-for-all/?_gl=1*ll2laa*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MjIyODIkajYwJGwwJGgw/"><span>Every Cloudflare feature, available to everyone</span></a></td>
    <td><span>We are making every Cloudflare feature, starting with Single Sign On (SSO), available for anyone to purchase on any plan. </span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/cloudflare-developer-platform-keeps-getting-better-faster-and-more-powerful/?_gl=1*1dwrmxx*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MjI0MzgkajYwJGwwJGgw/"><span>Cloudflare's developer platform keeps getting better, faster, and more powerful</span></a></td>
    <td><span>Updates across Workers and beyond for a more powerful developer platform – such as support for larger and more concurrent Container images, support for external models from OpenAI and Anthropic in AI Search (previously AutoRAG), and more. </span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/planetscale-postgres-workers/?_gl=1*1e87q21*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MjI2MDUkajYwJGwwJGgw"><span>Partnering to make full-stack fast: deploy PlanetScale databases directly from Workers</span></a></td>
    <td><span>You can now connect Cloudflare Workers to PlanetScale databases directly, with connections automatically optimized by Hyperdrive.</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/cloudflare-data-platform/?_gl=1*1gj7lyv*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MjI5MDckajYwJGwwJGgw"><span>Announcing the Cloudflare Data Platform</span></a></td>
    <td><span>A complete solution for ingesting, storing, and querying analytical data tables using open standards like Apache Iceberg. </span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/r2-sql-deep-dive/?_gl=1*88kngf*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MjI5MzAkajM3JGwwJGgw"><span>R2 SQL: a deep dive into our new distributed query engine</span></a></td>
    <td><span>A technical deep dive on R2 SQL, a serverless query engine for petabyte-scale datasets in R2.</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/safe-in-the-sandbox-security-hardening-for-cloudflare-workers/?_gl=1*y25my1*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MjI4ODQkajMkbDAkaDA./"><span>Safe in the sandbox: security hardening for Cloudflare Workers</span></a></td>
    <td><span>A deep-dive into how we’ve hardened the Workers runtime with new defense-in-depth security measures, including V8 sandboxes and hardware-assisted memory protection keys.</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/sovereign-ai-and-choice/?_gl=1*1gvqucw*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MjI4NjkkajE4JGwwJGgw/"><span>Choice: the path to AI sovereignty</span></a></td>
    <td><span>To champion AI sovereignty, we've added locally-developed open-source models from India, Japan, and Southeast Asia to our Workers AI platform.</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/email-service/?_gl=1*z3yus0*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MjI4MjckajYwJGwwJGgw"><span>Announcing Cloudflare Email Service’s private beta</span></a></td>
    <td><span>We announced the Cloudflare Email Service private beta, allowing developers to reliably send and receive transactional emails directly from Cloudflare Workers.</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/nodejs-workers-2025/?_gl=1*gzumry*_gcl_aw*R0NMLjE3NTg5MTQ0ODEuQ2p3S0NBanc4OWpHQmhCMEVpd0EybzFPbnp1VkVIN2UybUZJcERvWWtJMV9Rc2FlbTFEV19FU19qVjR1QnVmcEE3QVdkeU9zaVRIZGl4b0N4dHNRQXZEX0J3RQ..*_gcl_dc*R0NMLjE3NTgyMDc1NDEuQ2owS0NRancyNjdHQmhDU0FSSXNBT2pWSjRIWTFOVTZVWDFyVEJVNGNyd243d3RwX3lheFBuNnZJdXJlOUVmWmRzWkJJa1ZyejF4cDFDSWFBa2pBRUFMd193Y0I.*_gcl_au*MTI5NDk3ODE3OC4xNzUzMTQwMzIw*_ga*ZTI0NWUyMDQtZDM1YS00NTFkLWIwM2UtYjhhNzliZWQxY2Nj*_ga_SQCRB0TXZW*czE3NTg5MTY5NDEkbzYkZzEkdDE3NTg5MjI2ODgkajYwJGwwJGgw/"><span>A year of improving Node.js compatibility in Cloudflare Workers</span></a></td>
    <td><span>There are hundreds of new Node.js APIs now available that make it easier to run existing Node.js code on our platform. </span></td>
  </tr>
</tbody></table></div><p><b>Friday, September 26</b></p>
<table><thead>
  <tr>
    <th><span>What</span></th>
    <th><span>In a sentence …</span></th>
  </tr></thead>
<tbody>
  <tr>
    <td><a href="https://blog.cloudflare.com/20-percent-internet-upgrade"><span>Cloudflare just got faster and more secure, powered by Rust</span></a></td>
    <td><span>We have re-engineered our core proxy with a new modular, Rust-based architecture, cutting median response time by 10ms for millions. </span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com//introducing-observatory-and-smart-shield/"><span>Introducing Observatory and Smart Shield</span></a></td>
    <td><span>New monitoring tools in the Cloudflare dashboard that provide actionable recommendations and one-click fixes for performance issues.</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/monitoring-as-sets-and-why-they-matter/"><span>Monitoring AS-SETs and why they matter</span></a></td>
    <td><span>Cloudflare Radar now includes Internet Routing Registry (IRR) data, allowing network operators to monitor AS-SETs to help prevent route leaks.</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/an-ai-index-for-all-our-customers"><span>An AI Index for all our customers</span></a></td>
    <td><span>We announced the private beta of AI Index, a new service that creates an AI-optimized search index for your domain that you control and can monetize.</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/new-regional-internet-traffic-and-certificate-transparency-insights-on-radar/"><span>Introducing new regional Internet traffic and Certificate Transparency insights on Cloudflare Radar</span></a></td>
    <td><span>Sub-national traffic insights and Certificate Transparency dashboards for TLS monitoring.</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/eliminating-cold-starts-2-shard-and-conquer/"><span>Eliminating Cold Starts 2: shard and conquer</span></a></td>
    <td><span>We have reduced Workers cold starts by 10x by implementing a new "worker sharding" system that routes requests to already-loaded Workers.</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/network-performance-update-birthday-week-2025/"><span>Network performance update: Birthday Week 2025</span></a></td>
    <td><span>The TCP Connection Time (Trimean) graph shows that we are the fastest TCP connection time in 40% of measured ISPs – and the fastest across the top networks.</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/how-cloudflare-uses-the-worlds-greatest-collection-of-performance-data/"><span>How Cloudflare uses performance data to make the world’s fastest global network even faster</span></a></td>
    <td><span>We are using our network's vast performance data to tune congestion control algorithms, improving speeds by an average of 10% for QUIC traffic.</span></td>
  </tr>
  <tr>
    <td><a href="https://blog.cloudflare.com/code-mode/"><span>Code Mode: the better way to use MCP</span></a></td>
    <td><span>It turns out we've all been using MCP wrong. Most agents today use MCP by exposing the "tools" directly to the LLM. We tried something different: Convert the MCP tools into a TypeScript API, and then ask an LLM to write code that calls that API. The results are striking.</span></td>
  </tr>
</tbody></table>
    <div>
      <h3>Come build with us!</h3>
      <a href="#come-build-with-us">
        
      </a>
    </div>
    <p>Helping build a better Internet has always been about more than just technology. Like the announcements about interns or working together in our offices, the community of people behind helping build a better Internet matters to its future. This week, we rolled out our most ambitious set of initiatives ever to support the builders, founders, and students who are creating the future.</p><p>For founders and startups, we are thrilled to welcome <b>Cohort #6</b> to the <b>Workers Launchpad</b>, our accelerator program that gives early-stage companies the resources they need to scale. But we’re not stopping there. We’re opening our doors, literally, by launching <b>new physical hubs for startups</b> in our San Francisco, Austin, London, and Lisbon offices. These spaces will provide access to mentorship, resources, and a community of fellow builders.</p><p>We’re also investing in the next generation of talent. We announced <b>free access to the Cloudflare developer platform for all students</b>, giving them the tools to learn and experiment without limits. To provide a path from the classroom to the industry, we also announced our goal to hire <b>1,111 interns in 2026</b> — our biggest commitment yet to fostering future tech leaders.</p><p>And because a better Internet is for everyone, we’re extending our support to <b>non-profits and public-interest organizations</b>, offering them free access to our production-grade developer tools, so they can focus on their missions.</p><p>Whether you're a founder with a big idea, a student just getting started, or a team working for a cause you believe in, we want to help you succeed.</p>
    <div>
      <h3>Until next year</h3>
      <a href="#until-next-year">
        
      </a>
    </div>
    <p>Thank you to our customers, our community, and the millions of developers who trust us to help them build, secure, and accelerate the Internet. Your curiosity and feedback drive our innovation.</p><p>It’s been an incredible 15 years. And as always, we’re just getting started!</p><p><i>(Watch the full conversation on our show </i><a href="ThisWeekinNET.com"><i>ThisWeekinNET.com</i></a><i> about what we launched during Birthday Week 2025 </i><a href="https://youtu.be/Z2uHFc9ua9s?feature=shared"><i><b><u>here</u></b></i></a><i>.) </i></p> ]]></content:encoded>
            <category><![CDATA[Birthday Week]]></category>
            <category><![CDATA[Partners]]></category>
            <category><![CDATA[Developer Platform]]></category>
            <category><![CDATA[Workers Launchpad]]></category>
            <category><![CDATA[Performance]]></category>
            <category><![CDATA[Security]]></category>
            <category><![CDATA[Cache]]></category>
            <category><![CDATA[Speed]]></category>
            <category><![CDATA[Developers]]></category>
            <category><![CDATA[AI]]></category>
            <category><![CDATA[1.1.1.1]]></category>
            <category><![CDATA[Application Security]]></category>
            <category><![CDATA[Application Services]]></category>
            <category><![CDATA[Bots]]></category>
            <category><![CDATA[CDN]]></category>
            <category><![CDATA[Cloudflare for Startups]]></category>
            <category><![CDATA[Cloudflare One]]></category>
            <category><![CDATA[Cloudflare Zero Trust]]></category>
            <category><![CDATA[Cloudflare Workers]]></category>
            <guid isPermaLink="false">4k1NhJtljIsH7GOkpHg1Ei</guid>
            <dc:creator>Nikita Cano</dc:creator>
            <dc:creator>Korinne Alpers</dc:creator>
        </item>
        <item>
            <title><![CDATA[Securing today for the quantum future: WARP client now supports post-quantum cryptography (PQC)]]></title>
            <link>https://blog.cloudflare.com/post-quantum-warp/</link>
            <pubDate>Wed, 24 Sep 2025 13:00:00 GMT</pubDate>
            <description><![CDATA[ To prepare for a future where powerful quantum computers come online, we've upgraded our WARP client with post-quantum cryptography. ]]></description>
            <content:encoded><![CDATA[ <p>The Internet is currently transitioning to <a href="https://www.cloudflare.com/pqc/"><u>post-quantum cryptography (PQC)</u></a> in preparation for Q-Day, when quantum computers break the classical cryptography that underpins all modern computer systems.  The US <a href="https://www.nist.gov/"><u>National Institute of Standards and Technology (NIST)</u></a> recognized the urgency of this transition, announcing that classical cryptography (<a href="https://en.wikipedia.org/wiki/RSA_cryptosystem"><u>RSA</u></a>, Elliptic Curve Cryptography (<a href="https://blog.cloudflare.com/a-relatively-easy-to-understand-primer-on-elliptic-curve-cryptography/"><u>ECC</u></a>)) must be <a href="https://csrc.nist.gov/pubs/ir/8547/ipd"><u>deprecated by 2030 and completely disallowed by 2035</u></a>.</p><p>Cloudflare is well ahead of NIST’s schedule. Today, over <a href="https://radar.cloudflare.com/adoption-and-usage?cf_history_state=%7B%22guid%22%3A%22C255D9FF78CD46CDA4F76812EA68C350%22%2C%22historyId%22%3A20%2C%22targetId%22%3A%22583662CE97724FCE7A7C0844276279FE%22%7D#post-quantum-encryption-adoption"><u>45%</u></a> of human-generated Internet traffic sent to Cloudflare’s network is already post-quantum encrypted. Because we believe that a secure and private Internet should be free and accessible to all, we’re on a mission to include PQC in all our <a href="https://blog.cloudflare.com/post-quantum-cryptography-ga/"><u>products</u></a>, <a href="https://blog.cloudflare.com/you-dont-need-quantum-hardware/"><u>without specialized hardware</u></a>, and at <a href="https://blog.cloudflare.com/post-quantum-crypto-should-be-free/"><u>no extra cost to our customers and end users</u></a>.</p><p>That’s why we’re proud to announce that <a href="https://developers.cloudflare.com/warp-client/"><u>Cloudflare’s WARP client</u></a> now supports post-quantum key agreement — both in our free consumer WARP client <a href="https://one.one.one.one/"><u>1.1.1.1</u></a>, and in our enterprise WARP client, the <a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-devices/warp/download-warp/"><u>Cloudflare One Agent</u></a>. </p>
    <div>
      <h2>Post-quantum tunnels using the WARP client</h2>
      <a href="#post-quantum-tunnels-using-the-warp-client">
        
      </a>
    </div>
    <p>This upgrade of the WARP client to post-quantum key agreement provides end users with immediate protection for their Internet traffic against <a href="https://en.wikipedia.org/wiki/Harvest_now,_decrypt_later"><u>harvest-now-decrypt-later attacks</u></a>. The value proposition is clear — by tunneling your Internet traffic over the WARP client’s post-quantum MASQUE tunnels, you get immediate post-quantum encryption of your network traffic. And this holds even if the individual connections sent through the tunnel have not yet been upgraded to post-quantum cryptography.</p><p>Here’s how it works.</p><p>When the <a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-devices/warp/download-warp/"><u>Cloudflare One Agent</u></a> (our enterprise WARP client) connects employees to the internal corporate resources as part of the <a href="https://developers.cloudflare.com/cloudflare-one/"><u>Cloudflare One Zero Trust</u></a> platform, it now provides <a href="https://blog.cloudflare.com/post-quantum-zero-trust/"><u>end-to-end quantum encryption</u></a> of network traffic. As shown in the figure below, traffic from the WARP client is wrapped in a post-quantum encrypted <a href="https://blog.cloudflare.com/zero-trust-warp-with-a-masque/"><u>MASQUE</u></a> (<a href="https://datatracker.ietf.org/wg/masque/about/"><u>Multiplexed Application Substrate over QUIC Encryption</u></a>) tunnel, sent to Cloudflare’s <a href="https://www.cloudflare.com/network/"><u>global network</u></a> network (link (1)). Cloudflare’s global network then forwards the traffic another set of post-quantum encrypted tunnels (link (2)), and then finally on to the internal corporate resource using a <a href="https://blog.cloudflare.com/post-quantum-tunnel/"><u>post-quantum encrypted</u></a> Cloudflare <a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/"><u>Tunnel</u></a> established using the <a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/"><u>cloudflared agent</u></a> (which installed near the corporate resource) (link (3)). </p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/7q9k7Ss95iM1PSiSIW76MD/db8146afa3da442d5459dac0919a3f31/image2.png" />
          </figure><p><sup><i>We have upgraded the </i></sup><a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-devices/warp/download-warp/"><sup><i><u>Cloudflare One Agent</u></i></sup></a><sup> </sup><sup><i>to post-quantum key agreement, providing end-to-end post quantum protection for traffic sent to internal corporate resources. </i></sup></p><p>When an end user <a href="https://developers.cloudflare.com/learning-paths/secure-internet-traffic/connect-devices-networks/install-agent/"><u>installs</u></a> the consumer WARP Client (<a href="https://one.one.one.one/"><u>1.1.1.1</u></a>), the WARP client wraps the end user’s network traffic in a post-quantum encrypted <a href="https://blog.cloudflare.com/zero-trust-warp-with-a-masque/"><u>MASQUE</u></a> tunnel. As shown in the figure below, the MASQUE tunnel protects the traffic on its way to Cloudflare’s <a href="https://www.cloudflare.com/network/"><u>global network</u></a> (link (1)). Cloudflare's global network then uses post-quantum encrypted tunnels to bring the traffic as close as possible to its final destination (link (2)). Finally, the traffic is forwarded over the public Internet to the origin server (i.e. its final destination). That final connection (link (3)) may or may not be post-quantum (PQ). It will not be PQ if the origin server is not PQ.  It will be PQ if the origin server is (a) upgraded to PQC, and (b) the end user is connecting to over a client that supports PQC (like Chrome, Edge or Firefox).  In the future, <a href="https://blog.cloudflare.com/automatically-secure"><u>Automatic SSL/TLS</u></a> will ensure that your entire connection will be PQ as long as the origin server is behind Cloudflare and supports PQ connections (even if your browser doesn’t).</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/gagcJJsc6aLeAThvV5Wa4/c01ea5a20ea19778deca13e0eb4c7de3/image4.png" />
          </figure><p><sup><i>Consumer WARP client (</i></sup><a href="https://one.one.one.one/"><sup><i><u>1.1.1.1</u></i></sup></a><sup><i>) is now upgraded to post-quantum key agreement.</i></sup></p>
    <div>
      <h2>The cryptography landscape</h2>
      <a href="#the-cryptography-landscape">
        
      </a>
    </div>
    <p>Before we get into the details of our upgrade to the WARP client, let’s review the different cryptographic primitives involved in the transition to PQC. </p><p>Key agreement is a method by which two or more parties can establish a shared secret key over an insecure communication channel. This shared secret can then be used to encrypt and authenticate subsequent communications. Classical key agreement in <a href="https://www.cloudflare.com/learning/ssl/transport-layer-security-tls/"><u>Transport Layer Security (TLS)</u></a> typically uses the <a href="https://blog.cloudflare.com/a-relatively-easy-to-understand-primer-on-elliptic-curve-cryptography/"><u>Elliptic Curve Diffie Hellman (ECDH)</u></a> cryptographic algorithm, whose security can be broken by a quantum computer using <a href="https://en.wikipedia.org/wiki/Shor%27s_algorithm"><u>Shor's algorithm</u></a>. </p><p>We need <a href="https://blog.cloudflare.com/post-quantum-key-encapsulation/"><b><u>post-quantum key agreement</u></b></a> today to stop <a href="https://en.wikipedia.org/wiki/Harvest_now,_decrypt_later"><u>harvest-now-decrypt-later attacks</u></a>, where attackers collect encrypted data today, and then decrypt it in future once powerful quantum computers become available. Any institution that deals with data that could still be valuable ten years in the future (<a href="https://www.cloudflare.com/cloudflare-for-government/"><u>governments</u></a>, <a href="https://www.cloudflare.com/banking-and-financial-services/"><u>financial institutions</u></a>, <a href="https://www.cloudflare.com/healthcare/"><u>healthcare organizations</u></a>, and more) should deploy PQ key agreement to prevent these attacks.</p><p>This is why we upgraded the WARP client to post-quantum key agreement.</p><p>Post-quantum key agreement is already quite mature and performant; our <a href="https://blog.cloudflare.com/pq-2024/#ml-kem-versus-x25519"><u>experiments</u></a> have shown that deploying the post-quantumModule-Lattice-Based Key-Encapsulation Mechanism (<a href="https://csrc.nist.gov/pubs/fips/203/final"><u>ML-KEM</u></a>) algorithm in hybrid mode (in parallel with classical ECDH) over <a href="https://www.cloudflare.com/learning/ssl/why-use-tls-1.3/"><u>TLS 1.3</u></a> is actually more performant than using <a href="https://www.cloudflare.com/learning/ssl/why-use-tls-1.3/"><u>TLS 1.2</u></a> with classical cryptography. </p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/7ggHbhukH4atXV4EIbPlrl/9845ac63363c9233fa0bff6b47a1ea79/image1.png" />
          </figure><p><sup><i>Over one-third of the human-generated traffic to our network uses TLS 1.3 with hybrid post-quantum key agreement (shown as X25519MLKEM768 in the screen capture above); in fact, if you’re on a Chrome, Edge or Firefox browser, you’re probably reading this blog right now over a PQ encrypted connection.</i></sup></p><p><b>Post-quantum digital signatures and certificates, </b>by contrast, are still in the process of being <a href="https://datatracker.ietf.org/doc/draft-ietf-lamps-dilithium-certificates/"><u>standardized</u></a> for use in TLS and the Internet’s Public Key Infrastructure (PKI). <a href="https://blog.cloudflare.com/another-look-at-pq-signatures/"><u>PQ signatures and certificates</u></a> are required to prevent an active attacker who uses a quantum computer to forge a digital certificate/signature and then uses it to decrypt or manipulate communications by impersonating a trusted server. As far as we know, we don’t have such attackers yet, which is why post-quantum signatures and certificates are not widely deployed across the Internet. We have not yet upgraded the WARP client to <a href="https://blog.cloudflare.com/another-look-at-pq-signatures/"><u>PQ signatures and certificates</u></a>, but we plan to do so soon.</p>
    <div>
      <h2>A unique challenge: PQC upgrade in the WARP client </h2>
      <a href="#a-unique-challenge-pqc-upgrade-in-the-warp-client">
        
      </a>
    </div>
    <p>While Cloudflare is on the <a href="https://blog.cloudflare.com/tag/post-quantum/"><u>forefront of the PQC transition</u></a>, a different kind of challenge emerged when we upgraded our WARP client. Unlike a server that we fully control and can hotfix at any time, our WARP client runs directly on end user devices. In fact, it runs on millions of end user devices that we do not control. This fundamental difference means that every time we update the WARP client, our release must work properly on the first try, with no room for error.</p><p>To make things even more challenging, we need to support the WARP client across five different operating systems (Windows, macOS, Linux, iOS, and Android/ChromeOS), while also ensuring consistency and reliability for both our consumer 1.1.1.1 WARP client and our Cloudflare One Agent. In addition, because the WARP client relies on the fairly new <a href="https://datatracker.ietf.org/doc/rfc9298/"><u>MASQUE protocol</u></a>, which the industry only standardized in August 2022, we need to be extra careful to make sure our upgrade to post-quantum key agreement does not expose latent bugs or instabilities in the MASQUE protocol itself. </p><p>All these challenges point to a slow and careful transition to PQC in the WARP client, while still supporting customers that want to immediately activate PQC. To accomplish this, we used three techniques: </p><ol><li><p>temporary PQC downgrades, </p></li><li><p>gradual rollout across our WARP client population, and</p></li><li><p>a <a href="https://en.wikipedia.org/wiki/Mobile_device_management"><u>Mobile Device Management (MDM)</u></a> override. </p></li></ol><p>Let’s take a deep dive into each. </p>
    <div>
      <h3>Temporary PQC downgrades</h3>
      <a href="#temporary-pqc-downgrades">
        
      </a>
    </div>
    <p>As we roll out PQ key agreement in MASQUE to the WARP client, we want to make sure we don’t have WARP clients that struggle to connect due to an error, middlebox, or a latent implementation bug triggered by our PQC migration. One way to accomplish this level of robustness is to have clients downgrade to a classic cryptographic connection if they fail to negotiate a PQ connection.</p><p>To really understand this strategy, we need to review the concept of <b>cryptographic downgrades</b>. In cryptography, a <b>downgrade attack</b> is a cyber attack where an attacker forces a system to abandon a secure cryptographic algorithm in favor of an older, less secure, or even unencrypted one that allows the attacker to introspect on the communications. Thus, when newly rolling out a PQ encryption, it is standard practice to ensure that: if the client and server <i>both </i>support PQ encryption, it should not be possible for an attacker to downgrade their connection to a classic encryption. </p><p>Thus, to prevent downgrade attacks, we should ensure that if the client and server both support PQC, but fail to negotiate a PQC connection, then the connection will just fail. However, while this prevents downgrade attacks, it also creates problems with robustness.</p><p>We cannot have both robustness (i.e. the ability for client to downgrade to a classical connection if the PQC fails) and security against downgrades (i.e. the client is forbidden to downgrade to classical cryptography once it supports PQC) at the same time. We have to choose one. For this reason, we opted for a phased approach.</p><ul><li><p><b>Phase 1: Automated PQC downgrades.</b> We start by choosing robustness at the cost of providing security against downgrade attacks.  In this phase, we support automated PQC downgrades — if a client fails to negotiate a PQC connection, it will downgrade to classical cryptography. That way, if there are bugs or other instability introduced by PQC, the client automatically downgrades to classical cryptography and the end user will not experience any issues. (Note: because MASQUE establishes a single very long-lived TLS connection only when the user logs in, an end user is unlikely to notice a downgrade.) </p></li><li><p><b>Phase 2: PQC with security against downgrades. </b>Then, once the rollout is stable and we are convinced that there are no issues interfering with PQC, we will choose security against downgrade attacks over robustness. In this phase, if a client fails to negotiate a PQC connection, the connection will just fail, which provides security against downgrade attacks.</p></li></ul><p>To implement this phased approach, we introduced an API flag that the client uses to determine how it should initiate TLS handshakes, which has three states:</p><ul><li><p><b>No PQC: </b>The client initiates a TLS handshake using classical cryptography only. .</p></li><li><p><b>PQC downgrades allowed:</b> The client initiates a TLS handshake using post-quantum key agreement. If the PQC handshake negotiation fails, the client downgrades to classical cryptography. This flag supports Phase 1 of our rollout. </p></li><li><p><b>PQC only:</b> The client initiates a TLS handshake using post-quantum key agreement cryptography. If the PQC handshake negotiation fails, the connection fails. This flag supports Phase 2 of our rollout.</p></li></ul><p>The WARP <a href="https://developers.cloudflare.com/changelog/2025-06-30-warp-windows-ga/"><u>desktop version 2025.5.893.0</u></a>, <a href="https://developers.cloudflare.com/changelog/2025-06-30-warp-ga-ios/"><u>iOS version 1.11</u></a> and <a href="https://developers.cloudflare.com/changelog/2025-06-30-warp-ga-android/"><u>Android version 2.4.2 </u></a>all support post-quantum key agreement along with this API flag.</p><p>With this as our framework, the next question becomes: what timing makes sense for this phased approach?</p>
    <div>
      <h3>Gradual rollout across the WARP client population</h3>
      <a href="#gradual-rollout-across-the-warp-client-population">
        
      </a>
    </div>
    <p>To limit the risk of errors or latent implementation bugs triggered by our PQC migration, we gradually rolled out PQC across our population of WARP clients.</p><p>In Phase 1 of our rollout, we prioritized robustness rather than security against downgrade attacks. Thus, initially the API flag is set to “No PQC” for our entire client population, and we gradually turn on the “PQC downgrades allowed” across groups of clients. As we do this, we monitor whether any clients downgrade from PQC to classical cryptography. At the time of this writing, we have completed the Phase 1 rollout to all of our consumer WARP (1.1.1.1) clients. We expect to complete Phase 1 for our Cloudflare One Agent by the end of 2025.</p><p>Downgrades are not expected during Phase 1. In fact, downgrades indicate that there may be a latent issue that we have to fix. If you are using a WARP client and encounter issues that you believe might be related to PQC, you can let us know by using the feedback button in the WARP client interface (by clicking the bug icon in the top-right corner of the WARP client application). Enterprise users can also file a support ticket for the Cloudflare One Agent.</p><p>We plan to enter Phase 2 — where the API flag is set to “PQC only” in order to provide security against downgrade attacks — by summer of mid 2026. </p>
    <div>
      <h3>MDM override</h3>
      <a href="#mdm-override">
        
      </a>
    </div>
    <p>Finally, we know that some of our customers may not be willing to wait for us to complete this careful upgrade to PQC. So, those customers can activate PQC right now. </p><p>We’ve built a <a href="https://en.wikipedia.org/wiki/Mobile_device_management"><u>Mobile Device Management (MDM)</u></a> override for the Cloudflare One Agent. MDM allows organizations to centrally manage, monitor, and secure mobile devices that access corporate resources; it works on multiple types of devices, not just mobile devices. The override for the Cloudflare One Agent allows an administrator (with permissions to manage the device) to turn on PQC. To use the <a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-devices/warp/deployment/mdm-deployment/parameters/#enable_post_quantum"><u>MDM post-quantum override</u></a>, set the ‘enable_post_quantum’ MDM flag to true. This flag takes precedence over the signal from the API flag we described earlier, and will activate PQC without downgrades. With this setting, the client will only negotiate a PQC connection. And if the PQC negotiation fails, the connection will fail, which provides security against downgrade attacks. </p>
    <div>
      <h2>Ciphersuites, FIPS and Fedramp </h2>
      <a href="#ciphersuites-fips-and-fedramp">
        
      </a>
    </div>
    <p>The <a href="https://www.cloudflare.com/learning/privacy/what-is-fedramp/">Federal Risk and Authorization Management Program (FedRAMP)</a> is a U.S. government standard for securing federal data in the cloud. <a href="https://cf-assets.www.cloudflare.com/slt3lc6tev37/7wOGN7Ua9rvgzlQAwlFZ6y/324506e91b62aa4de55bcb2ceb5d8ee8/Cloudflare-s_Unique_FedRAMP_Architecture.pdf"><u>Cloudflare has a FedRAMP certification</u></a> that requires that we use cryptographic ciphersuites that comply with <a href="https://csrc.nist.gov/glossary/term/federal_information_processing_standard"><u>FIPS</u></a> (Federal Information Processing Standards) for certain products that are inside our FIPS boundary.</p><p>Because the WARP client is inside Cloudflare’s FIPS boundary for our <a href="https://www.fedramp.gov/"><u>FedRAMP</u></a> certification, we had to ensure it uses FIPS-compliant cryptography. For internal links (where Cloudflare controls both sides of the connection) within the FIPS boundary, we currently use a hybrid key agreement consisting of FIPS-compliant EDCH using the P256 Elliptic curve, in parallel with an early version of ML-KEM-768 (which we started using before the ML-KEM standards were finalized) — a key agreement called P256Kyber768Draft00. To observe this ciphersuite in action in your WARP client, you can use the <code>warp-cli tunnel stats</code> utility. Here’s an example of what we find when PQC is enabled:</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/1ilpmpuGdOAzbqX28T34tc/17254678b17ba493da1da09f10493e9e/image5.png" />
          </figure><p>And here is an example when PQC is not enabled:</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/3mdNurLT1USiRICpkvIKa8/1af40525be2ccaa5b6ef71824f0ace37/image6.png" />
          </figure>
    <div>
      <h2>PQC tunnels for everyone </h2>
      <a href="#pqc-tunnels-for-everyone">
        
      </a>
    </div>
    <p>We believe that PQC should be available to everyone, without <a href="https://blog.cloudflare.com/you-dont-need-quantum-hardware/"><u>specialized hardware</u></a>, at <a href="https://blog.cloudflare.com/post-quantum-crypto-should-be-free/"><u>no additional cost</u></a>. To that end, we’re proud to help shoulder the burden of the Internet’s upgrade to PQC.</p><p>A powerful strategy is to use tunnels protected by post-quantum key agreement to protect Internet traffic, in bulk, from harvest-now-decrypt-later attacks – even if the individual connections sent through the tunnel have not yet been upgraded to PQC. Eventually, we will upgrade these tunnels to also support post-quantum signatures and certificates, to stop active attacks by adversaries armed with quantum computers after Q-Day.</p><p>This staged approach keeps up with Internet standards. And the use of tunnels provides customers and end users with built-in <i>cryptographic agility</i>, so they can easily adapt to changes in the cryptographic landscape without a major architectural overhaul.</p><p>Cloudflare’s WARP client is just the latest tunneling technology that we’ve upgraded to post-quantum key agreement. You can try it out today for free on personal devices using our free consumer WARP client <a href="https://one.one.one.one/"><u>1.1.1.1</u></a>, or for your corporate devices using our <a href="https://dash.cloudflare.com/sign-up/zero-trust"><u>free zero-trust offering for teams of under 50 users</u></a> or a paid <a href="https://www.cloudflare.com/plans/zero-trust-services/"><u>enterprise zero-trust or SASE subscription</u></a>. Just <a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-devices/warp/download-warp/"><u>download</u></a> and install the client on your Windows, Linux, macOS, iOS, Android/ChromeOS device, and start protecting your network traffic with PQC.</p><div>
  
</div><p></p> ]]></content:encoded>
            <category><![CDATA[Birthday Week]]></category>
            <category><![CDATA[Post-Quantum]]></category>
            <category><![CDATA[Zero Trust]]></category>
            <category><![CDATA[Cryptography]]></category>
            <category><![CDATA[WARP]]></category>
            <category><![CDATA[Cloudflare Zero Trust]]></category>
            <category><![CDATA[SASE]]></category>
            <category><![CDATA[Cloudflare One]]></category>
            <category><![CDATA[1.1.1.1]]></category>
            <guid isPermaLink="false">6Z8Ii372a6Lta1Y2ISnfWw</guid>
            <dc:creator>Sharon Goldberg</dc:creator>
            <dc:creator>Tochukwu Nkemdilim (Toks)</dc:creator>
            <dc:creator>Koko Uko</dc:creator>
        </item>
        <item>
            <title><![CDATA[Cloudflare Confidence Scorecards - making AI safer for the Internet]]></title>
            <link>https://blog.cloudflare.com/cloudflare-confidence-scorecards-making-ai-safer-for-the-internet/</link>
            <pubDate>Tue, 23 Sep 2025 14:00:00 GMT</pubDate>
            <description><![CDATA[ Cloudflare Confidence Scorecards are now live in the Application Library. Get transparent risk ratings for SaaS and Gen-AI apps. ]]></description>
            <content:encoded><![CDATA[ <p>Security and IT teams face an impossible balancing act: Employees are adopting AI tools every day, but each tool carries unique risks tied to compliance, data privacy, and security practices. Employees using these tools without seeking prior approval leads to a new type of<a href="https://www.cloudflare.com/learning/access-management/what-is-shadow-it/"><u> Shadow IT</u></a> which is referred to as <a href="https://blog.cloudflare.com/shadow-AI-analytics/"><u>Shadow AI</u></a>. Preventing Shadow AI requires manually vetting each AI application to determine whether it should be approved or disapproved. This isn’t scalable. And blanket bans of AI applications will only drive AI usage deeper underground, making it harder to secure.</p><p>That’s why today we are launching Cloudflare Application Confidence Scorecards. This is part of our new <a href="https://www.cloudflare.com/ai-security/">suite of AI Security features</a> within the Cloudflare One SASE platform. These scores bring scale and automation to the labor- and time-intensive task of evaluating generative AI and SaaS applications one by one. Instead of spending hours trying to find AI applications’ compliance certifications or data-handling practices, evaluators get a clear score that reflects an application’s safety and trustworthiness. With that signal, decision makers within organizations can confidently set policies or apply guardrails where needed, and block risky tools so their organizations can embrace innovation without compromising security.</p><p>Our Cloudflare Application Confidence Scorecards rate both AI-powered applications on a number of factors, including whether they’ve achieved industry-recognized certifications, follow certain data management and security measures, and the maturity level of the company. Meanwhile, amongst other considerations, our Generative AI confidence score awards higher scores to AI models that provide system cards that describe testing for bias, ethics, and safety considerations, and that do not train on user inputs.  We hope our emphasis on privacy, security, and safety helps drive <a href="https://blog.cloudflare.com/best-practices-sase-for-ai/">safer and more secure AI for everyone</a>.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/6FQPYW5ZI0vPO950CBJ0Di/3bd6f05703f522c84608882f347f3585/generative-AI-confidence-score.png" />
          </figure>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/opTtg2dkqMc7ZeUevjZjS/77bacb0c4a888622024c7a1b808d41a5/app-confidence-score.png" />
          </figure>
    <div>
      <h2>Rapid increase in Shadow AI</h2>
      <a href="#rapid-increase-in-shadow-ai">
        
      </a>
    </div>
    <p>Over the last decade, SaaS adoption has reshaped how businesses work. Employees can now pick up a new tool in minutes with nothing more than a credit card or free trial link. Now with the growth of generative AI, entire workflows are moving outside corporate oversight. From writing assistants to image generators, employees are relying on these tools daily, without knowing whether they comply with corporate or regulatory requirements. </p><p>The risks of these tools are wide-ranging. Sensitive data can be stored or transmitted outside of company controls. Tools may lack certifications such as SOC2 or ISO 27001. Many providers retain user data indefinitely or use it to train external models. Others face financial or operational instability that could disrupt your business if they go bankrupt or suffer a breach. Models can produce biased outputs that can introduce compliance risks or lead to erroneous business decisions. Security leaders tell us they cannot keep up with auditing every new application.  </p>
    <div>
      <h2>We score them for you, at scale</h2>
      <a href="#we-score-them-for-you-at-scale">
        
      </a>
    </div>
    <p>In order to make this effective, we needed two things: a rubric that could judge AI and SaaS applications, and then a mechanism to scalably score all those applications. Here’s how we did it.</p>
    <div>
      <h3>How the rubric works</h3>
      <a href="#how-the-rubric-works">
        
      </a>
    </div>
    <p>The Application Posture Score (5 points) evaluates a SaaS provider across five major categories:</p><ul><li><p><b>Security and Privacy Compliance (1.2 points):</b> Credit for SOC 2 and ISO 27001 certifications, which signal operational maturity.</p></li><li><p><b>Data Management Practices (1 point):</b> Retention windows and whether the provider shares data with third parties. Shorter retention and no sharing earns the highest marks.</p></li><li><p><b>Security Controls (1 point):</b> Support for MFA, SSO, TLS 1.3, role-based access, and session monitoring. These are the table stakes of modern SaaS security.</p></li><li><p><b>Security Reports and Incident History (1 point):</b> Availability of a trust or security page, bug bounty program, and incident response transparency. A recent material breach results in a full deduction.</p></li><li><p><b>Financial Stability (.8 points):</b> Public companies and heavily capitalized providers score highest, while startups with less funding or firms in distress score lower.</p></li></ul><p>The Gen-AI Posture Score (5 points) evaluates AI-specific risks:</p><ul><li><p><b>Compliance (1 point):</b> Presence of the ISO 42001 certification for AI management systems.</p></li><li><p><b>Deployment Security Model (1 point):</b> Whether access is authenticated and rate-limited or left publicly exposed.</p></li><li><p><b>System Card (1 point):</b> Publication of a model or system card that documents evaluations of safety, bias, and risk.</p></li><li><p><b>Training Data Governance (2 points):</b> Whether user data is explicitly excluded from model training or if there are available controls allowing opt-in/opt-out of training user data.</p></li></ul><p>Together, these scores give a transparent view of how much confidence you can place in a provider.</p>
    <div>
      <h3>How we score at scale</h3>
      <a href="#how-we-score-at-scale">
        
      </a>
    </div>
    <p>In the same way it’s not scalable for you to stay on top of every new AI and SaaS tool being created, our team quickly realized that we too would have the same problem. AI applications are being spun up so quickly that trying to keep pace manually would require a large team of people. </p><p>We knew we had to build a methodology to do it automatically, so we designed infrastructure that can crawl the Internet to answer the rubric questions at scale. We built a system that scrapes public trust centers, privacy policies, security pages, and compliance documents. Large language models parse those documents to identify relevant answers, but we also hardened the process to resist hallucinations by requiring source validation and structured extraction.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/6qKD3BGqJ4h4COX4GAYU5S/b0848f940e7c9e7bbdbd78ed09983c0c/image1.png" />
          </figure><p>Every score produced by automation is then reviewed and audited by Cloudflare analysts before it goes live in the Application Library. This combination of automated crawling/extraction and human validation makes sure that the scores are both comprehensive and trustworthy.</p>
    <div>
      <h2>We make it easy to act on it</h2>
      <a href="#we-make-it-easy-to-act-on-it">
        
      </a>
    </div>
    <p>Confidence scores are built directly into the Application Library, making them actionable from day one. When you click on a score in your Cloudflare dashboard, you will see a detailed breakdown of how the app performed across each dimension of the rubric. Scores update as vendors improve their security and compliance, giving you a live view instead of a static report.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/6FwChyEBXFyDOHWX3WepFw/13802cc41464cc07ab4ea55f4e4d5caa/BLOG-2961-1.png" />
          </figure><p>This approach makes life easier for every stakeholder. IT and security teams can spot high-risk tools at a glance. Procurement Governance Risk &amp; Compliance teams can accelerate vendor reviews while developers and employees can make smarter choices without waiting weeks for approvals.</p>
    <div>
      <h2>And it’s getting even better</h2>
      <a href="#and-its-getting-even-better">
        
      </a>
    </div>
    <p>Visibility is just the start. Soon, these scores will also drive enforcement across your Cloudflare One environment. You will be able to use Gateway to block or warn employees about low-scoring apps or tie DLP policies directly to confidence scores. That way untrusted AI and SaaS providers never become a backdoor for sensitive information.</p><p>By embedding scores into both visibility and enforcement, we are turning them into a tool for keeping your corporate environment safer.</p>
    <div>
      <h2>Interested in these scores?</h2>
      <a href="#interested-in-these-scores">
        
      </a>
    </div>
    <p>Cloudflare Application Confidence Scorecards are now live in the Application Library. You can explore them today in the Cloudflare dashboard, use them to evaluate the tools your teams rely on, and soon enforce policies across the Cloudflare Zero Trust platform.</p><p>This is one more step in our mission to make the Internet safer, faster, and more reliable not just for networks, but for the applications and AI tools that power modern work.</p><p>If you are a Cloudflare customer you can check out the <a href="https://developers.cloudflare.com/cloudflare-one/applications/app-library/"><u>Application Library</u></a>, explore the confidence scores, and let us know what you think. And if you’re not — fear not! — application scores are freely available to all users, including free. You can <a href="https://dash.cloudflare.com/sign-up/zero-trust"><u>get started</u></a> by simply creating a free account — and seeing these scores yourself. </p><p>Finally, if you want to get involved testing new functionality or sharing insights related to <a href="https://www.cloudflare.com/learning/ai/what-is-ai-security/">AI security</a>, we would love for you to express interest in <a href="https://www.cloudflare.com/lp/ai-security-user-research-program-2025/"><u>joining our user research program</u></a>. </p> ]]></content:encoded>
            <category><![CDATA[Cloudflare One]]></category>
            <category><![CDATA[Birthday Week]]></category>
            <category><![CDATA[Cloudflare Zero Trust]]></category>
            <category><![CDATA[SASE]]></category>
            <category><![CDATA[AI]]></category>
            <category><![CDATA[AI-SPM]]></category>
            <guid isPermaLink="false">Z2wzT0u3Zixm6qdFEYWZo</guid>
            <dc:creator>Ayush Kumar</dc:creator>
            <dc:creator>Sharon Goldberg</dc:creator>
        </item>
        <item>
            <title><![CDATA[Integrating CrowdStrike Falcon Fusion SOAR with Cloudflare’s SASE platform]]></title>
            <link>https://blog.cloudflare.com/integrating-crowdstrike-falcon-fusion-soar-with-cloudflares-sase-platform/</link>
            <pubDate>Mon, 15 Sep 2025 16:17:51 GMT</pubDate>
            <description><![CDATA[ Cloudflare and CrowdStrike have partnered to help SOC teams minimize manual bottlenecks. By combining Cloudflare’s SASE platform with CrowdStrike’s Falcon® Fusion SOAR, security teams can now detect  ]]></description>
            <content:encoded><![CDATA[ 
    <div>
      <h2>The challenge of manual response</h2>
      <a href="#the-challenge-of-manual-response">
        
      </a>
    </div>
    <p>Security teams know all too well the grind of manual investigations and remediation. With the mass adoption of AI and increasingly automated attacks, defenders cannot afford to rely on overly manual, low priority, and complex workflows.</p><p>Heavily burdensome manual response introduces delays as analysts bounce between consoles and high alert volumes, contributing to alert fatigue. Even worse, it prevents security teams from dedicating time to high-priority threats and strategic, innovative work. To keep pace, <a href="https://www.cloudflare.com/learning/security/glossary/what-is-a-security-operations-center-soc/"><u>SOCs</u></a> need automated responses that contain and remediate common threats at machine speed before they become business-impacting incidents.</p>
    <div>
      <h2>Expanding our capabilities with CrowdStrike Falcon® Fusion’ SOAR</h2>
      <a href="#expanding-our-capabilities-with-crowdstrike-falcon-r-fusion-soar">
        
      </a>
    </div>
    <p>That’s why today, we’re excited to announce a new integration between the Cloudflare One platform and CrowdStrike's Falcon® Fusion SOAR.</p><p>As part of our ongoing partnership with CrowdStrike, this integration introduces two out-of-the-box integrations for Zero Trust and <a href="https://www.cloudflare.com/zero-trust/products/email-security/"><u>Email Security</u></a> designed for organizations already leveraging CrowdStrike Falcon® Insight XDR or CrowdStrike Falcon® Next-Gen SIEM.</p><p>This allows SOC teams to gain powerful new capabilities to <a href="https://www.cloudflare.com/learning/email-security/how-to-prevent-phishing/"><u>stop phishing</u></a>, <a href="https://www.cloudflare.com/learning/ddos/glossary/malware/"><u>malware</u></a>, and suspicious behavior faster, with less manual effort.</p>
    <div>
      <h2>Out-of-the-box integrations</h2>
      <a href="#out-of-the-box-integrations">
        
      </a>
    </div>
    <p>Although teams can always create custom automations, we’ve made it simple to get started with two pre-built integrations focused on Zero Trust Access and Email Security. Both follow the same general structure and are available directly in the CrowdStrike Content Library.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/3laW9PA2y85HzMIo8n9azl/188a3c5286816e63f99c05c553493b95/Screenshot_2025-09-15_at_10.32.51.png" />
          </figure><p><b>Cloudflare within CrowdStrike Content Library</b></p><p>The actions you can take within CrowdStrike from these integrations are the following:</p><table><tr><td><p><b>Email Security</b></p><p>- Update Allow Policy </p><p>- Search Email Messages</p><p>- List Trusted Domains</p><p>- List Protected Domains</p><p>- List Blocked Senders</p><p>- List Allow Policies </p><p>- Get Trusted Domain</p><p>- Get Message Details</p><p>- Get Detection Details</p><p>- Get Allow Policy </p><p>- Delete Trusted Domain</p><p>- Delete Allow Policy</p><p>       Delete Blocked Sender</p><p>       Create Trusted Domain</p><p>       Create Blocked Sender</p><p>       Create Allow Policy</p><p>       Get Blocked Sender</p></td><td><p><b>Zero Trust Access </b></p><p>- Update Reusable Policy</p><p>- Update Access Group</p><p>- Revoke Application Tokens</p><p>- Read Metadata For A Key</p><p>- List Reusable Policies</p><p>- List Access Groups</p><p>- List Access Applications </p><p>- List Access App Policies </p><p>- Get Access Reusable Policy </p><p>- Get Access Group</p><p>- Get Access Application </p><p>- Get Access App Policy </p><p>- Delete Reusable Policy </p><p>- Delete Access Group </p><p>- Delete Access Application </p><p>- Delete Access App Policy </p><p>- Create Reusable Policy </p><p>- Create Access Group</p><p>- Create Access App Policy </p></td></tr></table><p>Using these signals, customers can create automated workflows that run with minimal to no human intervention. Falcon Fusion SOAR’s drag-and-drop editor makes it easy to chain together Cloudflare actions with other signals (from CrowdStrike or even third-party vendors) to automate large portions of the SOC workflow.</p><p>An example flow that you could create is: </p><ol><li><p>A phishing email is detected by Cloudflare Email Security.</p></li><li><p>Falcon Fusion SOAR automatically retrieves detection details, blocks the sender, and updates allow/deny lists.</p></li><li><p>Cloudflare Zero Trust revokes active session tokens for the impacted account.</p></li><li><p>If Falcon confirms the endpoint is compromised, the device is automatically isolated.</p></li></ol><p>Another example of how a workflow like above would show in the UI is the following:  </p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/3VAhAcZlZ6UlY7m8akijP6/b723b59a1f7099c2dd41e3c195cbf2ad/image_-_2025-09-15T103707.530.png" />
          </figure><p><b>An example automated flow using Cloudflare</b></p><p>From the Cloudflare UI, customers can navigate to the Logpush section where they can set up a job with CrowdStrike. To do this customers need to create a job with “HTTP destination”: </p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4fb3bijbYCmZNVx1x3xNHI/d6c3e7bd28aca05514a3c704058cf1ab/image_-_2025-09-15T103911.429.png" />
          </figure><p>From here, customers can input the HTTP endpoint provided by CrowdStrike in the data connector setup to start sending logs over to Falcon Fusion SOAR. This URL will show up in the following way: <i>ingest.us-2.crowdstrike.com/api/ingest/hec/&lt;CRWDconnectionID&gt;/v1/services/collector/raw</i></p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/7dNB9yDkmzsNQhd9vKnZEI/43267cdfec074608410bf316478ca40b/image_-_2025-09-15T104010.825.png" />
          </figure><p><b>CrowdStrike URL Location</b></p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/7I9DtSd5yDgcWC9ko7ygNK/1af7ecc2459796284ca354ebb290d25e/image_-_2025-09-15T104048.857.png" />
          </figure><p><b>Working Logpush to CrowdStrike</b></p><p>This end-to-end automation allows teams to reduce mean time-to-response from minutes to seconds.</p>
    <div>
      <h2>How detection and remediation are made possible</h2>
      <a href="#how-detection-and-remediation-are-made-possible">
        
      </a>
    </div>
    <p>At a technical level, the integration relies on webhook and API integrations between <a href="https://www.cloudflare.com/zero-trust/"><u>Cloudflare’s SASE platform </u></a>and CrowdStrike Falcon Fusion SOAR. For example:</p><ul><li><p><b>From endpoint to network:</b> When the CrowdStrike Falcon® platform detects an endpoint compromise, it triggers a workflow to Cloudflare’s API, which enforces step-up authentication or session revocation across SaaS, private apps, or email access. This is done via Cloudflare’s <a href="https://www.cloudflare.com/zero-trust/products/access/"><u>Access</u></a> product. </p></li><li><p><b>From network to endpoint:</b> When Cloudflare flags suspicious behavior (e.g., abnormal login patterns, anomalous traffic, or unsafe email activity), it notifies CrowdStrike Falcon Fusion SOAR, which then isolates the device and launches remediation playbooks.</p></li></ul><p>This bidirectional exchange makes sure threats are contained from both sides, endpoint and network, without requiring manual intervention from analysts.</p>
    <div>
      <h2>How to get started</h2>
      <a href="#how-to-get-started">
        
      </a>
    </div>
    <p>If your organization already uses CrowdStrike Falcon Fusion SOAR with Cloudflare’s <a href="https://www.cloudflare.com/learning/access-management/what-is-sase/">SASE</a> platform, you can enable these workflows today directly from the Cloudflare Dashboard and CrowdStrike Falcon console (<a href="https://falcon.us-2.crowdstrike.com/workflow/fusion/content-library/apps/313f46ae74dd42939cbfd7f519986631"><u>Zero Trust</u></a>, <a href="https://falcon.us-2.crowdstrike.com/workflow/fusion/content-library/apps/dbccb19e577f44b49c561fac70518913"><u>Email Security</u></a>). You can also search for Cloudflare within the content library in CrowdStrike to find the integrations. </p><p>For organizations looking to customize further, both platforms allow extensibility through APIs and custom playbooks so SOC teams can tailor response actions to their unique risk posture.</p><p>To learn more about our integrations, feel free to <a href="https://www.cloudflare.com/zero-trust/trial/"><u>reach out to us</u></a> to get started with a consultation.</p> ]]></content:encoded>
            <category><![CDATA[Cloudflare One]]></category>
            <category><![CDATA[Cloudflare Zero Trust]]></category>
            <category><![CDATA[Email Security]]></category>
            <category><![CDATA[Zero Trust]]></category>
            <guid isPermaLink="false">4pnRemZNUf37u3e5pPlaAV</guid>
            <dc:creator>Ayush Kumar</dc:creator>
            <dc:creator>Andrew Meyer</dc:creator>
            <dc:creator>Michael Mcgrory</dc:creator>
            <dc:creator>Gavin Chen</dc:creator>
        </item>
        <item>
            <title><![CDATA[Introducing Cloudflare Application Confidence Score For AI Applications]]></title>
            <link>https://blog.cloudflare.com/confidence-score-rubric/</link>
            <pubDate>Tue, 26 Aug 2025 14:00:00 GMT</pubDate>
            <description><![CDATA[ Cloudflare will provide confidence scores within our application library for Gen AI applications, allowing customers to assess their risk for employees using shadow IT.  ]]></description>
            <content:encoded><![CDATA[ 
    <div>
      <h2>Introduction</h2>
      <a href="#introduction">
        
      </a>
    </div>
    <p>The availability of SaaS and <a href="https://www.cloudflare.com/learning/ai/what-is-generative-ai/"><u>Gen AI</u></a> applications is transforming how businesses operate, boosting collaboration and productivity across teams. However, with increased productivity comes increased risk, as employees turn to unapproved SaaS and Gen AI applications, often dumping sensitive data into them for quick productivity wins. </p><p>The prevalence of “Shadow IT” and “Shadow AI” creates multiple problems for security, IT, GRC and legal teams. For example:</p><ul><li><p>Gen AI applications may train their models on user inputs, which could expose proprietary corporate information to third parties, competitors, or even through clever attacks like <a href="https://genai.owasp.org/llmrisk/llm01-prompt-injection/"><u>prompt injection</u></a>. </p></li><li><p>Applications may retain user data for long periods, share data with <a href="https://www.malwarebytes.com/blog/news/2025/02/deepseek-found-to-be-sharing-user-data-with-tiktok-parent-company-bytedance#:~:text=PIPC%20said%20that%20DeepSeek%E2%80%94an,without%20disclosure%20or%20explicit%20consent."><u>third parties</u></a>, have <a href="https://www.wiz.io/blog/38-terabytes-of-private-data-accidentally-exposed-by-microsoft-ai-researchers"><u>lax security practices</u></a>, suffer a <a href="https://www.wired.com/story/mcdonalds-ai-hiring-chat-bot-paradoxai/"><u>data breach</u></a>, or even go <a href="https://www.npr.org/2025/03/24/nx-s1-5338622/23andme-bankruptcy-genetic-data-privacy"><u>bankrupt</u></a>, leaving sensitive data exposed to the highest bidder.  </p></li><li><p>Gen AI applications may produce outputs that are biased, unsafe or incorrect, leading to <a href="https://www.europarl.europa.eu/thinktank/en/document/EPRS_ATA(2025)769509"><u>compliance violations</u></a> or <a href="https://www.bbc.com/news/world-us-canada-65735769"><u>bad</u></a> <a href="https://www.theguardian.com/media/2023/oct/31/microsoft-accused-of-damaging-guardians-reputation-with-ai-generated-poll"><u>business</u></a> <a href="https://www.reuters.com/article/world/insight-amazon-scraps-secret-ai-recruiting-tool-that-showed-bias-against-women-idUSKCN1MK0AG/"><u>decisions</u></a>.</p></li></ul><p>In spite of these problems, <a href="https://www.cloudflare.com/the-net/banning-ai/"><u>blanket bans of Gen AI</u></a> don't work. They stifle innovation and push employee usage underground. Instead, organizations need smarter controls.</p><p>Security, IT, legal and GRC teams therefore face a difficult challenge: how can you appropriately assess each third-party application, without auditing and crafting individual policies for every single one of them that your employees might decide to interact with? And with the rate at which they’re proliferating — how could you possibly hope to keep abreast of them all?</p><p>Today, we’re excited to announce that we’re helping these teams automate assessment of SaaS and Gen AI applications at scale with the introduction of our new <b>Cloudflare Application Confidence Scores. </b>Scores will soon be available as part of our new suite of <a href="https://blog.cloudflare.com/best-practices-sase-for-ai/"><u>AI Security Posture Management (AI-SPM)</u></a> features in the Cloudflare One SASE platform, enabling IT and Security administrators to identify confidence levels associated with third-party SaaS and AI applications, and ultimately write policies informed by those confidence scores. We’re starting by scoring AI applications, because that’s where the need is most urgent.</p><p>In this blog, we’ll be covering the design of our Cloudflare Application Confidence Score, focusing specifically about the features of the score and our scoring rubric.  Our current goal is to reveal the details of our scoring rubric, which is designed to be as transparent and objective as possible — while simultaneously <a href="https://www.cloudflare.com/ai-security/">helping organizations of all sizes safely adopt AI</a>, and encouraging the industry and AI providers to adopt <a href="https://www.cloudflare.com/learning/ai/what-is-ai-security/">best practices for AI safety and security</a>.  </p><p>In the future, as part of our mission to help build a better Internet, we also plan to make Cloudflare Application Confidence Scores available for free to all our customer tiers. And even if you aren’t a Cloudflare customer, you will easily be able to browse through these Scores by creating a free account on the Cloudflare <a href="https://dash.cloudflare.com/"><u>dashboard</u></a> and navigating to our new <a href="https://developers.cloudflare.com/changelog/2025-07-07-dashboard-app-library/"><u>Application Library</u></a>.  </p>
    <div>
      <h2>Transparency, not vibes</h2>
      <a href="#transparency-not-vibes">
        
      </a>
    </div>
    <p>Cloudflare Application Confidence Scores is a transparent, understandable, and accountable metric that measures app safety, security, and data protection. It’s designed to give Security, IT, legal and GRC teams a rapid way of assessing the rapidly burgeoning space of AI applications.</p><p>Scores are not based on vibes or black-box “learning algorithms” or “artificial intelligence engines”.  We avoid subjective judgments or large-scale red-teaming as those can be tough to execute reliably and consistently over time. Instead, scores will be computed against an objective rubric that we describe in detail in this blog. Our rubric will be publicly maintained and kept up to date in the Cloudflare developer docs. </p><p>Many providers of the applications that we score are also our customers and partners, so our overarching goal is to be as fair and accountable as possible. We believe that transparency will build trust in our scoring rubric and guide the industry to adopt the best practices that our scoring rubric encourages. </p>
    <div>
      <h2>Principles behind our rubric</h2>
      <a href="#principles-behind-our-rubric">
        
      </a>
    </div>
    <p>Each component of our rubric requires a simple answer based on publicly available data like privacy policies, security documentation, compliance certifications, model cards and incident reports. If something isn't publicly disclosed, we assign zero points to that component of the rubric, with no further assumptions or guesswork.  Scores are computed according to our rubric via an automated system that incorporates human oversight for accuracy.  We use crawlers to collect public information (e.g. privacy policies, compliance documents), process it using AI for extraction and to compute the resulting scores, and then send them to human analysts for a final review.   </p><p>Scores are reviewed on a periodic basis. If a vendor believes that we have mis-scored their application, they can submit supporting documentation via <a><u>app-confidence-scores@cloudflare.com</u></a>, and we will update their score if appropriate.</p><p>Scores are on a scale from 1 to 5, with 5 being the highest confidence and 1 being the most risky. We decided to use a <b>"confidence score"</b> instead of a <b>"risk score"</b> because we can express confidence in an application when it provides clear positive evidence of good security, compliance and safety practices. An application may have good practices internally, but we cannot express confidence in these practices if they are not publicly documented. Moreover, a confidence score allows us to give customers transparent information, so they can make their own informed decisions. For example, an application might get a low confidence score because it lacks a documented data retention policy. While that might be a concern for some, your organization might find it acceptable and decide to allow the application anyway.</p><p>We separately evaluate different account tiers for the same application provider, because different account tiers can provide very different levels of enterprise risk. For instance, consumer plans (e.g. ChatGPT Free) may involve training on user prompts and score lower, whereas enterprise plans (e.g. ChatGPT Enterprise) do not train on user prompts and thus score higher. </p><p>That said, we are quite opinionated about components we selected in our rubric, drawing from deep experience of our own internal product, engineering, legal, GRC, and security teams. We prioritize factors like data retention policies and encryption standards because we believe they are foundational to protecting sensitive information in an AI-driven world. We included certifications, security frameworks and model cards because they provide evidence of maturity, stability, safety and adherence with industry best practices.</p>
    <div>
      <h2>Actually, it’s really two Scores</h2>
      <a href="#actually-its-really-two-scores">
        
      </a>
    </div>
    <p>As AI applications emerge at an unprecedented pace, the problem of "Shadow AI" intensifies traditional risks associated with Shadow IT. Shadow IT applications create risk when they retain user data for long periods, have lax security practices, are financially unstable, or widely share data with third parties.  Meanwhile, AI tools create new risks when they retain and train on user prompts, or generate responses that are biased, toxic, inaccurate or unsafe. </p><p>To separate out these different risks, we provide two different Scores: </p><ul><li><p><b>Application Confidence Score</b> (5 points) covers general SaaS maturity, and</p></li><li><p><b>Gen-AI Confidence Score</b> (5 points) focused on Gen AI-specific risks.</p></li></ul><p>We chose to focus on two separate areas to make our metric extensible (so that, in the future, we can apply it to applications that are not focused on Gen AI) and to make the Scores easier to understand and reason about.   </p><p>Each Score is applied to each account tier of a given Gen AI provider. For example, here’s how we scored OpenAI's ChatGPT:</p><ul><li><p><b>ChatGPT Free (App Confidence 3.3, GenAI Confidence 1)</b> received a low score due to limited enterprise controls and higher data exposure risk since by default, input data is used for model training.</p></li><li><p><b>ChatGPT Plus (App Confidence 3.3, GenAI Confidence 3)</b> scored slightly higher as it allows users to opt out of training on their input data.</p></li><li><p><b>ChatGPT Team (App Confidence 4.3, GenAI Confidence 3)</b> improved further with added collaboration safeguards and configurable data retention windows.</p></li><li><p><b>ChatGPT Enterprise (App Confidence 4.3, GenAI Confidence 4)</b> achieved the highest score, as training on input data is disabled by default while retaining the enhanced controls from the Team tier.</p></li></ul>
    <div>
      <h2>A detailed look at our rubric</h2>
      <a href="#a-detailed-look-at-our-rubric">
        
      </a>
    </div>
    <p>We now walk through the details of the rubric behind each of our Scores.</p>
    <div>
      <h3>Application Confidence Score (5.0 Points Total)</h3>
      <a href="#application-confidence-score-5-0-points-total">
        
      </a>
    </div>
    <p>This half evaluates the app's overall maturity as a SaaS service, drawing from enterprise best practices.</p><p><b>Regulatory Compliance:</b> Checks for key certifications that signal operational maturity. We selected these because they represent proven frameworks that demonstrate a commitment to widely-adopted security and data protection best practices.</p><ul><li><p><a href="https://www.aicpa-cima.com/topic/audit-assurance/audit-and-assurance-greater-than-soc-2"><u>SOC 2</u></a>: .4 points </p></li><li><p><a href="https://eur-lex.europa.eu/eli/reg/2016/679/oj/eng"><u>GDPR</u></a>: .4 points </p></li><li><p><a href="https://www.iso.org/standard/27001"><u>ISO 27001</u></a>: .4 points </p></li></ul><p><b>Data Management Practices: </b>Focuses on how data is retained and shared to minimize exposure. These criteria were chosen as they directly impact the risk of data leaks or misuse, based on common vulnerabilities we've observed in SaaS environments and our own legal/GRC team’s experience assessing third-party SaaS applications at Cloudflare.</p><ul><li><p><b>Documented data retention window:</b>  Shorter retention limits risk.</p><ul><li><p>0 day retention: .5 points</p></li><li><p>30 day retention: .4 points</p></li><li><p>60 day retention: .3 points</p></li><li><p>90 day retention: .1 point</p></li><li><p>No documented retention window: 0 points</p></li></ul></li><li><p><b>Third-party sharing:</b> No sharing means less external exposure of enterprise data. Sharing for advertising purposes means high risk of third parties mining and using the data.</p><ul><li><p>No third-party sharing: .5 points.</p></li><li><p>Sharing only for troubleshooting/support: .25 points</p></li><li><p>Sharing for other reasons like advertising or end user targeting: 0 points</p></li></ul></li></ul><p><b>Security Controls:</b> We prioritized these because they form the foundational defenses against unauthorized access, drawing from best practices that have prevented incidents in cloud services.</p><ul><li><p>MFA support: .2 points.</p></li><li><p>Role-based access: .2 points.</p></li><li><p>Session monitoring: .2 points.</p></li><li><p>TLS 1.3: .2 points.</p></li><li><p>SSO support: .2 points.</p></li></ul><p><b>Security reports and incident history:</b> Rewards transparency and deducts for recent issues. This was included to emphasize accountability, as a history of breaches or proactive transparency often indicates how seriously a provider takes security.</p><ul><li><p>Published safety framework and bug bounty: 1 point.</p><ul><li><p>To get full points the company needs to have <b>both</b> of the following: </p><ul><li><p>A publicly accessible page (e.g., security, trust, or safety) that includes a comprehensive whitepaper, framework overview, OR detailed security documentation that covers:</p><ul><li><p>Encryption in transit and at rest</p></li><li><p>Authentication and authorization mechanisms</p></li><li><p>Network or infrastructure security design</p></li></ul></li><li><p>Incident Response Transparency - Published vulnerability disclosure or bug bounty policy OR a documented incident response process and security advisory archive.</p></li></ul></li><li><p>Example: Google has a <a href="https://bughunters.google.com/"><u>bug bounty program</u></a>, a whitepaper providing an overview of their <a href="https://cloud.google.com/docs/security/overview/whitepaper"><u>security posture</u></a>, as well as a <a href="https://transparencyreport.google.com/"><u>transparency report</u></a>. </p></li></ul></li><li><p>No commitments or weak security framework with the lack of any of the above criteria. If the company only has one of the criteria above but lacks the other they will also receive no credit: 0 points.</p><ul><li><p>Example: Lovable who has a security page but seems to lack many other parts of the criteria: https://lovable.dev/security</p></li></ul></li><li><p>If there has been a material breach in the last two years. If the company has experienced a material cybersecurity incident that resulted in the unauthorized disclosure of customer data to external parties (e.g., data posted, sold, or otherwise made accessible outside the organization). Incident must be publicly acknowledged by the company through a trust center update, press release, incident notification page, or an official regulatory filing: Full deduction to 0.</p><ul><li><p>Example: <a href="https://blog.23andme.com/articles/addressing-data-security-concerns"><u>23andMe </u></a>suffered credential stuffing attack in 2023 that resulted in the exposure of user data.</p></li></ul></li></ul><p><b>Financial Stability:</b> Gauges long-term viability of the company behind the application. We added this because a company’s financial health affects its ability to invest in ongoing security and support, and reduces the risk of sudden disruptions, corner-cutting, bankruptcy or sudden sale of user data to unknown third parties.</p><ul><li><p>Public company or private with &gt;$300M raised: .8 points.</p></li><li><p>Private with &gt;$100M raised: .5 points.</p></li><li><p>Private with &lt;$100M raised: .2 point.</p></li><li><p>Recent bankruptcy/distress (e.g. recent bankruptcy filings, major layoffs tied to funding shortfalls, failure to meet debt obligations): 0 points.</p></li></ul>
    <div>
      <h3>Gen-AI Confidence Score (5.0 Points Total)</h3>
      <a href="#gen-ai-confidence-score-5-0-points-total">
        
      </a>
    </div>
    <p>This Score zooms in on AI-specific risks, like data usage in training and input vulnerabilities.</p><p><b>Regulatory Compliance,  </b><a href="https://www.iso.org/standard/42001"><b><u>ISO 42001</u></b></a><b>:</b> ISO 42001 is a new certification for AI management systems. We chose this emerging standard because it specifically addresses <a href="https://www.cloudflare.com/the-net/building-cyber-resilience/ai-data-governance/"><u>AI governance</u></a>, filling a gap in traditional certifications and signaling forward-thinking risk management.</p><ul><li><p>ISO 42001 Compliant: 1 point.</p></li><li><p>Not ISO 42001 Compliant: 0 points.</p></li></ul><p><b>Deployment Security Model:</b> Stronger access controls get higher points. Authentication not only controls access but also enables monitoring and logging. This makes it easier to detect misuse and investigate incidents. Public, unauthenticated access is a red flag for shadow IT risk.</p><ul><li><p>Authenticated web portal or key-protected API with rate limiting: 1 point.</p></li><li><p>Unprotected public access: 0 points.</p></li></ul><p><b>Model Card:</b>  A model card is a concise document that provides essential information about an AI model, similar to a nutrition label for a food product. It is crucial for AI safety and security because it offers transparency into a model's design, training data, limitations, and potential biases, enabling developers and users to understand its risks and use it responsibly. Some leading AI providers have committed to providing model cards as public documentation of safety evaluations. We included this in our rubric to encourage the industry to broadly adopt model cards as a best practice. As the practice of model cards is further developed and standardized across the industry, we hope to incorporate more fine-grained details from model cards into our own risk scores. But for now, we only include the existence (or lack thereof) of a model card in our score.</p><ul><li><p>Has its own model card: 1 point.</p></li><li><p>Uses a model with a model card: .5 points.</p></li><li><p>None: 0 points.</p></li></ul><p><b>Training on user prompts:</b> This is one of the most important components of our score.  Models that train on user prompts are very risky because users might share sensitive corporate information in user prompts. We weighted this heavily because <a href="https://www.cloudflare.com/learning/ai/how-to-secure-training-data-against-ai-data-leaks/">control over training data</a> is central to preventing unintended data exposure, a core <a href="https://www.cloudflare.com/the-net/generative-ai-zero-trust/"><u>risk in generative AI</u></a> that can lead to major incidents.</p><ul><li><p>Explicit opt-in is required for training on user prompts: 2 points.</p></li><li><p>Opt-out of training on user prompts is explicitly available to users: 1 point.</p></li><li><p>No way to opt out of training on user prompts: 0 points.</p></li></ul><p>Here's an example of these Scores applied to a few popular AI providers.  As expected, enterprise tiers typically earn higher Confidence Scores than consumer tiers of the same AI provider.</p>
<table><thead>
  <tr>
    <th><span>Company</span></th>
    <th><span>Application Score</span></th>
    <th><span>Gen AI Score</span></th>
  </tr>
  <tr>
  </tr></thead>
<tbody>
  <tr>
    <td><span>Gemini Free</span></td>
    <td><span>3.8</span></td>
    <td><span>4.0</span></td>
  </tr>
  <tr>
    <td><span>Gemini Pro</span></td>
    <td><span>3.8</span></td>
    <td><span>5.0</span></td>
  </tr>
  <tr>
    <td><span>Gemini Ultra</span></td>
    <td><span>4.1</span></td>
    <td><span>5.0</span></td>
  </tr>
  <tr>
    <td><span>Gemini Business</span></td>
    <td><span>4.7</span></td>
    <td><span>5.0</span></td>
  </tr>
  <tr>
    <td><span>Gemini Enterprise</span></td>
    <td><span>4.7</span></td>
    <td><span>5.0</span></td>
  </tr>
  <tr>
    <td></td>
    <td></td>
    <td></td>
  </tr>
  <tr>
    <td><span>OpenAI Free</span></td>
    <td><span>3.3</span></td>
    <td><span>1.0</span></td>
  </tr>
  <tr>
    <td><span>OpenAI Plus</span></td>
    <td><span>3.3</span></td>
    <td><span>3.0</span></td>
  </tr>
  <tr>
    <td><span>OpenAI Pro</span></td>
    <td><span>3.3</span></td>
    <td><span>3.0</span></td>
  </tr>
  <tr>
    <td><span>OpenAI Team</span></td>
    <td><span>4.3</span></td>
    <td><span>3.0</span></td>
  </tr>
  <tr>
    <td><span>OpenAI Enterprise</span></td>
    <td><span>4.3</span></td>
    <td><span>4.0</span></td>
  </tr>
  <tr>
    <td></td>
    <td></td>
    <td></td>
  </tr>
  <tr>
    <td><span>Anthropic Free</span></td>
    <td><span>3.9</span></td>
    <td><span>5.0</span></td>
  </tr>
  <tr>
    <td><span>Anthropic Pro</span></td>
    <td><span>3.9</span></td>
    <td><span>5.0</span></td>
  </tr>
  <tr>
    <td><span>Anthropic Max</span></td>
    <td><span>3.9</span></td>
    <td><span>5.0</span></td>
  </tr>
  <tr>
    <td><span>Anthropic Team</span></td>
    <td><span>4.9</span></td>
    <td><span>5.0</span></td>
  </tr>
  <tr>
    <td><span>Anthropic Enterprise</span></td>
    <td><span>4.9</span></td>
    <td><span>5.0</span></td>
  </tr>
</tbody></table><p><i>Note: Confidence scores are provided "as is” for informational purposes only and should not be considered a substitute for independent analysis or decision-making. All actions taken based on the scores are the sole responsibility of the user.</i></p>
    <div>
      <h2>We’re just getting started…</h2>
      <a href="#were-just-getting-started">
        
      </a>
    </div>
    <p>We're actively refining our scoring methodology. To that end, we're collaborating with a diverse group of experts in the AI ecosystem (including researchers, legal professionals, SOC teams, and more) to fine-tune our scores, optimize for transparency, accountability and extensibility. If you have insights, suggestions, or want to get involved testing new functionality, we’d love for you to <a href="https://www.cloudflare.com/lp/ai-security-user-research-program-2025"><u>express interest in our user research program</u></a>. We'd very much welcome your feedback on this scoring rubric. </p><p>Today, we’re just releasing our scoring rubric in order to solicit feedback from the community. But soon, you'll start seeing these Cloudflare Application Confidence Scores integrated into the Application Library in our SASE platform. Customers can simply click or hover over any score to reveal a detailed breakdown of the rubric and underlying components of the score. Again, if you see any issues with our scoring, please submit your feedback to <a><u>app-confidence-scores@cloudflare.com</u></a>, and our team will review it and make adjustments if appropriate. </p><p>Looking even further ahead, we plan to enable integration of these scores directly into <a href="https://developers.cloudflare.com/cloudflare-one/policies/gateway/"><u>Cloudflare Gateway</u></a> and <a href="https://developers.cloudflare.com/cloudflare-one/policies/access/"><u>Access</u></a>, allowing our customers to write policies that block or redirect traffic, apply <a href="https://developers.cloudflare.com/cloudflare-one/policies/data-loss-prevention/"><u>data loss prevention (DLP)</u></a> or <a href="https://developers.cloudflare.com/cloudflare-one/policies/browser-isolation/"><u>remote browser isolation (RBI)</u></a> or otherwise control access to sites based directly on their Cloudflare Application Confidence Score. </p><p>This is just the beginning. By prioritizing transparency in our approach, we're not only bridging a critical gap in <a href="https://www.cloudflare.com/learning/access-management/what-is-sase/">SASE capabilities</a> but also driving the industry toward stronger AI safety practices. Let us know what you think!</p><p>If you’re ready to manage risk more effectively with these Confidence Scores, <a href="https://www.cloudflare.com/products/zero-trust/plans/enterprise/?utm_medium=referral&amp;utm_source=blog&amp;utm_campaign=2025-q3-acq-gbl-connectivity-ge-ge-general-ai_week_blog"><u>reach out to Cloudflare experts for a conversation</u></a>.</p> ]]></content:encoded>
            <category><![CDATA[AI Week]]></category>
            <category><![CDATA[Cloudflare One]]></category>
            <category><![CDATA[Cloudflare Zero Trust]]></category>
            <category><![CDATA[SASE]]></category>
            <category><![CDATA[AI]]></category>
            <category><![CDATA[AI-SPM]]></category>
            <guid isPermaLink="false">4U0WvN8BMpHUPypHmF1Xun</guid>
            <dc:creator>Ayush Kumar</dc:creator>
            <dc:creator>Sharon Goldberg</dc:creator>
        </item>
        <item>
            <title><![CDATA[Best Practices for Securing Generative AI with SASE]]></title>
            <link>https://blog.cloudflare.com/best-practices-sase-for-ai/</link>
            <pubDate>Tue, 26 Aug 2025 14:00:00 GMT</pubDate>
            <description><![CDATA[ This guide provides best practices for Security and IT leaders to securely adopt generative AI using Cloudflare’s SASE architecture as part of a strategy for AI Security Posture Management (AI-SPM). ]]></description>
            <content:encoded><![CDATA[ <p>As <a href="https://www.cloudflare.com/learning/ai/what-is-generative-ai/"><u>Generative AI</u></a> revolutionizes businesses everywhere, security and IT leaders find themselves in a tough spot. Executives are mandating speedy adoption of Generative AI tools to drive efficiency and stay abreast of competitors. Meanwhile, IT and Security teams must rapidly develop an <a href="https://www.cloudflare.com/ai-security/">AI Security Strategy</a>, even before the organization really understands exactly how it plans to adopt and deploy Generative AI. </p><p>IT and Security teams are no strangers to “building the airplane while it is in flight”. But this moment comes with new and complex security challenges. There is an explosion in new AI capabilities adopted by employees across all business functions — both sanctioned and unsanctioned. AI Agents are ingesting authentication credentials and autonomously interacting with sensitive corporate resources. Sensitive data is being shared with AI tools, even as security and compliance frameworks struggle to keep up.</p><p>While it demands strategic thinking from Security and IT leaders, the problem of governing the use of AI internally is far from insurmountable. <a href="https://www.cloudflare.com/zero-trust/"><u>SASE (Secure Access Service Edge)</u></a> is a popular cloud-based network architecture that combines networking and security functions into a single, integrated service that provides employees with secure and efficient access to the Internet and to corporate resources, regardless of their location. The SASE architecture can be effectively extended to meet the risk and security needs of organizations in a world of AI. </p><p>Cloudflare’s SASE Platform is uniquely well-positioned to help IT teams govern their AI usage in a secure and responsible way — without extinguishing innovation. What makes Cloudflare different in this space is that we are one of the few SASE vendors that operate not just in cybersecurity, but also in AI infrastructure. This includes: providing AI infrastructure for developers (e.g. <a href="https://developers.cloudflare.com/workers-ai/"><u>Workers AI</u></a>, <a href="https://developers.cloudflare.com/ai-gateway/"><u>AI Gateway</u></a>, <a href="https://developers.cloudflare.com/agents/guides/remote-mcp-server/"><u>remote MCP servers</u></a>, <a href="https://realtime.cloudflare.com/"><u>Realtime AI Apps</u></a>) to securing public-facing LLMs (e.g. <a href="https://developers.cloudflare.com/waf/detections/firewall-for-ai/"><u>Firewall for AI</u></a> or <a href="https://blog.cloudflare.com/ai-labyrinth/"><u>AI Labyrinth</u></a>), to allowing content creators to <a href="https://blog.cloudflare.com/introducing-pay-per-crawl/"><u>charge AI crawlers for access to their content</u></a>, and the list goes on. Our expertise in this space gives us a unique view into governing AI usage inside an organization.  It also gives our customers the opportunity to plug different components of our platform together to build out their AI <i>and</i> AI cybersecurity infrastructure.</p><p>This week, we are taking this AI expertise and using it to help ensure you have what you need to implement a successful <a href="https://www.cloudflare.com/learning/ai/what-is-ai-security/">AI Security Strategy</a>. As part of this, we are announcing several new AI Security Posture Management (AI-SPM) features, including:</p><ul><li><p><a href="http://blog.cloudflare.com/shadow-AI-analytics/"><u>shadow AI reporting</u></a> to gain visibility into employee’s use of AI,</p></li><li><p><a href="http://blog.cloudflare.com/confidence-score-rubric/"><u>confidence scoring</u></a> of AI providers to manage risk, </p></li><li><p><a href="http://blog.cloudflare.com/ai-prompt-protection/"><u>AI prompt protection</u></a> to defend against malicious inputs and prevent data loss, </p></li><li><p>out-of-band <a href="http://blog.cloudflare.com/casb-ai-integrations/"><u>API CASB integrations </u></a>with AI providers to detect misconfigurations, </p></li><li><p>new tools that <a href="http://blog.cloudflare.com/zero-trust-mcp-server-portals/"><u>untangle and secure</u></a>  <a href="https://www.cloudflare.com/learning/ai/what-is-model-context-protocol-mcp/"><u>Model Context Protocol (MCP)</u></a> deployments in the enterprise.</p></li></ul><p>All of these new AI-SPM features are built directly into Cloudflare’s powerful <a href="https://www.cloudflare.com/zero-trust/"><u>SASE</u></a> platform.</p><p>And we’re just getting started. In the coming months you can expect to see additional valuable AI-SPM features launch across the <a href="https://www.cloudflare.com/"><u>Cloudflare platform</u></a>, as we continue investing in making Cloudflare the best place to protect, connect, and build with AI.</p>
    <div>
      <h3>What’s in this AI security guide?</h3>
      <a href="#whats-in-this-ai-security-guide">
        
      </a>
    </div>
    <p>In this guide, we will cover best practices for adopting generative AI in your organization using Cloudflare’s <a href="https://www.cloudflare.com/zero-trust/"><u>SASE (Secure Access Service Edge)</u></a> platform. We start by covering how IT and Security leaders can formulate their AI Security Strategy. Then, we show how to implement this strategy using long-standing features of our SASE platform alongside the new AI-SPM features we launched this week. </p><p>This guide below is divided into three key pillars for dealing with (human) employee access to AI – Visibility, Risk Management and Data Protection — followed by additional guidelines around deploying agentic AI in the enterprise using MCP. Our objective is to help you align your security strategy with your business goals while driving adoption of AI across all your projects and teams. </p><p>And we do this all using our single <a href="https://www.cloudflare.com/zero-trust/"><u>SASE</u></a> platform, so you don’t have to deploy and manage a complex hodgepodge of point solutions and security tools. In fact, we provide you with an overview of your AI security posture in a single dashboard, as you can see here:</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/5y6ZHDu9lwCSHZ1FuZsoWT/b3f6a9eb034a3cdb2b663cff428a2335/1.png" />
          </figure><p><i>AI Security Report in Cloudflare’s SASE platform</i></p>
    <div>
      <h2>Develop your AI Security Strategy</h2>
      <a href="#develop-your-ai-security-strategy">
        
      </a>
    </div>
    <p>The first step to securing AI usage is to establish your organization's level of risk tolerance. This includes pinpointing your biggest security concerns for your users and your data, along with relevant legal and compliance requirements.   Relevant issues to consider include: </p><ul><li><p>Do you have specific <b>sensitive data that should not be shared</b> with certain AI tools? (Some examples include personally identifiable information (PII), personal health information (PHI), sensitive financial data, secrets and credentials, source code or other proprietary business information.)</p></li><li><p>Are there <b>business decisions that your employees should not be making using assistance from AI</b>? (For instance, the EU AI Act AI prohibits the use of AI to evaluate or classify individuals based on their social behavior, personal characteristics, or personality traits.)</p></li><li><p>Are you subject to <b>compliance frameworks</b> that require you to produce records of the generative AI tools that your employees used, and perhaps even the prompts that your employees input into AI providers? (For example, HIPAA requires organizations to implement audit trails that records who accessed PHI and when, GDPR requires the same for PII, SOC2 requires the same for secrets and credentials.)</p></li><li><p>Do you have specific data protection requirements that require employees to use the <b>sanctioned, enterprise version of a certain generative AI provider</b>, and avoid certain AI tools or their consumer versions?  (Enterprise AI tools often have more favorable terms of service, including shorter data retention periods, more limited data-sharing with third-parties, and/or a promise not to train AI models on user inputs.)</p></li><li><p>Do you require employees to completely <b>avoid the use of certain AI tools</b>, perhaps because they are unreliable, unreviewed or headquartered in a risky geography? </p></li><li><p>Are there security protections offered by your organization's sanctioned AI providers and to what extent do you plan to <b>protect against misconfigurations of AI tools</b> that can result in leaks of sensitive data?  </p></li><li><p>What is your <a href="https://www.cloudflare.com/the-net/building-cyber-resilience/secure-govern-ai-agents/">policy around the use of autonomous AI agents</a>?  What is your strategy for <b>adopting the </b><a href="https://www.cloudflare.com/learning/ai/what-is-model-context-protocol-mcp/"><b><u>Model Context Protocol (MCP)</u></b></a>? (The Model Context Protocol is a standard way to make information available to large language models (LLMs), similar to the way an application programming interface (API) works. It supports agentic AI that autonomously pursues goals and takes action.)</p></li></ul><p>While almost every organization has relevant compliance requirements that implicate their use of generative AI, there is no “one size fits all” for addressing these issues. </p><ul><li><p>Some organizations have mandates to broadly adopt AI tools of all stripes, while others require employees to interact with sanctioned AI tools only. </p></li><li><p>Some organizations are rapidly adopting the MCP, while others are not yet ready for agents to autonomously interact with their corporate resources. </p></li><li><p>Some organizations have robust requirements around data loss prevention (DLP), while others are still early in the process of deploying DLP in their organization.</p></li></ul><p>Even with this diversity of goals and requirements, Cloudflare SASE provides a flexible platform for the implementation of your organization’s AI Security Strategy.</p>
    <div>
      <h2>Build a solid foundation for AI Security </h2>
      <a href="#build-a-solid-foundation-for-ai-security">
        
      </a>
    </div>
    <p>To implement your AI Security Strategy, you first need a solid <a href="https://developers.cloudflare.com/reference-architecture/architectures/sase/"><u>SASE deployment</u></a>. </p><p>SASE provides a unified platform that consolidates security and networking, replacing a fragmented patchwork of point solutions with a single platform that controls application visibility, user authentication, <a href="https://www.cloudflare.com/learning/access-management/what-is-dlp/"><u>Data Loss Prevention (DLP)</u></a>, and other policies for access to the Internet and access to internal corporate resources.  SASE is the essential foundation for an effective AI Security Strategy. </p><p><a href="https://www.cloudflare.com/learning/access-management/what-is-sase/"><u>SASE architecture</u></a> allows you to execute your AI security strategy by discovering and inventorying the AI tools used by your employees. With this visibility, you can proactively manage risk and support compliance requirements by monitoring AI prompts and responses to understand what data is being shared with AI tools. Robust DLP allows you to scan and block sensitive data from being entered into AI tools, preventing data leakage and protecting your organization's most valuable information. Our <a href="https://developers.cloudflare.com/cloudflare-one/policies/gateway/"><u>Secure Web Gateway (SWG)</u></a> allows you to redirect traffic from unsanctioned AI providers to user education pages or to sanctioned enterprise AI providers. And our new integration of MCP tooling into our SASE platform helps you secure the deployment of agentic AI inside your organization.</p><p>If you're just starting your SASE journey, our <a href="https://developers.cloudflare.com/learning-paths/secure-internet-traffic/concepts/"><u>Secure Internet Traffic Deployment Guide</u></a> is the best place to begin. For this guide, however, we will skip these introductory details and dive right into using SASE to secure the use of Generative AI. </p>
    <div>
      <h2>Gain visibility into your AI landscape </h2>
      <a href="#gain-visibility-into-your-ai-landscape">
        
      </a>
    </div>
    <p>You can't protect what you can't see. The first step is to gain visibility into your AI landscape, which is essential for discovering and inventorying all the AI tools that your employees are using, deploying or experimenting with in your organization. </p>
    <div>
      <h3>Discover Shadow AI </h3>
      <a href="#discover-shadow-ai">
        
      </a>
    </div>
    <p>Shadow AI refers to the use of AI applications that haven't been officially sanctioned by your IT department. Shadow AI is not an uncommon phenomenon – Salesforce found that <a href="https://www.salesforce.com/news/stories/ai-at-work-research/?utm_campaign=amer_cbaw&amp;utm_content=Salesforce_World+Tour&amp;utm_medium=organic_social&amp;utm_source=linkedin"><u>over half of the knowledge workers it surveyed</u></a> admitted to using unsanctioned AI tools at work. Use of unsanctioned AI is not necessarily a sign of malicious intent; employees are often just trying to do their jobs better. As an IT or Security leader, your goal should be to discover Shadow AI and then apply the appropriate AI security policy. There are two powerful ways to do this: inline and out-of-band.</p>
    <div>
      <h4>Discover employee usage of AI, inline</h4>
      <a href="#discover-employee-usage-of-ai-inline">
        
      </a>
    </div>
    <p>The most direct way to get visibility is by using <a href="https://www.cloudflare.com/zero-trust/products/gateway/"><u>Cloudflare's Secure Web Gateway (SWG)</u></a>. </p><p>SWG helps you get a clear picture of both sanctioned and unsanctioned AI and chat applications. By reviewing your detected usage, you'll gain insight into which AI apps are being used in your organization. This knowledge is essential for building policies that support approved tools, and block or control risky ones. This feature requires you to deploy the WARP client in Gateway proxy mode on your end-user devices.</p><p>You can review your company’s AI app usage using our new Application Library and <a href="http://blog.cloudflare.com/shadow-AI-analytics/"><u>Shadow IT </u></a>dashboards. These tools allow you to: </p><ul><li><p>Review traffic from user devices to understand how many users engage with a specific application over time.</p></li><li><p>Denote application’s status (e.g., Approved, Unapproved) inside your organization, and use that as input to a variety of SWG policies that control access to applications with that status. </p></li><li><p> Automate assessment of SaaS and Gen AI applications at scale with our soon-to-be-released <a href="http://blog.cloudflare.com/confidence-score-rubric/"><u>Cloudflare Application Confidence Scores</u><b><u>. </u></b></a></p></li></ul>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/3NFrOpJkBMH6tsPZVec02Q/37b54f7477082dedcac2adcba31e2c29/2.png" />
          </figure><p><sup><i>Shadow IT dashboard showing utilization of applications of different status (Approved, Unapproved, In Review, Unreviewed).</i></sup></p>
    <div>
      <h4>Discover employee usage of AI, out-of-band</h4>
      <a href="#discover-employee-usage-of-ai-out-of-band">
        
      </a>
    </div>
    <p>Even if your organization doesn't use a device client, you can still get valuable data on Shadow AI usage if you use Cloudflare's integrations for Cloud Access Security Broker (<a href="https://www.cloudflare.com/zero-trust/products/casb/"><u>CASB</u></a>) with services like Google Workspace, Microsoft 365, or GitHub. </p><p><a href="https://www.cloudflare.com/zero-trust/products/casb/"><u>Cloudflare CASB</u></a> provides high-fidelity detail about your SaaS environments, including sensitive data visibility and suspicious user activity. By integrating CASB with your SSO provider, you can see if your users have authenticated to any third-party AI applications, giving you a clear and non-invasive sense of app usage across your organization.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/3HDUtSAX9f5XZasSyACTiV/367f80a5d745070fd8e0191d0e36e61d/3.png" />
          </figure><p><sup><i>An API CASB integration with Google Workspace, showing findings filtered to third party integrations. Findings discover multiple LLM integrations.</i></sup></p>
    <div>
      <h2>Implement an AI risk management framework</h2>
      <a href="#implement-an-ai-risk-management-framework">
        
      </a>
    </div>
    <p>Now that you’ve gained visibility into your AI landscape, the next step is to proactively manage that risk. Cloudflare’s SASE platform allows you to monitor AI prompts and responses, enforce granular security policies, coach users on secure behavior, and prevent misconfigurations in your enterprise AI providers.</p>
    <div>
      <h3>Detect and monitor AI prompts and responses</h3>
      <a href="#detect-and-monitor-ai-prompts-and-responses">
        
      </a>
    </div>
    <p>If you have <a href="https://developers.cloudflare.com/learning-paths/replace-vpn/configure-device-agent/enable-tls-decryption/"><u>TLS decryption enabled</u></a> in your SASE platform, you can gain new and powerful insights into how your employees are using AI with our new <a href="http://blog.cloudflare.com/ai-prompt-protection/"><u>AI prompt protection</u></a> feature.  </p><p>AI Prompt Protection provides you with visibility into the exact prompts and responses from your employees’ interactions with supported AI applications. This allows you to go beyond simply knowing which tools are being used and gives you insight into exactly what kind of information is being shared.  </p><p>This feature also works with <a href="https://developers.cloudflare.com/cloudflare-one/policies/data-loss-prevention/dlp-profiles/"><u>DLP profiles</u></a> to detect sensitive data in prompts. You can also choose whether to block the action or simply monitor it.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/JpNZiyklt6qBRjW4LZuSW/1ea4043b6d03f8de31ce24175aa6ca02/4.png" />
          </figure><p><sup><i>Log entry for a prompt detected using AI prompt protection.</i></sup></p>
    <div>
      <h3>Build granular AI security policies</h3>
      <a href="#build-granular-ai-security-policies">
        
      </a>
    </div>
    <p>Once your monitoring tools give you a clear understanding of AI usage, you can begin building security policies to achieve your security goals. Cloudflare's Gateway allows you to create policies based on application categories, application approval status, users, user groups, and device status. For example, you can:</p><ul><li><p>create policies to explicitly allow approved AI applications while blocking unapproved AI applications;</p></li><li><p>create <a href="https://developers.cloudflare.com/changelog/2025-04-11-http-redirect-custom-block-page-redirect/"><u>policies that redirect users</u></a> from unapproved AI applications to an approved AI application;</p></li><li><p>limit access to certain applications to specific users or groups that have specific device security posture;</p></li><li><p>build policies to enable prompt capture (with<a href="http://blog.cloudflare.com/ai-prompt-protection/"><u> AI prompt protection</u></a>) for specific high-risk user groups, such as contractors or new employees, without affecting the rest of the organization; and</p></li><li><p>put certain applications behind <a href="https://developers.cloudflare.com/cloudflare-one/policies/browser-isolation/"><u>Remote Browser Isolation (RBI)</u></a>, to prevent end users from uploading files or pasting data into the application.</p></li></ul>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/2BCDxoKrUDRAOO13V8Qd4W/28e84e4529f3e040ba4a2c3c98c6eed7/5.png" />
          </figure><p><sup><i>Gateway application status policy selector</i></sup></p><p>All of these policies can be written in Cloudflare Gateway’s unified policy builder, making it easy to deploy your AI Security Strategy across your organization.</p>
    <div>
      <h3>Control access to internal LLMs </h3>
      <a href="#control-access-to-internal-llms">
        
      </a>
    </div>
    <p>You can use <a href="https://developers.cloudflare.com/cloudflare-one/policies/access/"><u>Cloudflare Access</u></a> to control your employees’ access to your organization’s internal LLMs, including any <a href="https://www.cloudflare.com/learning/ai/how-to-secure-training-data-against-ai-data-leaks/">proprietary models you train internally</a> and/or models that your organization runs on <a href="https://developers.cloudflare.com/workers-ai/"><u>Cloudflare Worker’s AI</u></a>. </p><p>Cloudflare Access allows you to gate access to these LLMs using fine-grained policies, including ensuring users are granted access based on their identity, user group, device posture, and other contextual signals. For example, you can use <a href="https://developers.cloudflare.com/cloudflare-one/policies/access/"><u>Cloudflare Access</u></a> to write a policy that ensures that only certain data scientists at your organization can access a <a href="https://developers.cloudflare.com/workers-ai/"><u>Workers AI</u></a> model that is <a href="https://developers.cloudflare.com/workers-ai/guides/tutorials/fine-tune-models-with-autotrain/"><u>trained</u></a> on certain types of customer data. </p>
    <div>
      <h3>Manage the security posture of third-party AI providers</h3>
      <a href="#manage-the-security-posture-of-third-party-ai-providers">
        
      </a>
    </div>
    <p>As you define which AI tools are sanctioned, you can develop functional security controls for consistent usage. Cloudflare newly supports <a href="http://blog.cloudflare.com/casb-ai-integrations/"><u>API CASB integrations with popular AI tools</u></a> like OpenAI (ChatGPT), Anthropic (Claude), and Google Gemini. These "out-of-band" integrations provide immediate visibility into how users are engaging with sanctioned AI tools, allowing you to report on posture management findings include:</p><ul><li><p>Misconfigurations related to sharing settings.</p></li><li><p>Best practices for API key management.</p></li><li><p>DLP profile matches in uploaded attachments</p></li><li><p>Riskier AI features (e.g. autonomous web browsing, code execution) that are toggled on</p></li></ul>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/0a6FVjCwejeyUzdQR0pyb/79f29b0d92c27bcd400ed7ded8d4c4e3/6.png" />
          </figure><p><sup><i>OpenAI API CASB Integration showing riskier features that are toggled on, security posture risks like unused admin credentials, and an uploaded attachment with a DLP profile match.</i></sup></p>
    <div>
      <h2>Layer on data protection </h2>
      <a href="#layer-on-data-protection">
        
      </a>
    </div>
    <p>Robust data protection is the final pillar that protects your employee’s access to AI.. </p>
    <div>
      <h3>Prevent data loss</h3>
      <a href="#prevent-data-loss">
        
      </a>
    </div>
    <p>Our SASE platform has long supported Data Loss Prevention (<a href="https://developers.cloudflare.com/cloudflare-one/policies/data-loss-prevention/"><u>DLP</u></a>) tools that scan and block sensitive data from being entered into AI tools, to prevent data leakage and protect your organization's most valuable information.  You can write policies that detect sensitive data while adapting to <a href="https://blog.cloudflare.com/improving-data-loss-prevention-accuracy-with-ai-context-analysis/"><u>organization-specific traffic patterns</u></a>, and use Cloudflare Gateway’s unified policy builder to apply these to your users' interactions with AI tools or other applications. For example, you could write a DLP policy that detects and blocks the upload of a social security number (SSN), phone number or address.</p><p>As part of our new <a href="http://blog.cloudflare.com/ai-prompt-protection/"><u>AI prompt protection</u></a> feature, you can now also gain a semantic understanding of your users’ interactions with supported AI providers. Prompts are classified <i>inline </i>into meaningful, high-level topics that include PII, credentials and secrets, source code, financial information, code abuse / malicious code and prompt injection / jailbreak.  You can then build inline granular policies based on these high-level topic classifications. For example, you could create a policy that blocks a non-HR employee from submitting a prompt with the intent to receive PII from the response, while allowing the HR team to do so during a compensation planning cycle. </p><p>Our new <a href="http://blog.cloudflare.com/ai-prompt-protection/"><u>AI prompt protection</u></a> feature empowers you to apply smart, user-specific DLP rules that empower your teams to get work done, all while strengthening your security posture. To use our most advanced DLP feature, you'll need to enable TLS decryption to inspect traffic.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/3dUnu8P5cMS18k9BxkGoHY/16fdccae7f8e99dc34ebfe7399db4b94/7.png" />
          </figure><p><sup><i>The above policy blocks all ChatGPT prompts that may receive PII back in the response for employees in engineering, marketing, product, and finance </i></sup><a href="https://developers.cloudflare.com/cloudflare-one/policies/gateway/identity-selectors/"><sup><i><u>user groups</u></i></sup></a><sup><i>. </i></sup></p>
    <div>
      <h2>Secure MCP — and Agentic AI </h2>
      <a href="#secure-mcp-and-agentic-ai">
        
      </a>
    </div>
    <p>MCP (Model Context Protocol) is an emerging AI standard, where MCP servers act as a translation layer for <a href="https://www.cloudflare.com/learning/ai/what-is-agentic-ai/"><u>AI agents</u></a>, allowing them to communicate with public and private APIs, understand datasets, and perform actions. Because these servers are a primary entry point for AI agents to engage with and manipulate your data, they are a new and critical security asset for your security team to manage.</p><p>Cloudflare already offers a robust set of developer tools for deploying <a href="https://developers.cloudflare.com/agents/guides/remote-mcp-server/"><u>remote MCP servers</u></a>—a cloud-based server that acts as a bridge between a user's data and tools and various AI applications. But now our customers are asking for help securing their enterprise MCP deployments. </p><p>That is why we’re making MCP security controls a core part of our SASE platform.</p>
    <div>
      <h4>Control MCP Authorization</h4>
      <a href="#control-mcp-authorization">
        
      </a>
    </div>
    <p>MCP servers typically use OAuth for authorization, where the server inherits the permissions of the authorizing user. While this adheres to least-privilege for the user, it can lead to <b>authorization sprawl </b>— where the agent accumulates an excessive number of permissions over time. This makes the agent a high-value target for attackers.</p><p><a href="https://developers.cloudflare.com/cloudflare-one/applications/configure-apps/mcp-servers"><u>Cloudflare Access</u></a> now helps you manage authorization sprawl by applying <a href="https://www.cloudflare.com/learning/security/glossary/what-is-zero-trust/"><u>Zero Trust principles</u></a> to MCP server access. A Zero Trust model assumes no user, device, or network can be trusted implicitly, so every request is continuously verified. This <a href="https://developers.cloudflare.com/cloudflare-one/applications/configure-apps/mcp-servers"><u>approach </u></a>ensures secure authentication and management of these critical assets as your business adopts more agentic workflows. </p>
    <div>
      <h4>Centralize management of MCP servers</h4>
      <a href="#centralize-management-of-mcp-servers">
        
      </a>
    </div>
    <p><a href="http://blog.cloudflare.com/zero-trust-mcp-server-portals/"><u>Cloudflare MCP Server Portal</u></a> is a new feature in Cloudflare’s SASE platform that centralizes the management, security, and observation of an organization’s MCP servers.</p><p>MCP Server Portal allows you to register all your MCP servers with Cloudflare and provide your end users with a single, unified Portal endpoint to configure in their MCP client. This approach simplifies the user experience, because it eliminates the need to configure a one-to-one connection between every MCP client and server. It also means that new MCP servers dynamically become available to users whenever they are added to the Portal. </p><p>Beyond these usability enhancements, MCP Server Portal addresses the significant security risks associated with MCP in the enterprise. The current decentralized approach of MCP deployments creates a tangle of unmanaged one-to-one connections that are difficult to secure. The lack of centralized controls creates a variety of risks including prompt injection, tool injection (where malicious code is part of the MCP server itself), supply chain attacks and data leakage. </p><p>MCP Server Portals solve this by routing all MCP traffic through Cloudflare, allowing for centralized policy enforcement, comprehensive visibility and logging, and a curated user experience based on the principle of least privilege. Administrators can review and approve MCP servers before making them available, and users are only presented with the servers and tools they are authorized to use, which prevents the use of unvetted or malicious third-party servers.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/64a5Snga1xwRHeCmdbYrpj/f23dc4584618f0c37fb0be8f3399554b/8.png" />
          </figure><p><sup><i>An MCP Server Portal in the Cloudflare Dashboard</i></sup></p><p>All of these features are only the beginning of our MCP security roadmap, as we continue advancing our support for MCP infrastructure and security controls across the entire Cloudflare platform.</p>
    <div>
      <h2>Implement your AI security strategy in a single platform</h2>
      <a href="#implement-your-ai-security-strategy-in-a-single-platform">
        
      </a>
    </div>
    <p>As organizations rapidly develop and deploy their AI security strategies, Cloudflare’s SASE platform is ideally situated to implement policies that balance productivity with data and security controls.</p><p>Our SASE has a full suite of features to protect employee interactions with AI. Some of these features are deeply integrated in our <a href="https://developers.cloudflare.com/cloudflare-one/policies/gateway/"><u>Secure Web Gateway (SWG)</u></a>, including the ability to write fine-grained access policies, gain visibility into <a href="http://blog.cloudflare.com/shadow-AI-analytics/"><u>Shadow IT </u></a>and introspect on interactions with AI tools using <a href="http://blog.cloudflare.com/ai-prompt-protection/"><u>AI prompt protection</u></a>. Apart from these inline controls, our <a href="https://developers.cloudflare.com/cloudflare-one/applications/casb/"><u>CASB</u></a> provides visibility and control using out-of-band API integrations. Our Cloudflare <a href="https://developers.cloudflare.com/cloudflare-one/policies/access/"><u>Access</u></a> product can apply Zero Trust principles while protecting employee access to corporate LLMs that are hosted on <a href="https://developers.cloudflare.com/workers-ai/"><u>Workers AI</u></a> or elsewhere. We’re newly integrating controls for <a href="http://blog.cloudflare.com/zero-trust-mcp-server-portals/"><u>securing MCP</u></a> that can also be used alongside Cloudflare’s <a href="https://blog.cloudflare.com/remote-model-context-protocol-servers-mcp/"><u>Remote MCP Server</u></a> platform.</p><p>And all of these features are integrated directly into Cloudflare’s SASE’s unified dashboard, providing a unified platform for you to implement your AI security strategy. You can even gain a holistic view of all of your AI-SPM controls using our newly-released AI-SPM overview dashboard. </p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/6WzeNXp9TbX0h0QF8Nyby5/bcbeb8824e3eb5558826aed2cb17c11a/9.png" />
          </figure><p><sup><i>AI security report showing utilization of AI applications.</i></sup></p><p>As one the few SASE vendors that also offer AI infrastructure, Cloudflare’s SASE platform can also be deployed alongside products from our developer and application security platforms to holistically implement your AI security strategy alongside your AI infrastructure strategy (using, for example, <a href="https://developers.cloudflare.com/workers-ai/"><u>Workers AI</u></a>, <a href="https://developers.cloudflare.com/ai-gateway/"><u>AI Gateway</u></a>, <a href="https://developers.cloudflare.com/agents/guides/remote-mcp-server/"><u>remote MCP servers</u></a>, <a href="https://realtime.cloudflare.com/"><u>Realtime AI Apps</u></a>, <a href="https://developers.cloudflare.com/waf/detections/firewall-for-ai/"><u>Firewall for AI</u></a>, <a href="https://blog.cloudflare.com/ai-labyrinth/"><u>AI Labyrinth</u></a>, or <a href="https://blog.cloudflare.com/introducing-pay-per-crawl/"><u>pay per crawl</u></a> .)</p>
    <div>
      <h2>Cloudflare is committed to helping enterprises securely adopt AI</h2>
      <a href="#cloudflare-is-committed-to-helping-enterprises-securely-adopt-ai">
        
      </a>
    </div>
    <p>Ensuring AI is scalable, safe, and secure is a natural extension of Cloudflare’s mission, given so much of our success relies on a safe Internet. As AI adoption continues to accelerate, so too does our mission to provide a market-leading set of controls for AI Security Posture Management (AI-SPM). Learn more about how <a href="https://developers.cloudflare.com/learning-paths/holistic-ai-security/concepts/"><u>Cloudflare helps secure AI</u></a> or start exploring our new AI-SPM features in Cloudflare’s SASE <a href="https://dash.cloudflare.com/"><u>dashboard </u></a>today!</p> ]]></content:encoded>
            <category><![CDATA[AI Week]]></category>
            <category><![CDATA[Cloudflare One]]></category>
            <category><![CDATA[Cloudflare Zero Trust]]></category>
            <category><![CDATA[SASE]]></category>
            <category><![CDATA[AI]]></category>
            <category><![CDATA[AI-SPM]]></category>
            <category><![CDATA[DLP]]></category>
            <category><![CDATA[CASB]]></category>
            <category><![CDATA[Access]]></category>
            <category><![CDATA[MCP]]></category>
            <guid isPermaLink="false">55IAKy7DMqbZKAy8htcUiO</guid>
            <dc:creator>AJ Gerstenhaber</dc:creator>
            <dc:creator>Sharon Goldberg</dc:creator>
            <dc:creator>Corey Mahan</dc:creator>
            <dc:creator>Yumna Moazzam</dc:creator>
        </item>
        <item>
            <title><![CDATA[How TimescaleDB helped us scale analytics and reporting]]></title>
            <link>https://blog.cloudflare.com/timescaledb-art/</link>
            <pubDate>Tue, 08 Jul 2025 14:00:00 GMT</pubDate>
            <description><![CDATA[ Cloudflare chose TimescaleDB to power its Digital Experience Monitoring and Zero Trust Analytics products.  ]]></description>
            <content:encoded><![CDATA[ <p>At Cloudflare, PostgreSQL and ClickHouse are our standard databases for transactional and analytical workloads. If you’re part of a team building products with configuration in our Dashboard, chances are you're using PostgreSQL. It’s fast, versatile, reliable, and backed by over 30 years of development and real-world use. It has been a foundational part of our infrastructure since the beginning, and today we run hundreds of PostgreSQL instances across a wide range of configurations and replication setups.</p><p>ClickHouse is a more recent addition to our stack. We started using it around 2017, and it has enabled us to ingest tens of millions of rows per second while supporting millisecond-level query performance. ClickHouse is a remarkable technology, but like all systems, it involves trade-offs.</p><p>In this post, I’ll explain why we chose TimescaleDB — a Postgres extension — over ClickHouse to build the analytics and reporting capabilities in our <a href="https://www.cloudflare.com/zero-trust/products/"><u>Zero Trust product suite</u></a>.</p>
    <div>
      <h2>Designing for future growth</h2>
      <a href="#designing-for-future-growth">
        
      </a>
    </div>
    <p>After a decade in software development, I’ve grown to appreciate systems that are simple and boring. Over time, I’ve found myself consistently advocating for architectures with the fewest moving parts possible. Whenever I see a system diagram with more than three boxes, I ask: <i>Why are all these components here? Do we really need all of this?</i></p><p>As engineers, it's easy to fall into the trap of designing for scenarios that might never happen. We imagine future scale, complex failure scenarios, or edge cases, and start building solutions for them upfront. But in reality, systems often don’t grow the way we expect, or don’t <i>have to</i>. Designing for large scale can be deferred by setting the right expectations with customers, and by adding guardrails like product limits and rate limits. Focusing on launching initial versions of products with just a few essential parts, maybe two or three components, gives us something to ship, test, and learn from quickly. We can always add complexity later, but only once it’s clear we need it.</p><p>Whether I specifically call it <a href="https://en.wikipedia.org/wiki/You_aren%27t_gonna_need_it"><u>YAGNI</u></a>, or <a href="https://en.wikipedia.org/wiki/KISS_principle"><u>Keep it simple, stupid</u></a>, or think about it as minimalism in engineering, the core idea is the same: <b>we’re rarely good at predicting the future, and every additional component we introduce carries a cost.</b> Each box in the system diagram is something that can break itself or other boxes, spiral into outages, and ruin weekend plans of on-call engineers. Each box also requires documentation, tests, observability, and <a href="https://en.wikipedia.org/wiki/Service-level_objective"><u>service level objectives (SLOs)</u></a>. Oftentimes, teams need to learn a new programming language just to support a new box.</p>
    <div>
      <h2>Making Digital Experience Monitoring simple</h2>
      <a href="#making-digital-experience-monitoring-simple">
        
      </a>
    </div>
    <p>Two years ago, I was tasked with building a new product at Cloudflare: <a href="https://developers.cloudflare.com/cloudflare-one/insights/dex/"><u>Digital Experience Monitoring (DEX)</u></a>. DEX provides <a href="https://www.cloudflare.com/learning/performance/what-is-digital-experience-monitoring/"><u>visibility</u></a> into device, network, and application performance across <a href="https://www.cloudflare.com/learning/security/glossary/what-is-zero-trust/"><u>Zero Trust</u></a> environments. Our initial goal was clear — <a href="https://blog.cloudflare.com/introducing-digital-experience-monitoring/"><u>launch an MVP</u></a> focused on fleet status monitoring and synthetic tests, giving customers actionable analytics and troubleshooting. From a technical standpoint, fleet status and synthetic tests are two types of structured logs generated by the <a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-devices/warp/"><u>WARP client</u></a>. These logs are uploaded to an API, stored in a database, and ultimately visualized in the <a href="https://one.dash.cloudflare.com/"><u>Cloudflare Dashboard</u></a>. </p><p>As with many new engineering teams at Cloudflare, DEX started as a “tiger team”: a small group of experienced engineers tasked with validating a new product quickly. I worked with the following constraints:</p><ul><li><p>Team of three full-stack engineers.</p></li><li><p>Daily collaboration with 2-3 other teams.</p></li><li><p>Can launch in beta, engineering can drive product limits.</p></li><li><p>Emphasis on shipping fast.</p></li></ul><p>To strike a balance between usefulness and simplicity, we made deliberate design decisions early on:</p><ul><li><p>Fleet status logs would be uploaded from WARP clients at fixed 2-minute intervals.</p></li><li><p>Synthetic tests required users to preconfigure them by target (HTTP or traceroute) and frequency.</p></li><li><p>We capped usage: each device could run up to 10 synthetic tests, no more than once every 5 minutes.</p></li><li><p>Data retention of 7 days.</p></li></ul><p>These guardrails gave us room to ship DEX months earlier and gather early feedback from customers without prematurely investing in scalability and performance.</p><p>We knew we needed a basic <b>configuration plane </b>— an interface in the <a href="https://one.dash.cloudflare.com/"><u>Dashboard</u></a> for users to create and manage synthetic tests, supported by an API and database to persist this data. That led us to the following setup:</p><ul><li><p>HTTP API for managing test configurations.</p></li><li><p>PostgreSQL for storing those configurations.</p></li><li><p>React UI embedded in the Cloudflare Dashboard.</p></li></ul>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/2Qz0VnYZOG35OC3fd76W67/3dbe226e4cdef8d91c925224c5e43256/2.png" />
          </figure><p>Just three components — simple, focused, and exactly what we needed. Of course, each of these boxes came with real complexity under the hood. PostgreSQL was deployed as a high-availability cluster: one primary, one synchronous replica for failover scenarios, and several asynchronous replicas distributed across two geographies. The API was deployed on horizontally scaled Kubernetes pods across two geographies. The React app was served globally as standard via Cloudflare’s network. Thanks to our platform teams, all of that complexity was abstracted away, allowing us to think in terms of just three essential parts, but it really shows that each box can come with a huge cost behind the scenes. </p><p>Next, we needed to build the <b>analytics plane </b>— an ingestion pipeline to collect structured logs from WARP clients, store them, and visualize them for our customers in the Dashboard. I was personally excited to explore ClickHouse for this. I have seen its performance in other projects and was eager to experiment with it. But as I dug into the internal documentation on how to get started with ClickHouse, reality set in:</p><blockquote><p><i>Writing data to Clickhouse</i></p><p><i>Your service must generate logs in a clear format, using Cap'n Proto or Protocol Buffers. Logs should be written to a socket for logfwdr to transport to PDX, then to a Kafka topic. Use a Concept:Inserter to read from Kafka, batching data to achieve a write rate of less than one batch per second.</i></p></blockquote><p>Oh. That’s a lot. Including ClickHouse and the WARP client, we’re looking at five boxes to be added to the system diagram. This architecture exists for good reason, though. The default and most commonly used table engine in ClickHouse, MergeTree, is optimized for high-throughput batch inserts. It writes each insert as a separate partition, then runs background merges to keep data manageable. This makes writes very fast, but not when they arrive in lots of tiny batches, which was exactly our case with millions of individual devices uploading one log event every 2 minutes. Too many small writes can trigger write amplification, resource contention, and throttling. </p><p>So it became clear that ClickHouse is a sports car and to get value out of it we had to bring it to a race track, shift into high gear, and drive it at top speed. But we didn’t need a race car — we needed a daily driver for short trips to a grocery store. For our initial launch, we didn’t need millions of inserts per second. We needed something easy to set up, reliable, familiar, and good enough to get us to market. A colleague suggested we just use PostgreSQL, quoting “it can be cranked up” to handle the load we were expecting. So, we took the leap!</p><p>First design of configuration and analytics plane for DEX:</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/1hqhwCJXGIzffw77xgabiW/c1afd012c972c39112aee0660f53129a/3.png" />
          </figure>
    <div>
      <h2>Using PostgreSQL for analytics</h2>
      <a href="#using-postgresql-for-analytics">
        
      </a>
    </div>
    <p>Structurally, there’s not much difference between configuration data and analytical logs. Logs are simply structured payloads — often in JSON — that can be transformed into a columnar format and persisted in a relational database.</p><p>Here’s an example of a device state log:</p>
            <pre><code>{
  “timestamp”: “2025-06-16T22:50:12.226Z”,
  “accountId”: “025779fde8cd4ab8a3e5138f870584a7”,
  “deviceId”: “07dfde77-3f8a-4431-89f7-acfcf4ead4fc”,
  “colo”: “SJC”,
  “status”: “connected”,
  “mode”: “warp+doh”,
  “clientVersion”: “2024.3.409.0”,
  “clientPlatform”: “windows”,
}</code></pre>
            <p>To store these logs, we created a simple PostgreSQL table:</p>
            <pre><code>CREATE TABLE device_state (
	"timestamp" TIMESTAMP WITH TIME ZONE NOT NULL,
	account_id TEXT NOT NULL,
	device_id TEXT NOT NULL,
	colo TEXT,
	status TEXT,
	mode TEXT,
	client_version TEXT,
	client_platform TEXT
);</code></pre>
            <p>You might notice that this table doesn’t have a primary key. That’s intentional, because time-series data is almost never queried by a unique ID. Instead, we query by time ranges and filter by various attributes (e.g. account ID or device ID). Still, we needed a way to deduplicate logs in case of client retries. </p><p>We created two indexes to optimize for our most common queries:</p>
            <pre><code>CREATE UNIQUE INDEX device_state_device_account_time ON device_state USING btree (device_id, account_id, “timestamp”);
CREATE INDEX device_state_account_time ON device_state USING btree (account_id, “timestamp”);</code></pre>
            <p>The unique index ensures deduplication: each (device, account, timestamp) tuple represents a single, unique log. The second index supports typical time-window queries at the account level. Since we always query by account_id (represents individual customers) and timestamp, they are always a part of the index. </p><p>We inserted data from our API using UPSERT query:</p>
            <pre><code>INSERT INTO device_state (…) VALUES (…) ON CONFLICT DO NOTHING;
</code></pre>
            
    <div>
      <h2>About order of columns in multicolumn indexes</h2>
      <a href="#about-order-of-columns-in-multicolumn-indexes">
        
      </a>
    </div>
    <p>PostgreSQL's B-tree indexes support multiple columns, but column order has a major impact on query performance.</p><p>From PostgreSQL documentation <a href="https://www.postgresql.org/docs/current/indexes-multicolumn.html"><u>about multicolumn indexes</u></a>:</p><blockquote><p><i>A multicolumn B-tree index can be used with query conditions that involve any subset of the index's columns, but the index is most efficient when there are constraints on the leading (leftmost) columns. The exact rule is that equality constraints on leading columns, plus any inequality constraints on the first column that does not have an equality constraint, will be used to limit the portion of the index that is scanned. Constraints on columns to the right of these columns are checked in the index, so they save visits to the table proper, but they do not reduce the portion of the index that has to be scanned.</i></p></blockquote><p>What’s interesting in time series workloads is that the queries usually have inequality constraints on the time column, and then equality constraints on all other columns. </p><p>A typical query to build line charts and pie charts visualizing data in a time interval often looks like this:</p>
            <pre><code>SELECT 
  DATE_TRUNC(‘hour’, timestamp) as hour, 
  account_id,
  device_id,
  status,
  COUNT(*) as total
FROM device_state 
WHERE 
  account_id = ‘a’ AND
  device_id = ‘b’ AND
  timestamp BETWEEN ‘2025-07-01’ AND ‘2025-07-02’
GROUP BY hour, account_id, device_id, status;</code></pre>
            <p>Notice our WHERE clause — it has equality constraints on account_id and device_id, and two inequality constraints on timestamp. If we had built our index in the order of (timestamp, account_id, device_id), only the “timestamp” section of the index could’ve been used to reduce the index section to be scanned, and account_id and device_id would have to be fully scanned, with values that are not ‘a’ or ‘b’ filtered out after scanning. </p><p>Additionally, the runtime complexity of search in btree is O(log n) — the search will get slower as the size of your table (and all indexes) grows, so another optimization is to reduce the portion of the index that needs to be scanned. Even for columns with equality constraints, you can greatly reduce query times by ordering columns by cardinality. We’ve seen up to 100% improvement in SELECT query performance when we simply changed the order of account_id and device_id in our multicolumn index.</p><p>To get the best performance for time range queries, we follow these rules for order of columns:</p><ul><li><p>The timestamp column is always last.</p></li><li><p>Other columns are leading columns, ordered by their cardinalities starting with the highest cardinality column.</p></li></ul>
    <div>
      <h2>Launch and improvements</h2>
      <a href="#launch-and-improvements">
        
      </a>
    </div>
    <p>Because we took a step back during system design and avoided optimizing for the future, thanks to our minimal and focused architecture, we went from zero to a working DEX MVP in under four months. </p><p>Early metrics were promising, providing reasonable throughput capabilities and latency for API requests:</p><ul><li><p>~200 inserts/sec at launch.</p></li><li><p>Query latencies in the hundreds of milliseconds for most customers.</p></li></ul><p>Post-launch, we focused on collecting feedback while monitoring system behavior. As adoption grew, we scaled to 1,000 inserts/sec, and our tables grew to billions of rows. That’s when we started to see performance degradation — particularly for large customers querying 7+ day time ranges across tens of thousands of devices.</p>
    <div>
      <h2>Optimizing query performance with precomputed aggregates</h2>
      <a href="#optimizing-query-performance-with-precomputed-aggregates">
        
      </a>
    </div>
    <p>As DEX grew to billions of device logs, one of the first performance optimizations we explored was precomputing aggregates, also known as downsampling.</p><p>The idea is that if you know the shape of your queries ahead of time — say, grouped by status, mode, or geographic location — you can precompute and store those summaries in advance, rather than querying the raw data repeatedly. This dramatically reduces the volume of data scanned and the complexity of the query execution.</p><p>To illustrate this in an example, let’s consider DEX Fleet Status:</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/719sTyUjPzvI7IBUPuVKUc/c6a09ef143bebba6b1e3dba77d6f043f/4.png" />
          </figure><p>In our DEX Fleet Status dashboard, we render common visualizations like:</p><ul><li><p>Number of connected devices by data center location (colo)</p></li><li><p>Device status and connection mode over time</p></li></ul><p>These charts typically group logs by status, mode, or colo, either over a 1-hour window or across the full time range.</p><p>Our largest customers may have 30,000+ devices, each reporting logs every 2 minutes. That’s millions of records per day per customer. But the columns we’re visualizing (e.g. status and mode) only have a few distinct values (4–6). By aggregating this data ahead of time, we can collapse millions of rows into a few hundred per interval and query dramatically smaller, narrower tables.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4kzEM3I7ZxCYdGI1T0LrEO/97a31f967a886a6d641205dd6fd39b79/5.png" />
          </figure><p>This made a huge impact: we saw up to 1000x query performance improvement and charts that previously took several seconds now render instantly, even for 7-day views across tens of thousands of devices.</p><p>Implementing this technique in PostgreSQL is challenging. While PostgreSQL does support <a href="https://www.postgresql.org/docs/current/rules-materializedviews.html"><u>materialized views</u></a>, they didn’t fit our needs out of the box because they don’t refresh automatically and incrementally. Instead, we used a cron job that was periodically running custom aggregation queries for all pre-aggregate tables (we had 6 of them). Our Database platform team had a lightweight framework built for data retention purposes that we plugged into. Still, any schema change required cross-team coordination, and we invested considerable time in optimizing aggregation performance. But the results were worth it: fast, reliable queries for the majority of customer use cases.</p>
    <div>
      <h2>Table partitioning</h2>
      <a href="#table-partitioning">
        
      </a>
    </div>
    <p>Pre-computed aggregates are great, but they’re not the answer to everything. As we were adding more table columns for new DEX features, we needed to invest time in creating new pre-aggregated tables. Additionally, some features required queries with combined filters, which required querying the raw data that included all the columns. But we didn’t have good enough performance in raw tables.</p><p>One technique we considered to improve performance on raw tables was <a href="https://www.postgresql.org/docs/current/ddl-partitioning.html"><u>table partitioning</u></a>. In PostgreSQL, tables are stored in one large file (large tables are split to 1 GB segment files). With partitioning, you can break a large table into smaller child tables, each covering a slice of data (e.g. one day of logs). PostgreSQL then scans only the relevant partitions based on your query’s timestamp filter. This can dramatically improve query performance in some cases. </p><p>What was particularly interesting for us was range-partitioning on the timestamp column, because our customers wanted longer data retention, up to one year, and storing one year of data in one large table would have destroyed query performance.</p>
            <pre><code>CREATE TABLE device_state (
    …
) PARTITION BY RANGE (timestamp);

CREATE TABLE device_state_20250601 PARTITION OF device_state
    FOR VALUES FROM ('2025-06-01') TO ('2025-06-02');
CREATE TABLE device_state_20250601 PARTITION OF device_state
    FOR VALUES FROM ('2025-06-02') TO ('2025-06-03');
CREATE TABLE device_state_20250601 PARTITION OF device_state
    FOR VALUES FROM ('2025-06-03') TO ('2025-06-04');</code></pre>
            <p>Unfortunately, PostgreSQL doesn’t automatically manage partitions — you must manually create each one as shown above, so we would have needed to build a full partition management system to automate this.</p><p>We ended up not adopting it because in the end, partitioning didn’t solve our core problem: speeding up frequent dashboard queries on recent raw data up to past 7 days.</p>
    <div>
      <h2>TimescaleDB</h2>
      <a href="#timescaledb">
        
      </a>
    </div>
    <p>As our raw PostgreSQL setup began to show its limits, we started exploring other options to improve query performance. That’s when we discovered TimescaleDB. What particularly caught my attention was <a href="https://docs.tigerdata.com/use-timescale/latest/hypercore/real-time-analytics-in-hypercore/"><b><u>columnstore</u></b></a><b> and </b><a href="https://docs.tigerdata.com/use-timescale/latest/hypertables/improve-query-performance/"><b><u>sparse indexes</u></b></a>, common techniques in OLAP databases like ClickHouse. It seemed to be the solution for our raw performance problem. On top of that:</p><ul><li><p><b>It's Postgres:</b> TimescaleDB is packaged as a PostgreSQL extension and it seamlessly coexists with it, granting access to the entire Postgres ecosystem. We can still use vanilla Postgres tables for transactional workloads, and TimescaleDB <a href="https://docs.tigerdata.com/use-timescale/latest/hypertables/"><u>hypertables</u></a> for analytical tasks, offering convenience of <a href="https://www.tigerdata.com/blog/postgres-for-everything"><u>one database for everything</u></a>.</p></li><li><p><b>Automatic partition management:</b> Unlike Postgres, which requires manual<a href="https://www.postgresql.org/docs/current/ddl-partitioning.html"> <u>table partitioning</u></a>, TimescaleDB's<a href="https://docs.tigerdata.com/use-timescale/latest/hypertables/"><u> hypertables</u></a> are partitioned by default and automatically managed. </p></li><li><p><b>Automatic data pre-aggregation/downsampling</b>: Tedious processes in native Postgres, such as creating and managing downsampled tables, are automated in TimescaleDB through <a href="https://docs.tigerdata.com/use-timescale/latest/continuous-aggregates/about-continuous-aggregates/"><u>continuous aggregates</u></a>. This feature eliminates the need for custom-built cron jobs and simplifies the development and deployment of pre-computed aggregates.</p></li><li><p><b>Realtime data pre-aggregation/downsampling:</b> A common problem with async aggregates is that they can be out-of-date, because aggregation jobs can take a long time to complete. TimescaleDB addresses the issue of outdated async aggregates with its <a href="https://docs.tigerdata.com/use-timescale/latest/continuous-aggregates/real-time-aggregates/"><u>realtime aggregation</u></a> by seamlessly integrating the most recent raw data into rollup tables during queries.</p></li><li><p><b>Compression: </b><a href="https://docs.tigerdata.com/use-timescale/latest/compression/about-compression/"><u>Compression</u></a> is a cornerstone feature of TimescaleDB. Compression can reduce table size by more than 90% while simultaneously enhancing query performance.</p></li><li><p><b>Columnstore performance for real-time analytics:</b> TimescaleDB’s hybrid row/columnar engine, <a href="https://docs.tigerdata.com/use-timescale/latest/hypercore/"><u>Hypercore</u></a>, enables fast scans and aggregations over large datasets. It’s fully mutable, so we can backfill with UPSERTs. Combined with compression, it delivers strong performance for analytical queries while minimizing storage overhead.</p></li><li><p><b>Rich library of analytics tools and functions: </b>TimescaleDB offers a suite of tools and functions tailored for analytical workloads, including <a href="https://docs.tigerdata.com/use-timescale/latest/hyperfunctions/percentile-approx/"><u>percentile approximation</u></a>,<a href="https://docs.tigerdata.com/use-timescale/latest/hyperfunctions/approx-count-distincts/"><u> count of unique values approximation</u></a>,<a href="https://docs.tigerdata.com/use-timescale/latest/hyperfunctions/time-weighted-averages/"><u> time-weighted averages</u></a>, etc…</p></li></ul><p>One especially compelling aspect: TimescaleDB made aggregation and data retention automatic, allowing us to simplify our infrastructure and remove a box from the system architecture entirely.</p>
    <div>
      <h2>Evaluating TimescaleDB for DEX</h2>
      <a href="#evaluating-timescaledb-for-dex">
        
      </a>
    </div>
    <p>We deployed a self-hosted TimescaleDB instance on our canary PostgreSQL cluster to run an apples-to-apples comparison against vanilla Postgres. Our production backend was dual-writing to both systems.</p><p>As expected, installing TimescaleDB was trivial. Simply load the library and run the following SQL query:</p>
            <pre><code>CREATE EXTENSION IF NOT EXISTS timescaledb;</code></pre>
            <p>Then we:</p><ul><li><p>Created raw tables</p></li><li><p>Converted them to hypertables</p></li><li><p>Enabled columnstore features</p></li><li><p>Set up continuous aggregates</p></li><li><p>Configured automated policies for compression and retention</p></li></ul><p>Here’s a condensed example for device_state logs:
</p>
            <pre><code>– Create device_state table.
CREATE TABLE device_state (
	…
);

– Convert it to a hypertable.
SELECT create_hypertable ('device_state', by_range ('timestamp', INTERVAL '1 hour'));

– Add columnstore settings
ALTER TABLE device_state SET (
    timescaledb.enable_columnstore,
    timescaledb.segmentby = ‘account_id’
);

– Schedule recurring compression jobs
CALL add_columnstore_policy(‘device_state’, after =&gt; INTERVAL '2 hours', schedule_interval =&gt; INTERVAL '1 hour');

– Schedule recurring data retention jobs
SELECT add_retention_policy(‘device_state’, INTERVAL '7 days');

– Create device_state_by_status_1h continuous aggregate
CREATE MATERIALIZED VIEW device_state_by_status_1h
WITH (timescaledb.continuous) AS
SELECT
  time_bucket (INTERVAL '1 hour', TIMESTAMP) AS time_bucket,
  Account_id,
  Status,
  COUNT(*) as total
FROM device_state
GROUP BY 1,2,3
WITH no data;

– Enable realtime aggregates
ALTER MATERIALIZED VIEW ‘device_state_by_status_1h’
SET (timescaledb.materialized_only=FALSE);

– Schedule recurring continuous aggregate jobs to refresh past 10 hours every 10 minutes
SELECT add_continuous_aggregate_policy (
  ‘device_state_by_status_1h’,
  start_offset=&gt;INTERVAL '10 hours',
  end_offset=&gt;INTERVAL '1 minute',
  schedule_interval=&gt;INTERVAL '10 minutes',
  buckets_per_batch =&gt; 1
);</code></pre>
            <p>After a two-week backfill period, we ran side-by-side benchmarks using real production queries from our dashboard. We tested:</p><ul><li><p>3 time windows: past 1 hour, 24 hours, and 7 days</p></li><li><p>3 columnstore modes: uncompressed, compressed, and compressed with segmenting</p></li><li><p>Datasets containing 500 million to 1 billion rows</p></li></ul>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/6YpApaIzs8rj9pwmPlG3xI/459a3498a160c7202797e8c52f0b4c98/6.png" />
          </figure><p>We saw 5x to 35x performance improvements, depending on query type and time range:</p><ul><li><p>For short windows (1–24 hours), even uncompressed hypertables performed well.</p></li><li><p>For longer windows (7 days), compression and columnstore settings (especially with segmentby) made all the difference.</p></li><li><p>Sparse indexes were critical. Once PostgreSQL’s btree indexes broke down at scale, Timescale’s minmax sparse indexes and columnar layout outperformed.</p></li></ul><p>On top of query performance, we saw impressive compression ratios, up to 33x:</p>
            <pre><code>SELECT 
    pg_size_pretty(before_compression_total_bytes) as before,
    pg_size_pretty(after_compression_total_bytes) as after,
    ROUND(before_compression_total_bytes / after_compression_total_bytes::numeric, 2) as compression_ratio
FROM hypertable_compression_stats('device_state');

before: 1616 GB
after: 49 GB
compression_ratio: 32.83</code></pre>
            <p>That meant we could retain 33x more data for the same cost.</p>
    <div>
      <h2>What makes columnstore so fast?</h2>
      <a href="#what-makes-columnstore-so-fast">
        
      </a>
    </div>
    <p>Two main things: compression and sparse indexes.</p><p>It might seem counterintuitive that querying compressed data, which requires decompression, can be faster than querying raw data. But in practice, input/output (I/O) is the major bottleneck in most analytical workloads. The reduction in disk I/O from compression often outweighs the CPU cost of decompressing. In TimescaleDB, compression transforms a hypertable into a columnar format: values from each column are grouped in chunks (typically 1,000 at a time), stored in arrays, and then compressed into binary form. More detailed explanation in <a href="https://www.tigerdata.com/blog/building-columnar-compression-in-a-row-oriented-database#building-columnar-storage-on-a-row-based-system"><u>this TimescaleDB blog post</u></a>.</p><p>You might wonder how this is possible in PostgreSQL, which is traditionally row-based. TimescaleDB has a really clever solution for it by utilizing PostgreSQL <a href="https://www.postgresql.org/docs/current/storage-toast.html"><u>TOAST</u></a> pages. The way it works is after tuples of 1000 values are compressed, they’re moved to external TOAST pages. The columnstore table itself then basically becomes a table of pointers to TOAST, where actual data is stored and only retrieved lazily, column-by-column.</p><p>The second factor is sparse minmax indexes. The idea behind sparse indexes is that rather than storing every single value in an index, store every N-th value. This makes them much smaller and more efficient to query in very large datasets. TimescaleDB implements minmax sparse indexes, where for each compressed tuple of 1,000 values it creates two additional metadata columns, storing min and max values. The query engine then looks at these columns to determine whether a value could possibly be found in a compressed tuple before attempting to decompress it.</p><p>What we found later, unfortunately, after we did our evaluation of TimescaleDB, is that sparse indexes need to be explicitly enabled via timescaledb.orderby option. Otherwise, TimescaleDB sets it to some default value, which may not always be the most efficient for your queries. We added all columns that we filter on to orderby setting:</p>
            <pre><code>– Add columnstore settings
ALTER TABLE device_state SET (
    timescaledb.enable_columnstore,
    timescaledb.segmentby = ‘account_id’,
    timescaledb.orderby = ‘timestamp,device_id,colo,mode,status,client_version,client_platform
);</code></pre>
            
    <div>
      <h2>TimescaleDB at Cloudflare</h2>
      <a href="#timescaledb-at-cloudflare">
        
      </a>
    </div>
    <p>Following the success with DEX, other teams started exploring TimescaleDB for its simplicity and performance. One notable example is the Zero Trust Analytics &amp; Reporting (ART) team.</p><p>The ART team is responsible for generating analytics and long-term reports — spanning months or even years — for Zero Trust products such as <a href="https://www.cloudflare.com/zero-trust/products/access/"><u>Access</u></a>, <a href="https://www.cloudflare.com/zero-trust/products/gateway/"><u>Gateway</u></a>, <a href="https://www.cloudflare.com/zero-trust/products/casb/"><u>CASB</u></a>, and <a href="https://www.cloudflare.com/zero-trust/products/dlp/"><u>DLP</u></a>. These datasets live in various ClickHouse and PostgreSQL clusters that we wanted to replicate into a singular home that is specifically designed to unify related, but not co-located data points, together and modeled to address our customer’s analytical needs.</p><p>We chose to use TimescaleDB as the aggregation layer on top of raw logs stored elsewhere. We built a system of crawlers using cron jobs that periodically query the multitude of clusters for hourly aggregates across all customers. These aggregates are ingested into TimescaleDB, where we use continuous aggregates to further roll them up into daily and monthly summaries for reporting.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/1Nb8N7QpnumcZiudZHp89m/f59a9558cc4c74fd4a8d0cf6772a27fa/7.png" />
          </figure><p>Access and Gateway datasets are massive, often ingesting millions of rows per second. To support arbitrary filters in reporting, crawler queries group by all relevant fields, including high-cardinality columns like IP addresses. This means the downsampling ratio is low, and in some cases, we're inserting ~100,000 aggregated rows per second. TimescaleDB handles this load just fine, but to support it we made some adjustments:</p><ul><li><p>We switched from bulk INSERTS to COPY. This significantly improved ingestion throughput. We didn’t benchmark it ourselves, but plenty of <a href="https://www.tigerdata.com/learn/testing-postgres-ingest-insert-vs-batch-insert-vs-copy"><u>benchmarks</u></a> show that COPY performs much better with large batches.</p></li><li><p>We disabled synchronous replication. In our case, temporary data loss is acceptable — our crawlers are idempotent and can reprocess missing data as needed.</p></li><li><p>We also disabled <a href="https://www.postgresql.org/docs/8.1/runtime-config-wal.html"><u>fsync</u></a>. Again, durability is less of a concern for this use case, so skipping disk syncs helped with ingest performance.</p></li><li><p>We dropped most indexes in hypertables, only kept one on (account_id, timestamp), and relied on aggressive compression and sparse indexes. The absence of indexes helped with insert rates and didn’t have a significant impact on query performance, because only a very small part of the table was uncompressed and relied on traditional btree indexes.</p></li></ul><p>You can see this system in action at <a href="https://one.dash.cloudflare.com/?to=/:account/analytics/overview"><u>Cloudflare Zero Trust Analytics</u></a>.</p>
    <div>
      <h2>Conclusion</h2>
      <a href="#conclusion">
        
      </a>
    </div>
    <p>Prioritizing core value and resisting the urge to prematurely optimize can accelerate time to market—and sometimes take you on an unexpected journey that leads to better solutions than you'd originally planned. In the early days of DEX, taking a step back to focus on what truly mattered helped us discover TimescaleDB, which turned out to be exactly what we needed.</p><p>Not every team needs a hyper-specialized race car that requires 100 octane fuel, carbon ceramic brakes, and ultra-performance race tires: while each one of these elements boost performance, there's a real cost towards having those items in the form of maintenance and uniqueness. For many teams at Cloudflare, TimescaleDB strikes a phenomenal balance between the simplicity of storing your analytical data under the same roof as your configuration data, while also gaining much of the impressive performance of a specialized OLAP system.</p><p>Check out TimescaleDB in action by using our robust analytics, reporting, and digital experience monitoring capabilities on our Zero Trust platform. To learn more, reach out to your account team or sign up directly <a href="https://www.cloudflare.com/zero-trust/products/"><u>here</u></a>.</p> ]]></content:encoded>
            <category><![CDATA[Cloudflare Zero Trust]]></category>
            <category><![CDATA[Cloudflare One]]></category>
            <guid isPermaLink="false">4YbqxvhldlPwGPRmqgrZPn</guid>
            <dc:creator>Robert Cepa</dc:creator>
        </item>
        <item>
            <title><![CDATA[Everything you need to know about NIST’s new guidance in “SP 1800-35: Implementing a Zero Trust Architecture”]]></title>
            <link>https://blog.cloudflare.com/nist-sp-1300-85/</link>
            <pubDate>Thu, 19 Jun 2025 13:00:00 GMT</pubDate>
            <description><![CDATA[ We read NIST’s new guidance on “Implementing a Zero-Trust Architecture” so that you don’t have to.  Read this to get the key points on the newly-released NIST Special Publication 1800-35.  ]]></description>
            <content:encoded><![CDATA[ <p>For decades, the United States <a href="https://www.nist.gov/"><u>National Institute of Standards and Technology (NIST)</u></a> has been guiding industry efforts through the many publications in its <a href="https://csrc.nist.gov/"><u>Computer Security Resource Center</u></a>. NIST has played an especially important role in the adoption of Zero Trust architecture, through its series of publications that began with <a href="https://csrc.nist.gov/pubs/sp/800/207/final"><u>NIST SP 800-207: Zero Trust Architecture</u></a>, released in 2020.</p><p>NIST has released another Special Publication in this series, <a href="https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.1800-35.pdf"><u>SP 1800-35</u></a>, titled "Implementing a Zero Trust Architecture (ZTA)" which aims to provide practical steps and <a href="https://www.cloudflare.com/learning/access-management/how-to-implement-zero-trust/">best practices for deploying ZTA</a> across various environments.  NIST’s publications about ZTA have been extremely influential across the industry, but are often lengthy and highly detailed, so this blog provides a short and easier-to-read summary of NIST’s latest guidance on ZTA.</p><p>And so, in this blog post:</p><ul><li><p>We summarize the key items you need to know about this new NIST publication, which presents a reference architecture for <a href="https://www.cloudflare.com/learning/security/glossary/what-is-zero-trust/">Zero Trust Architecture (ZTA)</a> along with a series of “Builds” that demonstrate how different products from various vendors can be combined to construct a ZTA that complies with the reference architecture.</p></li><li><p>We show how <a href="https://www.cloudflare.com/zero-trust/products/">Cloudflare’s Zero Trust product suite</a> can be integrated with offerings from other vendors to support a Zero Trust Architecture that maps to the NIST’s reference architecture.</p></li><li><p>We highlight a few key features of Cloudflare’s Zero Trust platform that are especially valuable to customers seeking compliance with NIST’s ZTA reference architecture, including compliance with FedRAMP and new post-quantum cryptography standards.</p></li></ul><p>Let’s dive into NIST’s special publication!</p>
    <div>
      <h2>Overview of SP 1800-35</h2>
      <a href="#overview-of-sp-1800-35">
        
      </a>
    </div>
    <p>In <a href="https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.1800-35.pdf"><u>SP 1800-35</u></a>, NIST reminds us that:</p><blockquote><p><i>A zero-trust architecture (ZTA) enables secure authorized access to assets — machines, applications and services running on them, and associated data and resources — whether located on-premises or in the cloud, for a hybrid workforce and partners based on an organization’s defined access policy.</i></p></blockquote><p>NIST uses the term Subject to refer to entities (i.e. employees, developers, devices) that require access to Resources (i.e. computers, databases, servers, applications).  <a href="https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.1800-35.pdf"><u>SP 1800-35</u></a> focuses on developing and demonstrating various ZTA implementations that allow Subjects to access Resources. Specifically, the reference architecture in <a href="https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.1800-35.pdf"><u>SP 1800-35</u></a> focuses mainly on <i>EIG</i> or “Enhanced Identity Governance”, a specific approach to Zero Trust Architecture, which is defined by NIST in <a href="https://doi.org/10.6028/NIST.SP.800-207"><u>SP 800-207</u></a> as follows:</p><blockquote><p><i>For [the EIG] approach, enterprise resource access policies are based on identity and assigned attributes. </i></p><p><i>The primary requirement for [R]esource access is based on the access privileges granted to the given [S]ubject. Other factors such as device used, asset status, and environmental factors may alter the final confidence level calculation … or tailor the result in some way, such as granting only partial access to a given [Resource] based on network location.</i></p><p><i>Individual [R]esources or [policy enforcement points (PEP)] must have a way to forward requests to a policy engine service or authenticate the [S]ubject and approve the request before granting access.</i></p></blockquote><p>While there are other approaches to ZTA mentioned in the original NIST <a href="https://doi.org/10.6028/NIST.SP.800-207"><u>SP 800-207</u></a>, we omit those here because <a href="https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.1800-35.pdf"><u>SP 1800-35</u></a> focuses mostly on EIG.</p><p>The ZTA reference architecture from <a href="https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.1800-35.pdf"><u>SP 1800-35</u></a> focuses on EIG approaches as a set of logical components as shown in the figure below.  Each component in the reference architecture does not necessarily correspond directly to physical (hardware or software) components, or products sold by a single vendor, but rather to the logical functionality of the component.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/hXSpBQINdjqyl57by3Uhc/fd39f66cebc2dd0a79dc4749b02208f3/image4.png" />
          </figure><p><sup><i>Figure 1: General ZTA Reference Architecture. Source: NIST, </i></sup><a href="https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.1800-35.pdf"><sup><i><u>Special Publication 1800-35</u></i></sup></a><sup><i>, "Implementing a Zero Trust Architecture (ZTA)”, 2025.</i></sup></p><p>The logical components in the reference architecture are all related to the implementation of policy. Policy is crucial for ZTA because the whole point of a ZTA is to apply policies that determine who has access to what, when and under what conditions.</p><p>The core components of the reference architecture are as follows:</p><p>| Policy Enforcement Point(PEP) | The PEP protects the “trust zones” that host enterprise Resources, and handles enabling, monitoring, and eventually terminating connections between Subjects and Resources.  You can think of the PEP as the dataplane that supports the Subject’s access to the Resources.</p><div>
    <figure>
        <table>
            <colgroup>
                <col></col>
                <col></col>
            </colgroup>
            <tbody>
                <tr>
                    <td>
                        <p><span><span>Policy Enforcement Point</span></span><br /><span><span>(PEP)</span></span></p>
                    </td>
                    <td>
                        <p><span><span>The PEP protects the “trust zones” that host enterprise Resources, and handles enabling, monitoring, and eventually terminating connections between Subjects and Resources.  You can think of the PEP as the dataplane that supports the Subject’s access to the Resources.</span></span></p>
                    </td>
                </tr>
                <tr>
                    <td>
                        <p><span><span>Policy Engine</span></span></p>
                        <p><span><span>(PE)</span></span></p>
                    </td>
                    <td>
                        <p><span><span>The PE handles the ultimate decision to grant, deny, or revoke access to a Resource for a given Subject, and calculates the trust scores/confidence levels and ultimate access decisions based on enterprise policy and information from supporting components. </span></span></p>
                    </td>
                </tr>
                <tr>
                    <td>
                        <p><span><span>Policy Administrator</span></span></p>
                        <p><span><span>(PA)</span></span></p>
                    </td>
                    <td>
                        <p><span><span>The PA executes the PE’s policy decision by sending commands to the PEP to establish and terminate the communications path between the Subject and the Resource.</span></span></p>
                    </td>
                </tr>
                <tr>
                    <td>
                        <p><span><span>Policy Decision Point (PDP)</span></span></p>
                    </td>
                    <td>
                        <p><span><span>The PDP is where the decision as to whether or not to permit a Subject to access a Resource is made.  The PIP included the Policy Engine (PE) and the Policy Administrator (PA).  You can think of the PDP as the control plane that controls the Subject’s access to the Resources.</span></span></p>
                    </td>
                </tr>
            </tbody>
        </table>
    </figure>
</div><p>The PDP operates on inputs from Policy Information Points (PIPs) which are supporting components that provide critical data and policy rules to the Policy Decision Point (PDP).</p><div>
    <figure>
        <table>
            <colgroup>
                <col></col>
                <col></col>
            </colgroup>
            <tbody>
                <tr>
                    <td>
                        <p><span><span>Policy Information Point</span></span></p>
                        <p><span><span>(PIP)</span></span></p>
                    </td>
                    <td>
                        <p><span><span>The PIPs provide various types of telemetry and other information needed for the PDP to make informed access decisions.  Some PIPs include:</span></span></p>
                        <ul>
                            <li><span><span>ICAM, or Identity, Credential, and Access Management, covering user authentication, single sign-on, user groups and access control features that are typically offered by Identity Providers (IdPs) like Okta, AzureAD or Ping Identity.  </span></span></li>
                            <li><span><span>Endpoint security includes endpoint detection and response (EDR) or endpoint protection platforms (EPP) that protect end user devices like laptops and mobile devices.  An EPP primarily focuses on preventing known threats using features like antivirus protection. Meanwhile, an EDR actively detects and responds to threats that may have already breached initial defenses using forensics, behavioral analysis and incident response tools. EDR and EPP products are offered by vendors like </span></span><a href="https://developers.cloudflare.com/cloudflare-one/identity/devices/service-providers/crowdstrike/"><span><span><u>CrowdStrike</u></span></span></a><span><span>, </span></span><a href="https://developers.cloudflare.com/cloudflare-one/identity/devices/service-providers/microsoft/"><span><span><u>Microsoft</u></span></span></a><span><span>, </span></span><a href="https://developers.cloudflare.com/cloudflare-one/identity/devices/service-providers/sentinelone/"><span><span><u>SentinelOne</u></span></span></a><span><span>, and </span></span><a href="https://developers.cloudflare.com/cloudflare-one/identity/devices/service-providers/"><span><span><u>more</u></span></span></a><span><span>. </span></span></li>
                            <li><span><span>Security Analytics and Data Security products use data collection, aggregation, and analysis to discover security threats using network traffic, user behavior, and other system data, such as, </span></span><a href="https://blog.cloudflare.com/customers-get-increased-integration-with-cloudflare-email-security-and-zero-trust/"><span><span><u>CrowdStrike</u></span></span></a><span><span>, </span></span><a href="https://developers.cloudflare.com/logs/get-started/enable-destinations/datadog/"><span><span><u>Datadog</u></span></span></a><span><span>, </span></span><a href="https://developers.cloudflare.com/logs/get-started/enable-destinations/ibm-qradar/"><span><span><u>IBM QRadar</u></span></span></a><span><span>, </span></span><a href="https://developers.cloudflare.com/analytics/analytics-integrations/sentinel/"><span><span><u>Microsoft Sentinel</u></span></span></a><span><span>, </span></span><a href="https://developers.cloudflare.com/logs/get-started/enable-destinations/new-relic/"><span><span><u>New Relic</u></span></span></a><span><span>, </span></span><a href="https://developers.cloudflare.com/logs/get-started/enable-destinations/splunk/"><span><span><u>Splunk</u></span></span></a><span><span>, and more.</span></span></li>
                        </ul>
                        <p> </p>
                        <p><span><span>NIST’s figure might suggest that supporting components in the PIP are mere plug-ins responding in real-time to the PDP.  However, for many vendors, the ICAM, EDR/EPP, security analytics, and data security PIPs often represent complex and distributed infrastructures.</span></span></p>
                    </td>
                </tr>
            </tbody>
        </table>
    </figure>
</div>
    <div>
      <h2>Crawl or run, but don’t walk</h2>
      <a href="#crawl-or-run-but-dont-walk">
        
      </a>
    </div>
    <p>Next, the <a href="https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.1800-35.pdf"><u>SP 1800-35</u></a> introduces two more detailed reference architectures, the “Crawl Phase” and the “Run Phase”.  The “Run Phase” corresponds to the reference architecture that is shown in the figure above.  The “Crawl Phase” is a simplified version of this reference architecture that only deals with protecting on-premise Resources, and omits cloud Resources. Both of these phases focused on Enhanced Identity Governance approaches to ZTA, as we defined above. <a href="https://www.nccoe.nist.gov/sites/default/files/2024-11/zta-nist-sp-1800-35-ipd.pdf"><u>NIST stated</u></a>, "<i>We are skipping the EIG walk phase and have proceeded directly to the run phase</i>".</p><p>The <a href="https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.1800-35.pdf"><u>SP 1800-35</u></a> then provides a sequence of detailed instructions, called “Builds”, that show how to implement “Crawl Phase” and “Run Phase” reference architectures using products sold by various vendors.</p><p>Since Cloudflare’s Zero Trust platform natively supports access to both cloud and on-premise resources, we will skip over the “Crawl Phase” and move directly to showing how Cloudflare’s Zero Trust platform can be used to support “Run Phase” of the reference architecture.</p>
    <div>
      <h2>A complete Zero Trust Architecture using Cloudflare and integrations</h2>
      <a href="#a-complete-zero-trust-architecture-using-cloudflare-and-integrations">
        
      </a>
    </div>
    <p>Nothing in NIST SP 1800-35 represents an endorsement of specific vendor technologies. Instead, the intent of the publication is to offer a general architecture that applies regardless of the technologies or vendors an organization chooses to deploy.   It also includes a series of “Builds” using a variety of technologies from different vendors, that allow organizations to achieve a ZTA.   This section describes how Cloudflare fits in with a ZTA, enabling you to accelerate your ZTA deployment from Crawl directly to Run.</p><p>Regarding the “Builds” in SP 1800-35, this section can be viewed as an aggregation of the following three specific builds:</p><ul><li><p><a href="https://pages.nist.gov/zero-trust-architecture/VolumeB/appendices/Appendix-E1B3.html#enterprise-1-build-3-e1b3-sdp-zscaler-zpa-ca-as-pe"><u>Enterprise 1 Build 3 (E1B3)</u></a>: <a href="https://www.cloudflare.com/learning/access-management/software-defined-perimeter/">Software-Defined Perimeter (SDP)</a> with Cloudflare as the Policy Engine (PE).</p></li><li><p><a href="https://pages.nist.gov/zero-trust-architecture/VolumeB/appendices/Appendix-E2B4.html#enterprise-2-build-4-e2b4-sdp-and-sase-symantec-cloud-secure-web-gateway-symantec-ztna-and-symantec-cloud-access-security-broker-as-pes"><u>Enterprise 2 Build 4 (E2B4)</u></a>: SDP and <a href="https://www.cloudflare.com/learning/access-management/what-is-sase/">Secure Access Service Edge (SASE) </a>with <a href="https://www.cloudflare.com/zero-trust/products/gateway/">Cloudflare Secure Web Gateway</a>, <a href="https://www.cloudflare.com/zero-trust/products/access/">Cloudflare Zero Trust Network Access (ZTNA)</a>, and Cloudflare Cloud Access Security Broker as PEs.</p></li><li><p><a href="https://pages.nist.gov/zero-trust-architecture/VolumeB/appendices/Appendix-E3B5.html#enterprise-3-build-5-e3b5-sdp-and-sase-microsoft-entra-conditional-access-formerly-called-azure-ad-conditional-access-and-microsoft-security-service-edge-as-pes"><u>Enterprise 3 Build 5 (E3B5)</u></a>: SDP and SASE with Microsoft Entra Conditional Access (formerly known as Azure AD Conditional Access) and Cloudflare Zero Trust as PEs.</p></li></ul><p>Now let’s see how we can map Cloudflare’s Zero Trust platform to the ZTA reference architecture:</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/677H4TOcuuJQuQF51jgP5S/4c21589a9c61571182241e2255308b08/image3.png" />
          </figure><p><sup><i>Figure 2: General ZTA Reference Architecture Mapped to Cloudflare Zero Trust &amp; Key Integrations. Source: NIST, </i></sup><a href="https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.1800-35.pdf"><sup><i><u>Special Publication 1800-35</u></i></sup></a><sup><i>, "Implementing a Zero Trust Architecture (ZTA)”, 2025, with modification by Cloudflare.</i></sup></p><p>Cloudflare’s platform simplifies complexity by delivering the PEP via our global anycast network and the PDP via our Software-as-a-Service (SaaS) management console, which also serves as a global unified control plane. A complete ZTA involves integrating Cloudflare with PIPs provided by other vendors, as shown in the figure above.</p><p>Now let’s look at several key points in the figure.</p><p>In the bottom right corner of the figure are Resources, which may reside on-premise, in private data centers, or across multiple cloud environments.  Resources are made securely accessible through Cloudflare’s global anycast network via <a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/"><u>Cloudflare Tunnel</u></a> (as shown in the figure) or <a href="https://developers.cloudflare.com/magic-wan/"><u>Magic WAN</u></a> (not shown). Resources are shielded from direct exposure to the public Internet by placing them behind <a href="https://www.cloudflare.com/en-au/zero-trust/products/access/"><u>Cloudflare Access</u></a> and <a href="https://www.cloudflare.com/en-au/zero-trust/products/gateway/"><u>Cloudflare Gateway</u></a>, which are PEPs that enforce zero-trust principles by granting access to Subjects that conform to policy requirements.</p><p>In the bottom left corner of the figure are Subjects, both human and non-human, that need access to Resources.  With Cloudflare’s platform, there are multiple ways that Subjects can again access to Resources, including:</p><ul><li><p>Agentless approaches that allow end users to access Resources directly from their <a href="https://developers.cloudflare.com/learning-paths/zero-trust-web-access/concepts/"><u>web browsers</u></a>. Alternatively, Cloudflare’s <a href="https://developers.cloudflare.com/magic-wan/"><u>Magic WAN</u></a> can be used to support connections from enterprise networks directly to Cloudflare’s global anycast network via <a href="https://developers.cloudflare.com/magic-wan/reference/tunnels/"><u>IPsec tunnels, GRE tunnels</u></a> or <a href="https://developers.cloudflare.com/magic-wan/network-interconnect/"><u>Cloudflare Network Interconnect (CNI)</u></a>.</p></li><li><p>Agent-based approaches use Cloudflare’s lightweight <a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-devices/warp/"><u>WARP client</u></a>, which protects corporate devices by securely and privately sending traffic to Cloudflare's global network.</p></li></ul><p>Now we move onto the PEP (the Policy Enforcement Point), which is the dataplane of our ZTA.   Cloudflare Access is a modern <a href="https://www.cloudflare.com/learning/access-management/what-is-ztna/">Zero Trust Network Access </a>solution that serves as a dynamic PEP, enforcing user-specific application access policies based on identity, device posture, context, and other factors.  Cloudflare Gateway is a Secure Web Gateway for filtering and inspecting traffic sent to the public Internet, serving as a dynamic PEP that provides DNS, HTTP and network traffic filtering, DNS resolver policies, and egress IP policies.</p><p>Both Cloudflare Access and Cloudflare Gateway rely on Cloudflare’s control plane, which acts as a PDP offering a policy engine (PE) and policy administrator (PA).  This PDP takes in inputs from PIPs provided by integrations with other vendors for ICAM, endpoint security, and security analytics.  Let’s dig into some of these integrations.</p><ul><li><p><b>ICAM: </b>Cloudflare’s control plane integrates with many ICAM providers that provide <a href="https://www.cloudflare.com/learning/access-management/what-is-sso/">Single Sign On (SSO</a>) and <a href="https://www.cloudflare.com/learning/access-management/what-is-multi-factor-authentication/">Multi-Factor Authentication (MFA)</a>. The ICAM provider authenticates human Subjects and passes information about authenticated users and groups back to Cloudflare’s control plane using <a href="https://www.cloudflare.com/learning/access-management/what-is-saml/"><u>Security Assertion Markup Language (SAML)</u></a> or <a href="https://openid.net/developers/how-connect-works/"><u>OpenID Connect (OIDC)</u></a> integrations.  Cloudflare’s ICAM integration also supports AI/ML powered <a href="https://blog.cloudflare.com/protect-against-identity-based-attacks-by-sharing-cloudflare-user-risk-with-okta/"><u>behavior-based user risk scoring</u></a>, exchange, and re-evaluation.

In the figure above, we depicted Okta as the ICAM provider, but Cloudflare supports many other ICAM vendors (e.g. <a href="https://developers.cloudflare.com/cloudflare-one/identity/idp-integration/entra-id/"><u>Microsoft Entra</u></a>, <a href="https://developers.cloudflare.com/cloudflare-one/identity/idp-integration/jumpcloud-saml/"><u>Jumpcloud</u></a>, <a href="https://blog.cloudflare.com/multi-sso-and-cloudflare-access-adding-linkedin-and-github-teams/"><u>GitHub SSO</u></a>, <a href="https://blog.cloudflare.com/cloudflare-ping/"><u>PingOne</u></a>).   For non-human Subjects — such as service accounts, Internet of Things (IoT) devices, or machine identities — authentication can be performed through <a href="https://developers.cloudflare.com/cloudflare-one/identity/devices/warp-client-checks/client-certificate/"><u>certificates</u></a>, <a href="https://developers.cloudflare.com/cloudflare-one/identity/service-tokens/"><u>service tokens</u></a>, or other cryptographic methods.</p></li><li><p><b>Endpoint security: </b>Cloudflare’s control plane integrates with many endpoint security providers to exchange signals, such as device posture checks and user risk levels. Cloudflare facilitates this through integrations with endpoint detection and response EDR/EPP solutions, such as <a href="https://developers.cloudflare.com/cloudflare-one/identity/devices/service-providers/crowdstrike/"><u>CrowdStrike</u></a>, <a href="https://developers.cloudflare.com/cloudflare-one/identity/devices/service-providers/microsoft/"><u>Microsoft</u></a>, <a href="https://developers.cloudflare.com/cloudflare-one/identity/devices/service-providers/sentinelone/"><u>SentinelOne</u></a>, and <a href="https://developers.cloudflare.com/cloudflare-one/identity/devices/service-providers/"><u>more</u></a>. When posture checks are enabled with one of these vendors such as Microsoft, device state changes, <a href="https://learn.microsoft.com/en-us/graph/api/resources/intune-devices-compliancestate?view=graph-rest-1.0"><u>'noncompliant'</u></a>, can be sent to Cloudflare Zero Trust, automatically restricting access to Resources. Additionally, Cloudflare Zero Trust enables the ability to synchronize the <a href="https://developers.cloudflare.com/cloudflare-one/tutorials/entra-id-risky-users/"><u>Microsoft Entra ID risky users list</u></a> and apply more stringent Zero Trust policies to users at higher risk. </p></li><li><p><b>Security Analytics: </b>Cloudflare’s control plane integrates with real-time logging and <a href="https://developers.cloudflare.com/cloudflare-one/insights/analytics/analytics-overview/"><u>analytics</u></a> for persistent monitoring.  Cloudflare's own <a href="https://developers.cloudflare.com/cloudflare-one/insights/analytics/analytics-overview/"><u>analytics</u></a> and <a href="https://developers.cloudflare.com/cloudflare-one/insights/logs/"><u>logging</u></a> features monitor access requests and security events. Optionally, these events can be sent to a Security Information and Event Management (SIEM)  solution such as, <a href="https://blog.cloudflare.com/customers-get-increased-integration-with-cloudflare-email-security-and-zero-trust/"><u>CrowdStrike</u></a>, <a href="https://developers.cloudflare.com/logs/get-started/enable-destinations/datadog/"><u>Datadog</u></a>, <a href="https://developers.cloudflare.com/logs/get-started/enable-destinations/ibm-qradar/"><u>IBM QRadar</u></a>, <a href="https://developers.cloudflare.com/analytics/analytics-integrations/sentinel/"><u>Microsoft Sentinel</u></a>, <a href="https://developers.cloudflare.com/logs/get-started/enable-destinations/new-relic/"><u>New Relic</u></a>, <a href="https://developers.cloudflare.com/logs/get-started/enable-destinations/splunk/"><u>Splunk</u></a>, and <a href="https://developers.cloudflare.com/logs/get-started/enable-destinations/"><u>more</u></a> using Cloudflare’s <a href="https://developers.cloudflare.com/logs/get-started/"><u>logpush</u></a> integration.

Cloudflare's user risk scoring system is built on the <a href="https://openid.net/specs/openid-sharedsignals-framework-1_0.html"><u>OpenID Shared Signals Framework (SSF) Specification</u></a>, which allows integration with existing and future providers that support this standard. SSF focuses on the exchange of <a href="https://www.rfc-editor.org/rfc/rfc8417.html"><u>Security Event Tokens (SETs)</u></a>, a specialized type of JSON Web Token (JWT). By using SETs, providers can share user risk information, creating a network of real-time, shared security intelligence. In the context of NIST’s Zero Trust Architecture, this system functions as a PIP, which is responsible for gathering information about the Subject and their context, such as risk scores, device posture, or threat intelligence. This information is then provided to the PDP, which evaluates access requests and determines the appropriate policy actions. The PEP uses these decisions to allow or deny access, completing the cycle of secure, dynamic access control.</p></li><li><p><b>Data security: </b>Cloudflare’s Zero Trust offering provides robust <a href="https://www.cloudflare.com/learning/cloud/what-is-dspm/">data security capabilities</a> across <a href="https://developers.cloudflare.com/reference-architecture/diagrams/security/securing-data-in-transit/"><u>data-in-transit</u></a>, <a href="https://developers.cloudflare.com/reference-architecture/diagrams/security/securing-data-in-use/"><u>data-in-use</u></a>, and <a href="https://developers.cloudflare.com/reference-architecture/diagrams/security/securing-data-at-rest/"><u>data-at-rest</u></a>. Its <a href="https://developers.cloudflare.com/cloudflare-one/policies/data-loss-prevention/"><u>Data Loss Prevention (DLP)</u></a> safeguards sensitive information in transit by inspecting and blocking unauthorized data movement. <a href="https://developers.cloudflare.com/cloudflare-one/policies/browser-isolation/"><u>Remote Browser Isolation (RBI)</u></a> protects data-in-use by preventing malware, phishing, and unauthorized exfiltration while enabling secure web access. Meanwhile, <a href="https://developers.cloudflare.com/cloudflare-one/applications/casb/"><u>Cloud Access Security Broker (CASB)</u></a> ensures data-at-rest security by enforcing granular controls over SaaS applications, preventing unauthorized access and data leakage. Together, these capabilities provide comprehensive protection for modern enterprises operating in a cloud-first environment.</p></li></ul><p>By leveraging Cloudflare's Zero Trust platform, enterprises can simplify and enhance their ZTA implementation, securing diverse environments and endpoints while ensuring scalability and ease of deployment. This approach ensures that all access requests—regardless of where the Subjects or Resources are located—adhere to robust security policies, reducing risks and improving compliance with modern security standards.</p>
    <div>
      <h2>Support for agencies and enterprises running towards Zero Trust Architecture</h2>
      <a href="#support-for-agencies-and-enterprises-running-towards-zero-trust-architecture">
        
      </a>
    </div>
    <p>Cloudflare works with multiple enterprises, and federal and state agencies that rely on NIST guidelines to secure their networks.  So we take a brief detour to describe some unique features of Cloudflare’s Zero Trust platform that we’ve found to be valuable to these enterprises.</p><ul><li><p><b>FedRAMP data centers.  </b>Many <a href="https://www.cloudflare.com/public-sector/">government agencies</a> and commercial enterprises have FedRAMP requirements, and Cloudflare is well-equipped to support them. <a href="https://www.cloudflare.com/learning/privacy/what-is-fedramp/">FedRAMPs requirements</a> sometimes require organizations <a href="https://fedscoop.com/decentralizing-digital-infrastructure-the-path-to-resilient-and-responsive-government-services/"><u>to self-host software</u></a> and services inside their own network perimeter, which can result in higher latency, degraded performance and increased cost.  At Cloudflare, we take a different approach. Organizations can still benefit from Cloudflare’s global network and unparalleled performance while remaining Fedramp compliant.  To support FedRAMP customers, Cloudflare’s dataplane (aka our PEP, or Policy Enforcement Point) consists of <a href="https://www.cloudflare.com/network"><u>data centers in over 330 cities</u></a> where customers can send their encrypted traffic, and 32 FedRAMP datacenters where traffic is sent to when sensitive dataplane operations are required (e.g. TLS inspection).  This architecture means that our customers do not need to self-host a PEP and incur the associated cost, latency, and performance degradation.</p></li><li><p><b>Post-quantum cryptography. </b>NIST has <a href="https://nvlpubs.nist.gov/nistpubs/ir/2024/NIST.IR.8547.ipd.pdf?cf_history_state=%7B%22guid%22%3A%22C255D9FF78CD46CDA4F76812EA68C350%22%2C%22historyId%22%3A8%2C%22targetId%22%3A%22FB69F839F2A2B930C3DFD855687A1E68%22%7D"><u>announced </u></a>that by 2030 all conventional cryptography (RSA and ECDSA) must be deprecated and upgraded to <a href="https://www.cloudflare.com/learning/ssl/quantum/what-is-post-quantum-cryptography/">post-quantum cryptography</a>.  But upgrading cryptography is hard and takes time, so Cloudflare aims to take on the burden of managing cryptography upgrades for our customers. That’s why organizations can tunnel their corporate network traffic though Cloudflare’s Zero Trust platform, protecting it against quantum adversaries without the hassle of individually upgrading each and every corporate application, system, or network connection. <a href="https://blog.cloudflare.com/post-quantum-zero-trust/"><u>End-to-end quantum safety</u></a> is available for communications from end-user devices, via web browser (today) or Cloudflare’s WARP device client (mid-2025), to secure applications connected with Cloudflare Tunnel.</p></li></ul>
    <div>
      <h2>Run towards Zero Trust Architecture with Cloudflare </h2>
      <a href="#run-towards-zero-trust-architecture-with-cloudflare">
        
      </a>
    </div>
    <p>NIST’s latest publication, SP 1800-35, provides a structured approach to <a href="https://www.cloudflare.com/learning/access-management/how-to-implement-zero-trust/">implementing Zero Trust</a>, emphasizing the importance of policy enforcement, continuous authentication, and secure access management. Cloudflare’s Zero Trust platform simplifies this complex framework by delivering a scalable, globally distributed solution that is <a href="https://www.cloudflare.com/trust-hub/compliance-resources/fedramp/">FedRAMP-compliant</a> and integrates with industry-leading providers like Okta, Microsoft, Ping, CrowdStrike, and SentinelOne to ensure comprehensive protection.</p><p>A key differentiator of Cloudflare’s Zero Trust solution is our global anycast network, one of the world’s largest and most interconnected networks. Spanning 330+ cities across 120+ countries, this network provides unparalleled performance, resilience, and scalability for enforcing Zero Trust policies without negatively impacting the end user experience. By leveraging Cloudflare’s network-level enforcement of security controls, organizations can ensure that <a href="https://www.cloudflare.com/learning/access-management/what-is-access-control/">access control</a>, data protection, and security analytics operate at the speed of the Internet — without backhauling traffic through centralized choke points. This architecture enables low-latency, highly available enforcement of security policies, allowing enterprises to seamlessly protect users, devices, and applications across on-prem, cloud, and hybrid environments.</p><p>Now is the time to take action. You can start implementing Zero Trust today by leveraging Cloudflare’s platform in alignment with NIST’s reference architecture. Whether you are beginning your Zero Trust journey or enhancing an existing framework, Cloudflare provides the tools, network, and integrations to help you succeed. <a href="https://developers.cloudflare.com/cloudflare-one/setup/"><u>Sign up for Cloudflare Zero Trust</u></a>, explore our integrations, and secure your organization with a modern, globally distributed approach to cybersecurity.</p> ]]></content:encoded>
            <category><![CDATA[Zero Trust]]></category>
            <category><![CDATA[Cloudflare Zero Trust]]></category>
            <category><![CDATA[Public Sector]]></category>
            <category><![CDATA[NIST]]></category>
            <category><![CDATA[Compliance]]></category>
            <category><![CDATA[Security]]></category>
            <guid isPermaLink="false">4Py1QO6TikGfaBeGSPBmFv</guid>
            <dc:creator>Aaron McAllister</dc:creator>
            <dc:creator>Sharon Goldberg</dc:creator>
        </item>
        <item>
            <title><![CDATA[RDP without the risk: Cloudflare's browser-based solution for secure third-party access]]></title>
            <link>https://blog.cloudflare.com/browser-based-rdp/</link>
            <pubDate>Fri, 21 Mar 2025 13:00:00 GMT</pubDate>
            <description><![CDATA[ Cloudflare now provides clientless, browser-based support for the Remote Desktop Protocol (RDP). It enables secure, remote Windows server access without VPNs or RDP clients. ]]></description>
            <content:encoded><![CDATA[ <p><a href="https://blog.cloudflare.com/intro-access-for-infrastructure-ssh/"><u>Short-lived SSH access</u></a> made its debut on Cloudflare’s <a href="https://www.cloudflare.com/learning/access-management/what-is-sase"><u>SASE</u></a> platform in October 2024. Leveraging the knowledge gained through the <a href="https://blog.cloudflare.com/cloudflare-acquires-bastionzero/"><u>BastionZero acquisition</u></a>, short-lived SSH access enables organizations to apply <a href="https://www.cloudflare.com/learning/security/glossary/what-is-zero-trust/">Zero Trust</a> controls in front of their Linux servers. That was just the beginning, however, as we are thrilled to announce the release of a long-requested feature: clientless, browser-based support for the <a href="https://www.cloudflare.com/learning/access-management/what-is-the-remote-desktop-protocol/"><u>Remote Desktop Protocol</u></a> (RDP). Built on top of Cloudflare’s modern proxy architecture, our RDP proxy offers a secure and performant solution that, critically, is also easy to set up, maintain, and use.</p>
    <div>
      <h3>Security challenges of RDP </h3>
      <a href="#security-challenges-of-rdp">
        
      </a>
    </div>
    <p><a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/use-cases/rdp/"><u>Remote Desktop Protocol (RDP)</u></a> was born in 1998 with <a href="https://news.microsoft.com/1998/06/16/microsoft-releases-windows-nt-server-4-0-terminal-server-edition/"><u>Windows NT 4.0 Terminal Server Edition</u></a>. If you have never heard of that Windows version, it’s because, well, there’s been 16 major Windows releases since then. Regardless, RDP is still used across thousands of organizations to enable remote access to Windows servers. It’s a bit of a strange protocol that relies on a graphical user interface to display screen captures taken in very close succession in order to emulate the interactions on the remote Windows server. (There’s more happening here beyond the screen captures, including drawing commands, bitmap updates, and even video streams. Like we said — it’s a bit strange.) Because of this complexity, RDP can be computationally demanding and poses a challenge for running at high performance over traditional <a href="https://www.cloudflare.com/learning/access-management/what-is-a-vpn/">VPNs</a>.</p><p>Beyond its quirks, RDP has also had a rather <a href="https://www.cloudflare.com/learning/access-management/rdp-security-risks/"><u>unsavory reputation</u></a> in the security industry due to early vulnerabilities with the protocol. The two main offenders are weak user sign-in credentials and unrestricted port access. Windows servers are commonly protected by passwords, which often have inadequate security to start, and worse still, may be shared across multiple accounts. This leaves these RDP servers open to brute force or credential stuffing attacks. </p><p>Bad actors have abused RDP’s default port, 3389, to carry out on-path attacks. One of the most severe RDP vulnerabilities discovered is called BlueKeep. Officially known as <a href="https://nvd.nist.gov/vuln/detail/CVE-2019-0708"><i>CVE-2019-0708</i></a>, BlueKeep is a vulnerability that allows <a href="https://www.cloudflare.com/learning/security/what-is-remote-code-execution/">remote code execution (RCE) </a>without authentication, as long as the request adheres to a specific format and is sent to a port running RDP. Worse still, it is wormable, meaning that BlueKeep can spread to other machines within the network with no user action. Because bad actors can compromise RDP to gain unauthorized access, attackers can then <a href="https://www.cloudflare.com/learning/security/glossary/what-is-lateral-movement/">move laterally</a> within the network, escalating privileges, and installing <a href="https://www.cloudflare.com/learning/ddos/glossary/malware/">malware</a>. RDP has also been used to deploy <a href="https://www.cloudflare.com/learning/security/ransomware/what-is-ransomware/">ransomware</a> such as Ryuk, Conti, and DoppelPaymer, earning it the nickname “Ransomware Delivery Protocol.” </p><p>This is a subset of vulnerabilities in RDP’s history, but we don’t mean to be discouraging. Thankfully, due to newer versions of Windows, CVE patches, improved password hygiene, and better awareness of privileged access, many organizations have reduced their <a href="https://www.cloudflare.com/learning/security/what-is-an-attack-surface/">attack surface</a>. However, for as many secured Windows servers that exist, there are still countless unpatched or poorly configured systems online, making them easy targets for ransomware and botnets. </p>
    <div>
      <h3>The need for a browser-based RDP solution</h3>
      <a href="#the-need-for-a-browser-based-rdp-solution">
        
      </a>
    </div>
    <p>Despite its <a href="https://www.cloudflare.com/learning/access-management/rdp-security-risks/">security risks</a>, RDP remains essential for many organizations, particularly those with distributed workforces and third-party contractors. It provides value for compute-intensive tasks that require high-powered Windows servers with CPU/GPU resources greater than users’ machines can offer. For security-focused organizations, RDP grants better visibility into who is accessing Windows servers and what actions are taken during those sessions. </p><p>Because issuing corporate devices to contractors is costly and cumbersome, many organizations adopt a bring-your-own-device (BYOD) policy. This decision instead requires organizations to provide contractors with a means to RDP to a Windows server with the necessary corporate resources to fulfill their role.</p><p>Traditional RDP requires client software on user devices, so this is not an appropriate solution for contractors (or any employees) using personal machines or unmanaged devices. Previously, Cloudflare customers had to rely on self-hosted third-party tools like <a href="https://guacamole.apache.org/"><u>Apache Guacamole</u></a> or <a href="https://devolutions.net/gateway/"><u>Devolutions Gateway</u></a> to enable browser-based RDP access. This created several operational pain points:</p><ul><li><p><b>Infrastructure complexity:</b> Deploying and maintaining RDP gateways increases operational overhead.</p></li><li><p><b>Maintenance burden:</b> Commercial and open-source tools may require frequent updates and patches, sometimes even necessitating custom forks.</p></li><li><p><b>Compliance challenges:</b> Third-party software requires additional security audits and risk management assessments, particularly for regulated industries.</p></li><li><p><b>Redundancy, but not the good kind</b> - Customers come to Cloudflare to reduce the complexity of maintaining their infrastructure, <i>not add to it</i>.</p></li></ul><p>We’ve been listening. Cloudflare has architectured a high-performance RDP proxy that leverages the modern security controls already part of our <a href="https://www.cloudflare.com/learning/access-management/what-is-ztna/"><u>Zero Trust Network Access (ZTNA)</u></a> service. We feel that the “security/performance tradeoff” the industry commonly touts is a dated mindset. With the right underlying network architecture, we can help mitigate RDP’s most infamous challenges.</p>
    <div>
      <h3>Introducing browser-based RDP with Access</h3>
      <a href="#introducing-browser-based-rdp-with-access">
        
      </a>
    </div>
    <p>Cloudflare's browser-based RDP solution is the newest addition to <a href="https://www.cloudflare.com/zero-trust/products/access/"><u>Cloudflare Access</u></a> alongside existing <a href="https://developers.cloudflare.com/cloudflare-one/applications/non-http/browser-rendering/"><u>clientless SSH and VNC offerings</u></a>, enabling secure, remote Windows server access without VPNs or RDP clients. Built natively within Cloudflare’s global network, it requires no additional infrastructure.</p><p>Our browser-based RDP access combines the power of self-hosted Access applications with the additional flexibility of <a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/use-cases/ssh/ssh-infrastructure-access/#4-add-a-target">targets</a>, introduced with <a href="https://developers.cloudflare.com/cloudflare-one/applications/non-http/infrastructure-apps/"><u>Access for Infrastructure</u></a>. Administrators can enforce:</p><ul><li><p><b>Authentication</b>: Control how users authenticate to your internal RDP resources with <a href="https://www.cloudflare.com/learning/access-management/what-is-sso/">SSO</a>, <a href="https://www.cloudflare.com/learning/access-management/what-is-multi-factor-authentication/">MFA</a>, and device posture.</p></li><li><p><b>Authorization:</b> Use <a href="https://www.cloudflare.com/learning/access-management/what-is-access-control/">policy-based access control </a>to determine who can access what target and when. </p></li><li><p><b>Auditing:</b> Provide Access logs to support regulatory compliance and visibility in the event of a security breach.</p></li></ul><p>Users only need a web browser — no native RDP client is necessary! RDP servers are accessed through our app connector, <a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/"><u>Cloudflare Tunnel</u></a>, using a common deployment model of existing Access customers. There is no need to provision user devices to access particular RDP servers, making for minimal setup to adopt this new functionality.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/6vAxzxVY1RXc0batsTEdfn/23322d79ac68cfa0da698bdb2113db2c/unnamed__4_.png" />
          </figure>
    <div>
      <h4>How it works</h4>
      <a href="#how-it-works">
        
      </a>
    </div>
    
    <div>
      <h5>The client</h5>
      <a href="#the-client">
        
      </a>
    </div>
    <p>Cloudflare’s implementation leverages <a href="https://github.com/Devolutions/IronRDP"><u>IronRDP</u></a>, a high-performance RDP client that runs in the browser. It was selected because it is a modern, well-maintained, RDP client implementation that offers an efficient and responsive experience. Unlike Java-based Apache Guacamole, another popular RDP client implementation, IronRDP is built with Rust and integrates very well with Cloudflare’s development ecosystem.</p><p>While selecting the right tools can make all the difference, using a browser to facilitate an RDP session faces some challenges. From a practical perspective, browsers just can't send RDP messages. RDP relies directly on the Layer 4 Transmission Control Protocol (TCP) for communication, and while browsers can use TCP as the underlying protocol, they do not expose APIs that would let apps build protocol support directly on raw TCP sockets.</p><p>Another challenge is rooted in a security consideration: the username and password authentication mechanism that is native to RDP leaves a lot to be desired in the modern world of Zero Trust.</p><p>In order to tackle both of these challenges, the IronRDP client encapsulates the RDP session in a WebSocket connection. Wrapping the Layer 4 TCP traffic in HTTPS enables the client to use native browser APIs to communicate with Cloudflare’s RDP proxy. Additionally, it enables Cloudflare Access to secure the entire session using identity-aware policies. By attaching a Cloudflare Access authorization JSON Web Token (JWT) via cookie to the WebSocket connection, every inter-service hop of the RDP session is verified to be coming from the authenticated user.  </p><p>A brief aside into how security and performance is optimized: in conventional client-based RDP traffic, the client and server negotiate a <a href="https://www.cloudflare.com/learning/ssl/transport-layer-security-tls/">TLS</a> connection to secure and verify the session. However, because the browser WebSocket connection is already secured with TLS to Cloudflare, we employ IronRDP’s RDCleanPath protocol extension to eliminate this second encapsulation of traffic. Removing this redundancy avoids unnecessary performance degradation and increased complexity during session handshakes.</p>
    <div>
      <h5>The server</h5>
      <a href="#the-server">
        
      </a>
    </div>
    <p>The IronRDP client initiates a WebSocket connection to a dedicated WebSocket proxy, which is responsible for authenticating the client, terminating the WebSocket connection, and proxying tunneled RDP traffic deeper into Cloudflare’s infrastructure to facilitate connectivity. The seemingly simple task of determining how this WebSocket proxy should be built turned out to be the most challenging<b> </b>decision in the development process. </p><p>Our initial proposal was to develop a new service that would run on every server within our network. While this was feasible, operating a new service would introduce a non-trivial maintenance burden, which ultimately turned out to be more overhead than value-add in this case. The next proposal was to build it into <a href="https://blog.cloudflare.com/upgrading-one-of-the-oldest-components-in-cloudflare-software-stack/"><u>Front Line</u></a> (FL), one of Cloudflare’s oldest services that is responsible for handling tens of millions of HTTP requests per second. This approach would have sidestepped the need to expose new IP addresses and benefitted from the existing scaffolding to let the team move quickly. Despite being promising at first, this approach was decided against because FL is undergoing significant investment, and the team didn't want to build on shifting sands.</p><p>Finally, we identified a solution that implements the proxy service using <a href="https://workers.cloudflare.com/"><u>Cloudflare Workers</u></a>! Fortunately, Workers automatically scales to massive request rates, which eliminates some of the groundwork we’d lay if we had chosen to build a new service. Candidly, this approach was not initially preferred due to some ambiguities around how Workers communicates with internal Cloudflare services, but with support from the Workers team, we found a path forward. </p><p>From the WebSocket proxy Worker, the tunneled RDP connection is sent to the Apollo service, which is responsible for routing traffic between on-ramps and off-ramps for <a href="https://www.cloudflare.com/zero-trust/">Cloudflare Zero Trust</a>. Apollo centralizes and abstracts these complexities to let other services focus on application-specific functionality. Apollo determines which Cloudflare colo is closest to the target Cloudflare Tunnel and establishes a connection to an identical Apollo instance running in that colo. The egressing Apollo instance can then facilitate the final connection to the Cloudflare Tunnel. By using Cloudflare's global network to traverse the distance between the ingress colo and the target Cloudflare Tunnel, network disruptions and congestion is managed.</p><p>Apollo connects to the RDP server and passes the ingress and egress connections to <a href="https://blog.cloudflare.com/from-ip-packets-to-http-the-many-faces-of-our-oxy-framework/"><u>Oxy</u></a>-teams, the service responsible for inspecting and proxying the RDP traffic. It functions as a pass-through (strictly enabling traffic connectivity) as the web client authenticates to the RDP server. Our initial release makes use of <a href="https://learn.microsoft.com/en-us/windows-server/security/kerberos/ntlm-overview"><u>NT Lan Manager (NTLM)</u></a> authentication, a challenge-response authentication protocol requiring username and password entry. Once the client has authenticated with the server, Oxy-teams is able to proxy all subsequent RDP traffic!</p><p>This may sound like a lot of hops, but every server in our network runs every service. So believe it or not, this complex dance takes place on a single server and by using UNIX domain sockets for communication, we also minimize any performance impact. If any of these servers become overloaded, experience a network fault, or have a hardware problem, the load is automatically shifted to a neighboring server with the help of <a href="https://blog.cloudflare.com/unimog-cloudflares-edge-load-balancer/"><u>Unimog</u></a>, Cloudflare’s L4 load balancer.</p>
    <div>
      <h4>Putting it all together</h4>
      <a href="#putting-it-all-together">
        
      </a>
    </div>
    <ol><li><p><b>User initiation:</b> The user selects an RDP server from Cloudflare’s <a href="https://developers.cloudflare.com/cloudflare-one/applications/app-launcher/"><u>App Launcher</u></a> (or accesses it via a direct URL). Each RDP server is associated with a public hostname secured by Cloudflare. </p></li><li><p><b>Ingress:</b> This request is received by the closest data center within <a href="https://www.cloudflare.com/network/"><u>Cloudflare’s network</u></a>. </p></li><li><p><b>Authentication:</b> Cloudflare Access authenticates the session by validating that the request contains a valid JWT. This token certifies that the user is authorized to access the selected RDP server through the specified domain.</p></li><li><p><b>Web client delivery:</b> <a href="https://developers.cloudflare.com/workers/"><u>Cloudflare Workers</u></a> serves the IronRDP web client to the user’s browser.</p></li><li><p><b>Secure tunneling:</b> The client tunnels RDP traffic from the user’s browser over a TLS-secured WebSocket to another Cloudflare Worker. </p></li><li><p><b>Traffic routing:</b> The Worker that receives the IronRDP connection terminates the WebSocket and initiates a connection to <a href="https://blog.cloudflare.com/extending-local-traffic-management-load-balancing-to-layer-4-with-spectrum/#how-we-enabled-spectrum-to-support-private-networks"><u>Apollo</u></a>. From there, Apollo creates a connection to the RDP server.</p></li><li><p><b>Authentication relay:</b> With a connection established, Apollo relays RDP authentication messages between the web client and the RDP server. </p></li><li><p><b>Connection establishment:</b> Upon successful authentication, Cloudflare serves as an RDP proxy between the web browser and the RDP server, connecting the user to the RDP server with free-flowing traffic. </p></li><li><p><b>Policy enforcement:</b> Cloudflare's secure web gateway, <a href="https://blog.cloudflare.com/from-ip-packets-to-http-the-many-faces-of-our-oxy-framework/"><u>Oxy</u></a>-teams, applies Layer 4 policy enforcement and logging of the RDP traffic. </p></li></ol>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/2wWryOYY69cHw5cDmQHAqi/cb40a492b1e194cd572018eb4a5792ba/3.png" />
          </figure><p>Key benefits of this architecture:</p><ul><li><p><b>No additional software:</b> Access Windows servers directly from a browser.</p></li><li><p><b>Low latency:</b> Cloudflare’s global network minimizes performance overhead.</p></li><li><p><b>Enhanced security:</b> RDP access is protected by Access policies, preventing lateral movement.</p></li><li><p><b>Integrated logging and monitoring:</b> Administrators can observe and control RDP traffic.</p></li></ul><p>To learn more about Cloudflare's proxy capabilities, take a look at our <a href="https://blog.cloudflare.com/introducing-oxy/"><u>related blog post</u></a> explaining our proxy framework.</p>
    <div>
      <h3>Selective, modern RDP authentication</h3>
      <a href="#selective-modern-rdp-authentication">
        
      </a>
    </div>
    <p>Cloudflare’s browser-based RDP solution exclusively supports modern RDP authentication mechanisms, enforcing best practices for secure access. Our architecture ensures that RDP traffic using outdated or weak legacy security features from older versions of the RDP standard, such as unsecured password-based authentication or RC4 encryption, are never allowed to reach customer endpoints.</p><p>Cloudflare supports secure session negotiation using the following principles:</p><ol><li><p>TLS-based WebSocket connection for transport security.</p></li><li><p>Fine-grained policies that enforce single sign on (SSO), multi-factor authentication (MFA), and dynamic authorization.</p></li><li><p>Integration with enterprise identity providers via SAML (Security Assertion Markup Language) and OIDC (OpenID Connect).</p></li></ol><p>Every RDP session that passes through Cloudflare’s network is encrypted and authenticated.</p>
    <div>
      <h4>What’s next? </h4>
      <a href="#whats-next">
        
      </a>
    </div>
    <p>This is only the beginning for our browser-based RDP solution! We have already identified a few areas for continued focus:</p><ul><li><p><b>Enhanced visibility and control for administrators:</b> Because RDP traffic passes through Cloudflare Workers and proxy services, browser-based RDP will expand to include session monitoring. We are also evaluating <a href="https://www.cloudflare.com/learning/access-management/what-is-dlp/">data loss prevention (DLP) </a>support, such as restricting actions like file transfers and clipboard use, to prevent unauthorized <a href="https://www.cloudflare.com/learning/security/what-is-data-exfiltration/">data exfiltration</a> without compromising performance. </p></li><li><p><b>Advanced authentication:</b> Long-lived credentials are a thing of the past. Future iterations of browser-based RDP will include <a href="https://www.cloudflare.com/learning/security/threats/what-is-passwordless-authentication/">passwordless</a> functionality, eliminating the need for end users to remember passwords and administrators from having to manage them. To that end, we are evaluating methods such as client certificate authentication, passkeys and smart cards, and integration with third-party authentication providers via Access.</p></li></ul>
    <div>
      <h5>Compliance and FedRAMP High certification</h5>
      <a href="#compliance-and-fedramp-high-certification">
        
      </a>
    </div>
    <p>We plan to include browser-based RDP in our <a href="https://www.cloudflare.com/learning/privacy/what-is-fedramp/">FedRAMP</a> High offering for enterprise and government organizations, a high-priority initiative <a href="https://blog.cloudflare.com/cloudflares-commitment-to-advancing-public-sector-security-worldwide/"><u>we announced in early February</u></a>. This certification will validate that our solution meets the highest standards for:</p><ul><li><p><b>Data protection</b></p></li><li><p><b>Identity and access management</b></p></li><li><p><b>Continuous monitoring</b></p></li><li><p><b>Incident response</b></p></li></ul><p>Seeking FedRAMP High compliance demonstrates Cloudflare’s commitment to securing sensitive environments, such as those in the <a href="https://www.cloudflare.com/public-sector/">federal government</a>, <a href="https://www.cloudflare.com/healthcare/">healthcare</a>, and <a href="https://www.cloudflare.com/banking-and-financial-services/">financial</a> sectors.</p><p>By enforcing a modern, opinionated, and secure implementation of RDP, Cloudflare provides a secure, scalable, and compliant solution tailored to the needs of organizations with critical security and compliance mandates.</p>
    <div>
      <h3>Get started today</h3>
      <a href="#get-started-today">
        
      </a>
    </div>
    <p>At Cloudflare, we are committed to providing the most comprehensive solution for ZTNA, which now also includes privileged access to sensitive infrastructure like Windows servers over browser-based RDP. Cloudflare’s browser-based RDP solution is in closed beta with new customers being onboarded each week. You can <a href="http://www.cloudflare.com/lp/browser-based-rdp-beta"><u>request access here</u></a> to try out this exciting new feature.</p><p>In the meantime, check out our<a href="https://developers.cloudflare.com/cloudflare-one/applications/non-http/infrastructure-apps/"> <u>Access for Infrastructure</u></a> documentation to learn more about how Cloudflare protects privileged access to sensitive infrastructure. Access for Infrastructure is currently <a href="https://dash.cloudflare.com/sign-up/teams"><u>available free</u></a> to teams of under 50 users, and at no extra cost to existing pay-as-you-go and Contract plan customers through an Access or Zero Trust subscription. Stay tuned as we continue to natively rebuild BastionZero’s technology into Cloudflare’s Access for Infrastructure service!</p> ]]></content:encoded>
            <category><![CDATA[Security Week]]></category>
            <category><![CDATA[Zero Trust]]></category>
            <category><![CDATA[Cloudflare Zero Trust]]></category>
            <category><![CDATA[Acquisitions]]></category>
            <category><![CDATA[Cloudflare Access]]></category>
            <category><![CDATA[Cloudflare One]]></category>
            <category><![CDATA[Clientless]]></category>
            <category><![CDATA[Remote Work]]></category>
            <category><![CDATA[VDI]]></category>
            <category><![CDATA[Remote Desktop Protocol ]]></category>
            <guid isPermaLink="false">2P5rqqGRcQQFywmNmp85oM</guid>
            <dc:creator>Ann Ming Samborski</dc:creator>
            <dc:creator>Gabriel Bauman</dc:creator>
            <dc:creator>Athanasios Filippidis</dc:creator>
            <dc:creator>Mike Borkenstein</dc:creator>
        </item>
        <item>
            <title><![CDATA[Introducing Cloudy, Cloudflare’s AI agent for simplifying complex configurations]]></title>
            <link>https://blog.cloudflare.com/introducing-ai-agent/</link>
            <pubDate>Thu, 20 Mar 2025 13:10:00 GMT</pubDate>
            <description><![CDATA[ Cloudflare’s first AI agent, Cloudy, helps make complicated configurations easy to understand for Cloudflare administrators. ]]></description>
            <content:encoded><![CDATA[ <p>It’s a big day here at Cloudflare! Not only is it Security Week, but today marks Cloudflare’s first step into a completely new area of functionality, intended to improve how our users both interact with, and get value from, all of our products.</p><p>We’re excited to share a first glance of how we’re embedding <a href="https://www.cloudflare.com/learning/ai/what-is-artificial-intelligence/">AI</a> features into the management of Cloudflare products you know and love. Our first mission? Focus on security and streamline the rule and policy management experience. The goal is to automate away the time-consuming task of manually reviewing and contextualizing Custom Rules in <a href="https://www.cloudflare.com/application-services/products/waf/">Cloudflare WAF</a>, and Gateway policies in Cloudflare One, so you can instantly understand what each policy does, what gaps they have, and what you need to do to fix them.</p>
    <div>
      <h3>Meet Cloudy, Cloudflare’s first AI agent</h3>
      <a href="#meet-cloudy-cloudflares-first-ai-agent">
        
      </a>
    </div>
    <p>Our initial step toward a fully AI-enabled product experience is the introduction of <i>Cloudy</i>, the first version of Cloudflare AI agents, assistant-like functionality designed to help users quickly understand and improve their Cloudflare configurations in multiple areas of the product suite. You’ll start to see Cloudy functionality seamlessly embedded into two Cloudflare products across the dashboard, which we’ll talk about below.</p><p>And while the name <i>Cloudy</i> may be fun and light-hearted, our goals are more serious: Bring Cloudy and AI-powered functionality to every corner of Cloudflare, and optimize how our users operate and manage their favorite Cloudflare products. Let’s start with two places where Cloudy is now live and available to all customers using the WAF and Gateway products.</p>
    <div>
      <h3>WAF Custom Rules</h3>
      <a href="#waf-custom-rules">
        
      </a>
    </div>
    <p>Let’s begin with AI-powered overviews of <a href="https://developers.cloudflare.com/waf/custom-rules/"><u>WAF Custom Rules</u></a>. For those unfamiliar, Cloudflare’s Web Application Firewall (WAF) helps protect web applications from attacks like <a href="https://www.cloudflare.com/learning/security/threats/sql-injection/">SQL injection</a>, <a href="https://www.cloudflare.com/learning/security/threats/cross-site-scripting/">cross-site scripting (XSS)</a>, and other vulnerabilities. </p><p>One specific feature of the WAF is the ability to create WAF Custom Rules. These allow users to tailor security policies to block, challenge, or allow traffic based on specific attributes or security criteria.</p><p>However, for customers with dozens or even hundreds of rules deployed across their organization, it can be challenging to maintain a clear understanding of their security posture. Rule configurations evolve over time, often managed by different team members, leading to potential inefficiencies and security gaps. What better problem for Cloudy to solve?</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4zcFRfhRWGQWhoza9TolDu/25e1357540db32e59150609e6eddd1e0/BLOG-2692_2.png" />
          </figure><p>Powered by <a href="https://developers.cloudflare.com/workers-ai/"><u>Workers AI</u></a>, today we’ll share how Cloudy will help review your WAF Custom Rules and provide a summary of what's configured across them. Cloudy will also help you identify and solve issues such as:</p><ul><li><p><b>Identifying redundant rules</b>: Identify when multiple rules are performing the same function, or using similar fields, helping you streamline your configuration.</p></li><li><p><b>Optimising execution order</b>: Spot cases where rules ordering affects functionality, such as when a terminating rule (block/challenge action) prevents subsequent rules from executing.</p></li><li><p><b>Analysing conflicting rules</b>: Detect when rules counteract each other, such as one rule blocking traffic that another rule is designed to allow or log.</p></li><li><p><b>Identifying disabled rules</b>: Highlight potentially important security rules that are in a disabled state, helping ensure that critical protections are not accidentally left inactive.</p></li></ul><p>Cloudy won't just summarize your rules, either. It will analyze the relationships and interactions between rules to provide actionable recommendations. For security teams managing complex sets of Custom Rules, this means less time spent auditing configurations and more confidence in your security coverage.</p><p>Available to all users, we’re excited to show how Cloudflare AI Agents can enhance the usability of our products, starting with WAF Custom Rules. But this is just the beginning.</p>
    <div>
      <h3>Cloudflare One Firewall policies</h3>
      <a href="#cloudflare-one-firewall-policies">
        
      </a>
    </div>
    
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4CXHQVlO3GGqwp6DGyOklJ/3068c434c4a303cf22c328c302947fcb/BLOG-2692_3.png" />
          </figure><p>We've also added Cloudy to <a href="https://www.cloudflare.com/static/e9ea5dfaa69c554cc1cbaa7f3e441acf/Cloudflare_One_at_a_glance.pdf"><u>Cloudflare One</u></a>, our SASE platform, where enterprises manage the security of their employees and tools from a single dashboard.</p><p>In <a href="https://www.cloudflare.com/zero-trust/products/gateway/"><u>Cloudflare Gateway</u></a>, our Secure Web Gateway offering, customers can configure policies to manage how employees do their jobs on the Internet. These Gateway policies can block access to malicious sites, prevent data loss violations, and control user access, among other things.</p><p>But similar to WAF Custom Rules, Gateway policy configurations can become overcomplicated and bogged down over time, with old, forgotten policies that do who-knows-what. Multiple selectors and operators working in counterintuitive ways. Some blocking traffic, others allowing it. Policies that include several user groups, but carve out specific employees. We’ve even seen policies that block hundreds of URLs in a single step. All to say, managing years of Gateway policies can become overwhelming.</p><p>So, why not have Cloudy summarize Gateway policies in a way that makes their purpose clear and concise?</p><p>Available to all Cloudflare Gateway users (create a free Cloudflare One account <a href="https://www.cloudflare.com/zero-trust/products/"><u>here</u></a>), Cloudy will now provide a quick summary of any Gateway policy you view. It’s now easier than ever to get a clear understanding of each policy at a glance, allowing admins to spot misconfigurations, redundant controls, or other areas for improvement, and move on with confidence.</p>
    <div>
      <h3>Built on Workers AI</h3>
      <a href="#built-on-workers-ai">
        
      </a>
    </div>
    <p>At the heart of our new functionality is <a href="https://www.cloudflare.com/developer-platform/products/workers-ai/"><u>Cloudflare Workers AI</u></a> (yes, the same version that everyone uses!) that leverages advanced <a href="https://www.cloudflare.com/learning/ai/what-is-large-language-model/">large language models (LLMs) </a>to process vast amounts of information; in this case, policy and rules data. Traditionally, manually reviewing and contextualizing complex configurations is a daunting task for any security team. With Workers AI, we automate that process, turning raw configuration data into consistent, clear summaries and actionable recommendations.</p>
    <div>
      <h4><b>How it works</b></h4>
      <a href="#how-it-works">
        
      </a>
    </div>
    <p>Cloudflare Workers AI ingests policy and rule configurations from your Cloudflare setup and combines them with a purpose-built LLM prompt. We leverage the same <a href="https://developers.cloudflare.com/workers-ai/models/"><u>publicly-available LLM models</u></a> that we offer our customers, and then further enrich the prompt with some additional data to provide it with context. For this specific task of analyzing and summarizing policy and rule data, we provided the LLM:</p><ul><li><p><b>Policy &amp; rule data</b>: This is the primary data itself, including the current configuration of policies/rules for Cloudy to summarize and provide suggestions against.</p></li><li><p><b>Documentation on product abilities:</b> We provide the model with additional technical details on the policy/rule configurations that are possible with each product, so that the model knows what kind of recommendations are within its bounds.</p></li><li><p><b>Enriched datasets</b>: Where WAF Custom Rules or CF1 Gateway policies leverage other ‘lists’ (e.g., a WAF rule referencing multiple countries, a Gateway policy leveraging a specific content category), the list item(s) selected must be first translated from an ID to plain-text wording so that the LLM can interpret which policy/rule values are actually being used.</p></li><li><p><b>Output instructions</b>: We specify to the model which format we’d like to receive the output in. In this case, we use JSON for easiest handling.</p></li><li><p><b>Additional clarifications</b>: Lastly, we explicitly instruct the LLM to be sure about its output, valuing that aspect above all else. Doing this helps us ensure that no hallucinations make it to the final output.</p></li></ul><p>By automating the analysis of your WAF Custom Rules and Gateway policies, Cloudflare Workers AI not only saves you time but also enhances security by reducing the risk of human error. You get clear, actionable insights that allow you to streamline your configurations, quickly spot anomalies, and maintain a strong security posture—all without the need for labor-intensive manual reviews.</p>
    <div>
      <h4>What’s next for Cloudy</h4>
      <a href="#whats-next-for-cloudy">
        
      </a>
    </div>
    <p>Beta previews of Cloudy are live for all Cloudflare customers today. But this is just the beginning of what we envision for AI-powered functionality across our entire product suite.</p><p>Throughout the rest of 2025, we plan to roll out additional <a href="https://www.cloudflare.com/learning/ai/what-is-agentic-ai/">AI agent capabilities</a> across other areas of Cloudflare. These new features won’t just help customers manage security more efficiently, but they’ll also provide intelligent recommendations for optimizing performance, streamlining operations, and enhancing overall user experience.</p><p>We’re excited to hear your thoughts as you get to meet Cloudy and try out these new AI features – send feedback to us at <a><u>cloudyfeedback@cloudflare.com</u></a>, or post your thoughts on X, LinkedIn, or Mastodon tagged with #SecurityWeek! Your feedback will help shape our roadmap for AI enhancement, and bring our users smarter, more efficient tooling that helps everyone get more secure.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/5gGseiyO6pbddpdSVQ5wfJ/ae1d0d5a2f8ec01f571de7a85b655370/BLOG-2692_4.png" />
          </figure>
    <div>
      <h3>Watch on Cloudflare TV</h3>
      <a href="#watch-on-cloudflare-tv">
        
      </a>
    </div>
    <div>
  
</div><p></p> ]]></content:encoded>
            <category><![CDATA[Workers AI]]></category>
            <category><![CDATA[Cloudflare Workers]]></category>
            <category><![CDATA[Developer Platform]]></category>
            <category><![CDATA[Developers]]></category>
            <category><![CDATA[LLM]]></category>
            <category><![CDATA[WAF]]></category>
            <category><![CDATA[Cloudflare One]]></category>
            <category><![CDATA[Zero Trust]]></category>
            <category><![CDATA[Cloudflare Zero Trust]]></category>
            <category><![CDATA[SASE]]></category>
            <category><![CDATA[Secure Web Gateway]]></category>
            <category><![CDATA[Beta]]></category>
            <category><![CDATA[Network Services]]></category>
            <guid isPermaLink="false">7ywSxti5U7fxjKbqmVXpGW</guid>
            <dc:creator>Alex Dunbrack</dc:creator>
            <dc:creator>Harsh Saxena</dc:creator>
        </item>
        <item>
            <title><![CDATA[Improved support for private applications and reusable access policies with Cloudflare Access]]></title>
            <link>https://blog.cloudflare.com/improved-support-for-private-applications-and-reusable-access-policies-with-cloudflare-access/</link>
            <pubDate>Thu, 20 Mar 2025 05:00:00 GMT</pubDate>
            <description><![CDATA[ We are excited to introduce support for private hostname and IP address-defined applications as well as reusable access policies.
 ]]></description>
            <content:encoded><![CDATA[ 
    <div>
      <h3>Simplifying secure access for every application</h3>
      <a href="#simplifying-secure-access-for-every-application">
        
      </a>
    </div>
    <p>For years, Cloudflare has helped organizations modernize their access to internal resources by delivering identity-aware access controls through our <a href="https://www.cloudflare.com/learning/access-management/what-is-ztna/"><u>Zero Trust Network Access (ZTNA)</u></a> service, <a href="https://www.cloudflare.com/zero-trust/products/access/"><u>Cloudflare Access</u></a>. Our customers have accelerated their ZTNA implementations for web-based applications in particular, using our intuitive workflows for Access applications tied to public hostnames.</p><p>However, given our architecture design, we have primarily handled private network application access (applications tied to private IP addresses or hostnames) through the network firewall component of our <a href="https://www.cloudflare.com/learning/access-management/what-is-a-secure-web-gateway/"><u>Secure Web Gateway (SWG)</u></a> service, <a href="https://developers.cloudflare.com/cloudflare-one/policies/gateway/"><u>Cloudflare Gateway</u></a>. We provided a small wrapper from Access to connect the two experiences. While this implementation technically got the job done, there were some clear downsides, and our customers have frequently cited the inconsistency.</p><p>Today, we are thrilled to announce that we have redesigned the self-hosted private application administrative experience within Access to match the experience for web-based apps on public hostnames. We are introducing support for private hostname and IP address-defined applications directly within Access, as well as reusable access policies. Together, these updates make ZTNA even easier for our customers to deploy and streamline ongoing policy management.</p><p>In order to better understand how this feature improves the overall functionality of Access, let’s explore what makes up a “private” application, how they are typically accessed, what was possible before this feature, and what the new feature enables. If you are a networking expert or aficionado, you can skip ahead to <a href="#a-look-back-protecting-private-applications-with-cloudflare-zero-trust-before-access-private-ip-address-and-hostname-support"><u>A look back: protecting private applications with Cloudflare Zero Trust before Access Private IP Address and Hostname support</u></a>.</p>
    <div>
      <h3>Private applications</h3>
      <a href="#private-applications">
        
      </a>
    </div>
    <p>A private application in this context, is any application that is only accessible through a private IP address or hostname. </p>
    <div>
      <h4>Private IP addresses</h4>
      <a href="#private-ip-addresses">
        
      </a>
    </div>
    <p>Private IP addresses, often referred to as <a href="https://www.rfc-editor.org/rfc/rfc1918"><u>RFC 1918 IP addresses</u></a>, are scoped to a specific network and can only be reached by users on that network. While public IP addresses must be unique across the entire Internet, private IP addresses can be reused across networks. Any device or virtual machine will have a private IP address. For example, if I run <i>ipconfig</i> on my own Windows machine, I can see an address of 192.168.86.172.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/40guiajv2H8LiUIPj3I80L/392c59c79ae2cd5d1edec8eba485610f/1.png" />
          </figure><p>This is the address that any other machine on my own network can use to reference and communicate with this specific machine. Private IP addresses are useful for applications and ephemeral infrastructure (systems that spin up and down dynamically) because they can be reused and only have to be unique within their specific network. This is much easier to manage than issuing a public IPv4 address to resources – we’ve actually <a href="https://blog.cloudflare.com/cloudflare-research-two-years-in/#case-study-3-ip-address-agility"><u>run out of available public IPv4 address space</u></a>!</p><p>In order to host an application on a machine in my network, I need to make that application available to other machines in the network. Typically, this is done by assigning the application to a specific port. A request to that application might then look something like this: <a href="http://10.128.0.6:443"><u>http://10.128.0.6:443</u></a> which in plain English is saying “Using the hypertext transfer protocol, reach out to the machine at an address of 10.128.0.6 in my network, and connect to port 443.” Connecting to an application can be done in a browser, over <a href="https://www.cloudflare.com/learning/access-management/what-is-ssh/">SSH</a>, over <a href="https://www.cloudflare.com/learning/access-management/what-is-the-remote-desktop-protocol/">RDP</a>, through a thick client application, or many other methods of accessing a resource over an IP address.</p><p>In this case, we have an Apache2 example web server, running at that address and port combination.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/zmLj88okpYkIdg6FmBYow/5a07a43478ede91223f42960a9539251/2.png" />
          </figure><p>If I attempt to access this IP address outside of the same network as this machine running the web server, then I will either get no result, or a completely different application, if I have something else running on that IP address/port combination in that other network.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/46reRgnUQMGTx7BO4yYgYh/f46096a704b24789e6ceba6c400b72a2/3.png" />
          </figure>
    <div>
      <h4>Private hostnames</h4>
      <a href="#private-hostnames">
        
      </a>
    </div>
    <p>We don’t want to remember 10.128.0.6 every time we want to access this application. Just like the Internet, we can use <a href="https://www.cloudflare.com/learning/dns/what-is-dns/">DNS</a> in our private network. While public DNS serves as the phone book for the entire Internet, private DNS is more like a school directory that is only valid for phone numbers within the campus.</p><p>For a private application, I can configure a DNS record, very similar to how I might expose a public website to the world. But instead, I will map my DNS record to a private IP address that is only accessible within my own network. Additionally, private DNS does not require registering a domain with a <a href="https://www.cloudflare.com/learning/dns/glossary/what-is-a-domain-name-registrar/">registrar</a> or adhering to defined top level domains. I can host an application on <i>application.mycompany</i>, and it is a valid internal DNS record. </p><p>In this example, I am running my web server on Google Cloud and will call the application <i>kennyapache.local</i>. In my local DNS, <i>kennyapache.local</i> has an A record mapping it to an IPv4 address within my private network on Google Cloud (GCP).</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/2OhO8VmCvfQ0H0ks1qUIir/74f5f4f764cef89393abf4989f0203e3/4.png" />
          </figure><p>This means that any machine within my network can use <i>https://kennyapache.local</i> instead of having to remember the explicit IP address.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/43nfcR2QZ6DtIhVGcdxlu4/2e72db9cdea772c15abf6a061926f531/5.png" />
          </figure>
    <div>
      <h3>Accessing private applications outside the private network</h3>
      <a href="#accessing-private-applications-outside-the-private-network">
        
      </a>
    </div>
    <p>Private networks require your machine, or virtual machine, to be connected directly to the same network as the target private IP address or hostname. This is a helpful property to keep unauthorized users from accessing applications, but presents a challenge if the application you want to use is outside your local network. </p><p><a href="https://www.cloudflare.com/learning/access-management/what-is-a-vpn/">Virtual Private Networks (VPNs)</a>, forward proxies, and proxy protocols (aka “<a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_PAC_file"><u>PAC files</u></a>”) are all methods to enable a machine outside your private network to reach a private IP address/hostname within the private network. These tools work by adding an additional network interface to the machine and specifying that certain requests need to be routed through a remote private network, not the local network the machine is currently connected to, or out to the public Internet.</p><p>When I connect my machine to a forward proxy, in this case Cloudflare’s device client, <a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-devices/warp/"><u>WARP</u></a>, and run <i>ipconfig </i>I can see a new network interface and IP address added to the list:</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/5ETxtHA0R29eZkPMGXQiKA/3a698067576e625491695ea31f9aae77/6.png" />
          </figure><p>This additional network interface will take control of specific network requests and route those to an external private network instead of the default behavior of my machine, which would be to route to that IP address on my own local network.</p>
    <div>
      <h3>A look back: protecting private applications with Cloudflare Zero Trust <i>before</i> Access Private IP Address and Hostname support</h3>
      <a href="#a-look-back-protecting-private-applications-with-cloudflare-zero-trust-before-access-private-ip-address-and-hostname-support">
        
      </a>
    </div>
    <p>We will continue to use our Apache2 server hosted on a GCP private domain as an example private application. We will briefly touch on how Cloudflare Zero Trust was previously used to protect private applications and why this new feature is a huge step forward. Cloudflare Zero Trust has two primary components used to protect application traffic: Cloudflare Access and Gateway.</p>
    <div>
      <h4>Cloudflare Access</h4>
      <a href="#cloudflare-access">
        
      </a>
    </div>
    <p><a href="https://www.cloudflare.com/zero-trust/products/access/"><u>Cloudflare Access</u></a> is designed to protect internal applications and resources without the need for a traditional VPN. Access allows organizations to authenticate and authorize users through identity providers — such as Okta, Azure AD, or Google Workspace — before granting them entry to internal systems or web-based applications. </p><p>Until now, Access required that an application had to be defined using a public DNS record. This means that a user had to expose their application to the Internet in order to leverage Access and use all of its granular security features. This isn’t quite as scary as it sounds, because Access allows you to enforce strong user, device, and network security controls. In fact, <a href="https://www.nist.gov/"><u>NIST</u></a> and many other major security organizations support this model.</p><p>In practice, an administrator would map their internal IP address or hostname to a public URL using our app connector, <a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/"><u>Cloudflare Tunnel</u></a>. </p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/2A5ipHt6Fle2B0va6u800e/aec1cc48f17d5599ea24259ea2724854/7.png" />
          </figure><p>Then, the administrator would create an Access application corresponding to that public URL. Cloudflare then sends a user through a single sign-on flow for any request made to that application.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/3lJup7iAXJn4spQ9c1FdxA/d66d0e2e0139021c4a28c6498cd6e1b4/image2.png" />
          </figure><p>However, this approach does not work for organizations that have strict requirements to never expose an application over public DNS. Additionally, this does not work for applications outside the browser like SSH, RDP, FTP and other thick client applications, which are all options to connect to private applications.</p><p>If I tried to SSH to my Access-protected public hostname, I would get an error message with no way to authenticate, since there is no easy way to do a single sign-on through the browser in conjunction with SSH.</p>
    <div>
      <h4>Access Private Network applications</h4>
      <a href="#access-private-network-applications">
        
      </a>
    </div>
    <p>Until now, because Access operated using public hostnames, we have handled private network access for our customers using the network firewall piece of Cloudflare Gateway. A few years ago, we <a href="https://blog.cloudflare.com/zero-trust-private-networking-rules/"><u>launched</u></a> Access Private Network applications, which automatically generate the required Gateway block policies. However, this was a limited approach that was ultimately just a wrapper in front of two Gateway policies. </p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/3Cyudmxym7VXQ5wLvslHqV/cc6bde76f33bcdddaea69e7f62e69ab0/9.png" />
          </figure>
    <div>
      <h4>Cloudflare Gateway</h4>
      <a href="#cloudflare-gateway">
        
      </a>
    </div>
    <p><a href="https://www.cloudflare.com/zero-trust/products/gateway/"><u>Cloudflare Gateway</u></a> is a secure web gateway that protects users from threats on the public Internet by filtering and securing DNS and web traffic. Gateway acts as a protective layer between end users and online resources by enforcing security controls, like blocking malicious domains, restricting access to risky categories of sites, and preventing <a href="https://www.cloudflare.com/learning/security/what-is-data-exfiltration/"><u>data exfiltration</u></a>. </p><p>Gateway is also used to route user traffic into private networks and acts as a forward proxy. It allows customers to create policies for private IP addresses and hostnames. This is because Gateway relies on traffic being proxied from the user’s machine to the Gateway service itself. This is most commonly done with the Cloudflare WARP client. WARP enables the configuration of which IP addresses and hostnames to send to Gateway for filtering and routing.</p><p>Once connected to a private network, through Gateway, a user can directly connect to private IP addresses and hostnames that are configured for that network.</p><p>I can then configure specific network firewall policies to allow or block traffic destined to private IP addresses.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4EtfhktReyry4NLabqunR/cb81b20c2e916c39fbd388ec3b8cbc8a/10.png" />
          </figure><p>Great! Looks like we’ve solved protecting private applications using Gateway. Not quite, unfortunately, as there are a few components of Gateway that are not an ideal model for an application-focused security model. While not discussed above, a few of the challenges we encountered when using Gateway for application access control included:</p><ul><li><p>Private applications were mixed in with general Gateway network firewall rules, complicating configuration and maintenance</p></li><li><p>Defining and managing private applications was not possible in Terraform</p></li><li><p>Application access logs were buried in general network firewall logs (these logs can contain all Internet traffic for an organization!)</p></li><li><p>Enforcement within Gateway relied on specific WARP client sessions, which lacked granular identity details</p></li><li><p>Administrators couldn’t use Access Rule Groups or other Access features built specifically for managing application access controls</p></li></ul><p>We knew we could do better.</p>
    <div>
      <h3>A unified approach to application access</h3>
      <a href="#a-unified-approach-to-application-access">
        
      </a>
    </div>
    <p>Knowing these limitations, we set out to extend Access to support any application, regardless of whether it is public or private. This principle guided our efforts to create a unified application definition in Cloudflare Access. Any self-hosted application, regardless of whether it is public or privately routable, should be defined in a single application type. The result is quite straightforward: <b>Access Applications now support </b><a href="https://developers.cloudflare.com/cloudflare-one/applications/non-http/self-hosted-private-app/"><b><u>private IP addresses and hostnames</u></b></a>.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/6H0E6kyDN9Cm1f5R7OAPBm/c9630a990c52ab553c062deb14c6bd48/11.png" />
          </figure><p>However, the engineering work was not as simple as adding a private IP address and hostname option to Cloudflare Access. Given our platform’s architecture, Access does not have any way to route private requests by itself. We still have to rely on Gateway and the WARP client for that component.</p>
    <div>
      <h4>An application-aware firewall</h4>
      <a href="#an-application-aware-firewall">
        
      </a>
    </div>
    <p>This meant that we needed to add an application-specific phase to Gateway’s <a href="https://www.cloudflare.com/learning/security/what-is-a-firewall/">firewall</a>. The new phase detects whether a user’s traffic matches a defined application, and if so it sends the traffic to Access for authentication and authorization of a user and their session. This required extending Gateway’s network firewall to have knowledge of which private IP addresses and hostnames are defined as applications.</p><p>Thanks to this new firewall phase, now an administrator can configure exactly where they want their private applications to be evaluated in their overall network firewall.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/6ruRjFqas4YtimtubJ2JH7/14f3a539536ffda5e7054e7bbff8638c/12.png" />
          </figure>
    <div>
      <h4>Private application sessions</h4>
      <a href="#private-application-sessions">
        
      </a>
    </div>
    <p>The other component we had to solve was per-application session management. In an Access public application, we issue a JSON Web Token (JWT) as a cookie which conveniently has an expiration associated. That acts as a session expiration. For private applications, we do not always have the ability to store a cookie. If the request is not over a browser, there is nowhere to put a <a href="https://www.cloudflare.com/learning/privacy/what-are-cookies/">cookie</a>.</p><p>For browser-based private applications, we follow the exact same pattern as a public application and issue a JWT as a means to track the session. App administrators get the additional benefit of being able to do <a href="https://www.bing.com/ck/a?!&amp;&amp;p=034518a2a9cf39217e3915ed984384030a9abdb4123d9e9e96cf917622fcd122JmltdHM9MTc0MDcwMDgwMA&amp;ptn=3&amp;ver=2&amp;hsh=4&amp;fclid=25d5373c-34a7-676d-2f67-229d35ee66b4&amp;psq=cloudflare+access+jwt+validation&amp;u=a1aHR0cHM6Ly9kZXZlbG9wZXJzLmNsb3VkZmxhcmUuY29tL2Nsb3VkZmxhcmUtb25lL2lkZW50aXR5L2F1dGhvcml6YXRpb24tY29va2llL3ZhbGlkYXRpbmctanNvbi8&amp;ntb=1"><u>JWT validation</u></a> for these apps as well. Non-browser based applications required adding a new per-application session to Gateway’s firewall. These application sessions are bound to a specific device and track the next time a user has to authenticate before accessing the application.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/20A2Xu4A9i66sKBB5JMFcy/c856a90127a540608d92a9d139b67515/13.png" />
          </figure>
    <div>
      <h4>Access private applications</h4>
      <a href="#access-private-applications">
        
      </a>
    </div>
    <p>Once we solved application awareness and session management in Gateway’s firewall, we could extend Access to support private IP address- and hostname-defined applications. Administrators can now directly define Access applications using private IP addresses and hostnames:</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/1lbk2iY0Nxp83UYPKjqT9r/6a473d16691d49e9fa6c24b7483c9f29/14.png" />
          </figure><p>You can see that private hostname and private IP address are now configuration options when defining an Access application.</p><p>If it is a non-HTTPS application (whether HTTP or non-browser), the user will receive a client pop-up prompting a re-authentication:</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/5MODs8OeSp1zarNyfSybRs/c0625e682c94be2076769bf45516f443/15.png" />
          </figure><p>HTTPS applications will behave exactly the same as an Access application with a public hostname. The user will be prompted to log in via single sign-on, and then a JWT will be issued to that specific domain.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/2JKV68fl0w38N7G3CbIx3S/12c2fb6911938fae28e8dee8cf3518b5/16.png" />
          </figure><p>Then we see a JWT issued to the application itself.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/3pjbbZZatyS5vTg9LBxwyA/8ae31cbbff12494508c686fbd2a60f99/17.png" />
          </figure>
    <div>
      <h3>Introducing Reusable Policies</h3>
      <a href="#introducing-reusable-policies">
        
      </a>
    </div>
    <p>As part of this work, we were able to address another long-standing pain point in Access —– managing policies across multiple applications was a time-consuming and error-prone process. Policies were nested objects under individual applications, requiring administrators to either rely heavily on Access Groups or repeat identical configurations for each application. </p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/5VXOFmgC6ckvmnIaGY8kLL/50ce63a57b6f59625f8a0277f59a3153/18.png" />
          </figure><p>With <b>Reusable Policies</b>, administrators can now create standardized policies — such as high, medium, or low risk — and assign them across multiple applications. A single change to a reusable policy will propagate to all associated applications, significantly simplifying management. With this new capability, we anticipate that many of our customers will be able to move from managing hundreds of access policies to a small handful. We’ve also renamed "Access Groups" to "Rule Groups," aligning with their actual function and reducing confusion with identity provider (IdP) groups.</p>
    <div>
      <h3>A redesigned user interface</h3>
      <a href="#a-redesigned-user-interface">
        
      </a>
    </div>
    <p>Alongside these functional updates, we’ve launched a significant UI refresh based on years of user feedback. The new interface offers more information at a glance and provides consistent, intuitive workflows for defining and managing applications. </p>
    <div>
      <h3>Looking ahead</h3>
      <a href="#looking-ahead">
        
      </a>
    </div>
    <p>While today’s release is a major step forward, there’s more to come. Currently, private hostname support is limited to port 443 with TLS inspection enabled. Later in 2025, we plan to extend support to arbitrary private hostnames on any port and protocol, further broadening Access’s capabilities.</p>
    <div>
      <h3>Get started today</h3>
      <a href="#get-started-today">
        
      </a>
    </div>
    <p>These new Access features are live and ready for you to explore. If you haven’t yet started modernizing remote access at your organization, <a href="https://dash.cloudflare.com/sign-up/teams"><u>sign up for a free account</u></a> to test it out. Whether you’re <a href="https://developers.cloudflare.com/cloudflare-one/applications/non-http/self-hosted-private-app/"><u>securing private resources</u></a> or <a href="https://developers.cloudflare.com/cloudflare-one/policies/access/policy-management/"><u>simplifying policy management</u></a>, we’re excited to see how these updates enhance your Zero Trust journey. As always, we’re here to help — reach out to your account team with any questions or feedback.</p>
    <div>
      <h3>Watch on Cloudflare TV</h3>
      <a href="#watch-on-cloudflare-tv">
        
      </a>
    </div>
    <div>
  
</div><p></p> ]]></content:encoded>
            <category><![CDATA[Security Week]]></category>
            <category><![CDATA[Cloudflare Access]]></category>
            <category><![CDATA[Cloudflare One]]></category>
            <category><![CDATA[Cloudflare Zero Trust]]></category>
            <guid isPermaLink="false">53DTUki2fBvLXzudP66p2M</guid>
            <dc:creator>Kenny Johnson</dc:creator>
            <dc:creator>Eduardo Gomes</dc:creator>
        </item>
        <item>
            <title><![CDATA[What’s new in Cloudflare: MASQUE now powers 1.1.1.1 & WARP apps, DEX now generally available with Remote Captures]]></title>
            <link>https://blog.cloudflare.com/masque-now-powers-1-1-1-1-and-warp-apps-dex-available-with-remote-captures/</link>
            <pubDate>Fri, 27 Dec 2024 14:00:00 GMT</pubDate>
            <description><![CDATA[ This roundup blog post shares the latest new features and capabilities at Cloudflare. ]]></description>
            <content:encoded><![CDATA[ <p>At Cloudflare, we are constantly innovating and launching new features and capabilities across our product portfolio. Today’s roundup blog post shares two exciting updates across our platform: our cross-platform <a href="https://www.cloudflare.com/en-gb/learning/dns/what-is-1.1.1.1/"><u>1.1.1.1</u></a> &amp; <a href="https://developers.cloudflare.com/warp-client/"><u>WARP</u></a> applications (consumer) and device agents (Zero Trust)  now use <a href="https://blog.cloudflare.com/masque-building-a-new-protocol-into-cloudflare-warp/"><u>MASQUE</u></a>, a cutting-edge <a href="https://www.cloudflare.com/en-gb/learning/performance/what-is-http3/"><u>HTTP/3</u></a>-based protocol, to secure your Internet connection. Additionally, DEX is now available for general availability. </p>
    <div>
      <h2>Faster and more stable: our 1.1.1.1 &amp; WARP apps now use MASQUE by default</h2>
      <a href="#faster-and-more-stable-our-1-1-1-1-warp-apps-now-use-masque-by-default">
        
      </a>
    </div>
    
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/6CghJvmC5DBnhKLM36MY3O/ecf722a9d9b5a4e4a048afea06237749/image1.png" />
          </figure><p>We’re excited to announce that as of today, our cross-platform <a href="https://www.cloudflare.com/en-gb/learning/dns/what-is-1.1.1.1/"><u>1.1.1.1</u></a> &amp; <a href="https://developers.cloudflare.com/warp-client/"><u>WARP</u></a> apps now use <a href="https://blog.cloudflare.com/masque-building-a-new-protocol-into-cloudflare-warp/"><u>MASQUE</u></a>, a cutting-edge <a href="https://www.cloudflare.com/en-gb/learning/performance/what-is-http3/"><u>HTTP/3</u></a>-based protocol, to secure your Internet connection.</p><p>As a reminder, our 1.1.1.1 &amp; WARP apps have two main functions: send all DNS queries through 1.1.1.1, our privacy-preserving DNS resolver, and protect your device’s network traffic via WARP by creating a private and encrypted tunnel to the resources you’re accessing, preventing unwanted third parties or public Wi-Fi networks from snooping on your traffic.</p><p>There are many ways to encrypt and proxy Internet traffic — you may have heard of a few, such as IPSec, WireGuard, or OpenVPN. There are many tradeoffs we considered when choosing a protocol, but we believe MASQUE is the future of fast, secure, and stable Internet proxying, it aligns with our belief in building on top of open Internet standards, and we’ve deployed it successfully at scale for customers like <a href="https://blog.cloudflare.com/icloud-private-relay/"><u>iCloud Private Relay</u></a> and <a href="https://blog.cloudflare.com/cloudflare-now-powering-microsoft-edge-secure-network/"><u>Microsoft Edge Secure Network</u></a>.</p>
    <div>
      <h3>Why MASQUE?</h3>
      <a href="#why-masque">
        
      </a>
    </div>
    <p><a href="https://blog.cloudflare.com/masque-building-a-new-protocol-into-cloudflare-warp/"><b><u>MASQUE</u></b></a> is a modern framework for proxying traffic that allows a variety of application protocols, including HTTP/3, to utilize QUIC as their transport mechanism. That’s a lot of acronyms, so let's make sure those are clear. </p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/6XkQ3rF8oo8JaG0Iujskia/6383b0c0bce36a94298960c163495843/image4.png" />
          </figure><p><a href="https://blog.cloudflare.com/quic-version-1-is-live-on-cloudflare/"><b><u>QUIC</u></b></a> is a general-purpose transport protocol and <a href="https://www.rfc-editor.org/rfc/rfc9000.html"><u>Internet standard</u></a> that operates on top of UDP (instead of TCP), is encrypted by default, and solves several performance issues that plagued its predecessors. <a href="https://www.cloudflare.com/en-gb/learning/performance/what-is-http3/"><b><u>HTTP/3</u></b></a><b> </b>is the latest version of the HTTP protocol, defining the application-layer protocol that runs on top of QUIC as its transport mechanism. MASQUE is a set of mechanisms for tunneling traffic over HTTP. It extends the existing HTTP CONNECT model, to allow tunneling UDP and IP traffic. This is especially efficient when combined with the QUIC’s <a href="https://datatracker.ietf.org/doc/html/rfc9221"><u>unreliable datagram extension</u></a>. </p><p>For example, we can use MASQUE’s <a href="https://www.rfc-editor.org/rfc/rfc9484.html"><u>CONNECT-IP method</u></a> to establish a tunnel that can send multiple concurrent requests over a single QUIC connection:</p>
            <pre><code>HEADERS
:method = CONNECT
:protocol = connect-ip
:scheme = https
:path = /.well-known/masque/ip/*/*/
:authority = example.org
capsule-protocol = ?1</code></pre>
            <p>The benefit these protocols have for the quality and security of everyone’s Internet browsing experience is real. Earlier transport protocols were built before the advent of smartphones and mobile networks, so QUIC was designed to support a mobile world, maintaining connections even in poorly connected networks, and minimizing disruptions as people switch rapidly between networks as they move through their day. Leveraging HTTP/3 as the application layer means that MASQUE is more like “normal” HTTP traffic on the Internet, meaning that it is easier to support, is compatible with existing firewall and security rules, and that it supports cryptographic agility (i.e. support for <a href="https://blog.cloudflare.com/post-quantum-for-all/"><u>post-quantum crypto</u></a>), making this traffic more secure and resilient in the long term.</p>
    <div>
      <h3>Get started now </h3>
      <a href="#get-started-now">
        
      </a>
    </div>
    <p>All new installations of our 1.1.1.1 &amp; WARP apps support MASQUE, including iOS, Android, macOS, Windows, and Linux, and we’ve started to roll it out as the preferred protocol over WireGuard. <a href="https://developers.cloudflare.com/warp-client/get-started/"><u>On mobile</u></a>, to check if your connection is already secured over MASQUE, or change your device’s default option, you can toggle this setting via <i>Advanced &gt; Connection options &gt; Tunnel protocol:</i></p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/3c7lAh7C5huXDUYt4v7B7w/a089967f8d9d668b2ded321f40b35cf4/Screenshot_2024-12-23_at_18.26.20.png" />
          </figure><p><sup><i>Protocol connection options shown here on the iOS app</i></sup></p><p>We offer the following options: </p><ul><li><p><b>Auto</b>: this allows the app to choose the protocol.</p></li><li><p><b>MASQUE</b>: always use MASQUE to secure your connection.</p></li><li><p><b>WireGuard</b>: always use WireGuard to secure your connection.</p></li></ul><p>On <a href="https://developers.cloudflare.com/warp-client/get-started/linux/"><u>desktop</u></a> versions, you can switch the protocol by using the WARP command-line interface. For example:</p>
            <pre><code>warp-cli tunnel protocol set WireGuard
warp-cli tunnel protocol set MASQUE</code></pre>
            <p>With this rollout, we're excited to see MASQUE deliver increased performance and stability to millions of users. Download <a href="https://one.one.one.one/"><u>one of the WARP apps</u></a> today!</p>
    <div>
      <h2>DEX now Generally Available: Announcing detailed device visibility with DEX Remote Captures</h2>
      <a href="#dex-now-generally-available-announcing-detailed-device-visibility-with-dex-remote-captures">
        
      </a>
    </div>
    
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/2RkuqjgXZh8tmoj4W1narK/baaf61dcde00bbfa4cef71e5dbd2cc23/image2.png" />
          </figure><p><i>Following the successful beta launch of Digital Experience Monitoring (DEX), we are thrilled to announce the general availability of DEX, along with new Remote Captures functionality.</i></p><p>In today's hyper distributed environment, user experience is paramount. Recurring performance problems can lead to decreased user satisfaction, lost productivity, and damaged brand reputation.  <a href="https://www.cloudflare.com/learning/performance/what-is-digital-experience-monitoring/"><u>Digital Experience Monitoring (DEX)</u></a> offers a comprehensive solution to these challenges. Previous blog posts have discussed the solution and its capabilities. (<a href="https://blog.cloudflare.com/introducing-digital-experience-monitoring/"><i><u>Introducing Digital Experience Monitoring</u></i></a><i>, </i><a href="https://blog.cloudflare.com/digital-experience-monitoring-beta/"><i><u>Understanding end user-connectivity and performance with Digital Experience Monitoring, now available in beta</u></i></a><i>, </i><a href="https://blog.cloudflare.com/tag/dex"><i><u>What's new in Cloudflare One: Digital Experience monitoring notifications</u></i></a>)</p>
    <div>
      <h3>Introducing Remote Captures: PCAP and WARP Diag</h3>
      <a href="#introducing-remote-captures-pcap-and-warp-diag">
        
      </a>
    </div>
    <p>Imagine this: an end user is frustrated with a slow application, and your IT team is struggling to pinpoint the root cause. Traditionally, troubleshooting such issues involved contacting the end user and asking them to manually collect and share network traffic data. This process is time-consuming, prone to errors, and often disruptive to the end user's workflow.</p><p>Building upon the capabilities of DEX, we are excited to introduce Remote Captures, a powerful new feature that empowers IT admins to gain unprecedented visibility into end-user devices and network performance. DEX now introduces Remote Captures, a powerful new feature that empowers IT admins to remotely initiate network <a href="https://en.wikipedia.org/wiki/Pcap"><u>packet captures (PCAP)</u></a> and <a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-devices/warp/troubleshooting/warp-logs/"><u>WARP Diag logs</u></a> directly from your end users’ devices and capture diagnostic information automatically from our device client. This streamlined approach accelerates troubleshooting, reduces the burden on end users, and provides valuable insights into network performance and security.</p>
    <div>
      <h3>Why Remote Captures?</h3>
      <a href="#why-remote-captures">
        
      </a>
    </div>
    <p>Remote Captures offer several key advantages. By analyzing detailed network traffic, IT teams can quickly pinpoint the root cause of network issues. Furthermore, granular network data empowers security teams to proactively detect and investigate potential threats. Finally, by identifying bottlenecks and latency issues, Remote Captures enable organizations to optimize network performance for a smoother user experience.</p>
    <div>
      <h3>How Remote Captures work</h3>
      <a href="#how-remote-captures-work">
        
      </a>
    </div>
    <p>Initiating a Remote Capture is straightforward. First, select the specific device you wish to troubleshoot. Then, with a few simple clicks, start capturing network traffic and/or WARP Diag data. Once the capture is complete, download the captured data and utilize your preferred tools for in-depth analysis.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/5NWQAhlUK8OQvuydQV0lb7/d93f6792e897120aa5e2f837a6ec7786/image3.png" />
          </figure>
    <div>
      <h3>Get started today</h3>
      <a href="#get-started-today">
        
      </a>
    </div>
    <p>DEX Remote Captures are now available for Cloudflare One customers. They can be configured by going to <a href="https://dash.cloudflare.com/"><u>Cloudflare Dashboard</u></a> &gt;  Zero Trust &gt; DEX &gt; Remote Captures, and then selecting the device you wish to collect from. For more information, refer to <a href="https://developers.cloudflare.com/cloudflare-one/insights/dex/remote-captures/"><u>Remote captures</u></a>. This new capability highlights just one of the many ways our unified SASE platform helps organizations find and fix security issues across SaaS applications. <a href="https://dash.cloudflare.com/sign-up/teams"><u>Try it out now</u></a> using our free tier to get started.</p>
    <div>
      <h2>Never miss an update </h2>
      <a href="#never-miss-an-update">
        
      </a>
    </div>
    <p>We hope you enjoy reading our roundup blog posts as we continue to build and innovate. Stay tuned to the <a href="https://blog.cloudflare.com/"><u>Cloudflare Blog</u></a> for the latest news and updates.</p> ]]></content:encoded>
            <category><![CDATA[Cloudflare Zero Trust]]></category>
            <category><![CDATA[DEX]]></category>
            <category><![CDATA[1.1.1.1]]></category>
            <category><![CDATA[MASQUE]]></category>
            <category><![CDATA[Product News]]></category>
            <guid isPermaLink="false">1zc4C9M6VIkj5TrfugGxum</guid>
            <dc:creator>Mari Galicer</dc:creator>
            <dc:creator>Guy Nir</dc:creator>
        </item>
        <item>
            <title><![CDATA[Fearless SSH: short-lived certificates bring Zero Trust to infrastructure]]></title>
            <link>https://blog.cloudflare.com/intro-access-for-infrastructure-ssh/</link>
            <pubDate>Wed, 23 Oct 2024 13:00:00 GMT</pubDate>
            <description><![CDATA[ Access for Infrastructure, BastionZero’s integration into Cloudflare One, will enable organizations to apply Zero Trust controls to their servers, databases, Kubernetes clusters, and more. Today we’re announcing short-lived SSH access as the first available feature of this integration.
 ]]></description>
            <content:encoded><![CDATA[ <p><a href="https://blog.cloudflare.com/cloudflare-acquires-bastionzero"><u>BastionZero joined Cloudflare</u></a> in May 2024. We are thrilled to announce Access for Infrastructure as BastionZero’s native integration into our <a href="https://www.cloudflare.com/learning/access-management/what-is-sase/"><u>SASE</u></a> platform, Cloudflare One. Access for Infrastructure will enable organizations to apply Zero Trust controls in front of their servers, databases, network devices, Kubernetes clusters, and more. Today, we’re announcing <a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/use-cases/ssh/ssh-infrastructure-access/#_top"><u>short-lived SSH access</u></a> as the first available feature. Over the coming months we will announce support for other popular infrastructure access target types like <a href="https://www.cloudflare.com/learning/access-management/what-is-the-remote-desktop-protocol/"><u>Remote Desktop Protocol (RDP)</u></a>, Kubernetes, and databases.</p>
    <div>
      <h2>Applying Zero Trust principles to infrastructure</h2>
      <a href="#applying-zero-trust-principles-to-infrastructure">
        
      </a>
    </div>
    <p>Organizations have embraced <a href="https://www.cloudflare.com/learning/security/glossary/what-is-zero-trust/"><u>Zero Trust</u></a> initiatives that modernize secure access to web applications and networks, but often the strategies they use to manage privileged access to their infrastructure can be siloed, overcomplicated, or ineffective. When we speak to customers about their infrastructure access solution, we see common themes and pain points:</p><ul><li><p><b>Too risky:</b> Long-lived credentials and shared keys get passed around and inflate the risk of compromise, excessive permissions, and lateral movement</p></li><li><p><b>Too clunky</b>: Manual credential rotations and poor visibility into infrastructure access slow down incident response and compliance efforts</p></li></ul><p>Some organizations have dealt with the problem of privileged access to their infrastructure by purchasing a <a href="https://en.wikipedia.org/wiki/Privileged_access_management"><u>Privileged Access Management (PAM)</u></a> solution or by building a homegrown key management tool. Traditional PAM solutions introduce audit logging and session recording features that capture user interactions with their servers and other infrastructure and/or centralized vaults that rotate keys and passwords for infrastructure every time a key is used. But this centralization can introduce performance bottlenecks, harm usability, and come with a significant price tag. Meanwhile, homegrown solutions are built from primitives provided by cloud providers or custom infrastructure-as-code solutions, and can be costly and tiresome to build out and maintain. </p><p>We believe that organizations should apply Zero Trust principles to their most sensitive corporate resources, which naturally includes their infrastructure. That’s why we’re augmenting Cloudflare’s <a href="https://www.cloudflare.com/learning/access-management/what-is-ztna/"><u>Zero Trust Network Access (ZTNA)</u></a> service with <a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/use-cases/ssh/ssh-infrastructure-access/#_top"><u>Access to Infrastructure</u></a> to support privileged access to sensitive infrastructure, and offering features that will look somewhat similar to those found in a PAM solution:</p><ul><li><p><b>Access</b>: Connect remote users to infrastructure targets via Cloudflare’s global network.</p></li><li><p><b>Authentication</b>: Eliminate the management of credentials for servers, containers, clusters, and databases and replace them with <a href="https://www.cloudflare.com/learning/access-management/what-is-sso/"><u>SSO</u></a>, <a href="https://www.cloudflare.com/learning/access-management/what-is-multi-factor-authentication/"><u>MFA</u></a>, and <a href="https://blog.cloudflare.com/6-new-ways-to-validate-device-posture/"><u>device posture</u></a>. </p></li><li><p><b>Authorization</b>: Use policy-based access control to determine who can access what target, when, and under what role. </p></li><li><p><b>Auditing</b>: Provide command logs and session recordings to allow administrators to audit and replay their developers’ interactions with the organization’s infrastructure.</p></li></ul><p>At Cloudflare, we are big believers that unified experiences produce the best security outcomes, and because of that, we are natively rebuilding each BastionZero feature into Cloudflare’s ZTNA service. Today, we will cover the recently-released feature for short-lived SSH access.</p>
    <div>
      <h2>Secure Shell (SSH) and its security risks</h2>
      <a href="#secure-shell-ssh-and-its-security-risks">
        
      </a>
    </div>
    <p><a href="https://www.cloudflare.com/learning/access-management/what-is-ssh/"><u>SSH</u></a> (Secure Shell) is a protocol that is commonly used by developers or system administrators to secure the connections used to remotely administer and manage (usually Linux/Unix) servers. SSH access to a server often comes with elevated privileges, including the ability to delete or <a href="https://www.cloudflare.com/learning/security/what-is-data-exfiltration/">exfiltrate</a> data or to install or remove applications on the server. </p><p>Modern enterprises can have tens, hundreds, or even thousands of SSH targets. Servers accessible via SSH can be targeted in <a href="https://thehackernews.com/2023/12/warning-poorly-secured-linux-ssh.html"><u>cryptojacking</u></a> or <a href="https://thehackernews.com/2023/06/cybercriminals-hijacking-vulnerable-ssh.html"><u>proxyjacking</u></a> attacks. Manually tracking, rotating, and validating SSH credentials that grant access is a chore that is often left undone, which creates risks that these long-lived credentials could be compromised. There’s nothing stopping users from copying SSH credentials and sharing them with other users or transferring them to unauthorized devices.</p><p>Although many organizations will gate access to their servers to users that are inside their corporate network, this is no longer enough to protect against modern attackers. Today, the principles of Zero Trust demand that an organization also tracks who exactly is accessing their servers with SSH, and what commands they are running on those servers once they have access. In fact, the elevated privileges that come along with SSH access mean that compliance frameworks like <a href="https://www.cloudflare.com/en-gb/trust-hub/compliance-resources/soc-2/"><u>SOC2</u></a>, <a href="https://www.cloudflare.com/en-gb/trust-hub/compliance-resources/iso-certifications/"><u>ISO27001</u></a>, <a href="https://www.cloudflare.com/en-gb/trust-hub/compliance-resources/fedramp/"><u>FedRAMP</u></a> and others have criteria that require monitoring who has access with SSH and what exactly they are doing with that access. </p>
    <div>
      <h2>Introducing SSH with Access for Infrastructure</h2>
      <a href="#introducing-ssh-with-access-for-infrastructure">
        
      </a>
    </div>
    <p>We’ve introduced<a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/use-cases/ssh/ssh-infrastructure-access/#_top"><u> SSH with Access for Infrastructure</u></a> to provide customers with granular control over privileged access to servers via SSH. The feature provides improved visibility into who accessed what service and what they did during their SSH session, while also eliminating the risk and overhead associated with managing SSH credentials. Specifically, this feature enables organizations to:</p><ul><li><p>Eliminate security risk and overhead of managing SSH keys and instead use short-lived SSH certificates issued by a Cloudflare-managed certificate authority (CA).</p></li><li><p>Author fine-grained policy to govern who can SSH to your servers and through which SSH user(s) they can log in as.</p></li><li><p>Monitor infrastructure access with Access and SSH command logs, supporting regulatory compliance and providing visibility in case of security breach.</p></li><li><p>Avoid changing end-user workflows. SSH with Access for Infrastructure supports whatever native SSH clients end users happen to be using. </p></li></ul><p>SSH with Access for Infrastructure is supported through one of the most common deployment models of Cloudflare One customers. Users can connect using our device client (WARP), and targets are made accessible using Cloudflare Tunnel (cloudflared or the WARP connector). This architecture allows customers with existing Cloudflare One deployments to enable this feature with little to no effort. The only additional setup will be configuring your target server to accept a Cloudflare SSH certificate.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4msjrxXyhuuh7rUmB0zn8c/3e24a431820aee57651bad1d57e57ec5/BLOG-2604_2.png" />
          </figure><p>Cloudflare One already offers multiple ways to secure organizations' SSH traffic through network controls. This new SSH with Access for Infrastructure aims to incorporate the strengths of those existing solutions together with additional controls to authorize ports, protocols, and specific users as well as a much improved deployment workflow and audit logging capabilities.</p>
    <div>
      <h2>Eliminating SSH credentials using an SSH CA</h2>
      <a href="#eliminating-ssh-credentials-using-an-ssh-ca">
        
      </a>
    </div>
    <p>How does Access for Infrastructure eliminate your SSH credentials? This is done by replacing SSH password and SSH keys with an SSH Certificate Authority (CA) that is managed by Cloudflare. Generally speaking, a CA’s job is to issue certificates that bind an entity to an entity’s public key. Cloudflare’s SSH CA has a secret key that is used to sign certificates that authorize access to a target (server) via SSH, and a public key that is used by the target (server) to cryptographically validate these certificates. The public key for the SSH CA can be obtained by <a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/use-cases/ssh/ssh-infrastructure-access/#generate-a-cloudflare-ssh-ca"><u>querying the Cloudflare API</u></a>. And the secret key for the SSH CA is kept secure by Cloudflare and never exposed to anyone. </p><p>To use SSH with Access for Infrastructure to grant access via SSH to a set of targets (i.e. servers), you need to <a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/use-cases/ssh/ssh-infrastructure-access/#modify-your-sshd-config"><u>instruct those servers to trust the Cloudflare SSH CA</u></a>. Those servers will then grant access via SSH whenever they are presented with an SSH certificate that is validly signed by the Cloudflare SSH CA.</p><p>The same Cloudflare SSH CA is used to support SSH access for all of your developers and engineers to all your target servers. This greatly simplifies key management. You no longer need to manage long-lived SSH keys and passwords for individual end users, because access to targets with SSH is granted via certificates that are dynamically issued by the Cloudflare SSH CA. And, because the Cloudflare SSH CA issued short-lived SSH certificates that expire after 3 minutes, you also don’t have to worry about creating or managing long-lived SSH credentials that could be stolen by attackers. </p><p>The 3-minute time window on the SSH certificate only applies to the time window during which the user has to authenticate to the target server; it does not apply to the length of the SSH session, which can be arbitrarily longer than 3 minutes. This 3-minute window was chosen because it was short enough to reduce the risk of security compromise and long enough to ensure that we don’t miss the time window of the user’s authentication to the server, especially if the user is on a slow connection.</p>
    <div>
      <h2>Centrally managing policies down to the specific Linux user</h2>
      <a href="#centrally-managing-policies-down-to-the-specific-linux-user">
        
      </a>
    </div>
    <p>One of the problems with traditional SSH is that once a user has an SSH key or password installed on a server, they will have access to that server forever — unless an administrator somehow remembers to remove their SSH key or password from the server in question. This leads to <i>privilege creep,</i> where too many people have standing access to too many servers, creating a security risk if an SSH key or password is ever stolen or leaked.</p><p>Instead, SSH with Access for Infrastructure allows you to centrally write policies in the Cloudflare dashboard specifying exactly what (set of) users has access to what (set of) servers. Users may be authenticated by SSO, MFA, device posture, location, and more, which provides better security than just authenticating them via long-lived SSH keys or passwords that could be stolen by attackers.</p><p>Moreover, the SSH certificates issued by the Cloudflare CA include a field called <i>valid_principals</i> which indicates the specific Linux user (e.g. <i>root</i>, <i>read-only</i>, <i>ubuntu</i>, <i>ec2-user</i>) that can be assumed by the SSH connection. As such, you can write policies that specify the (set of) Linux users that a given (set of) end users may access on a given (set of) servers, as shown in the figure below. This allows you to centrally control the privileges that a given end user has when accessing a given target server. (The one caveat here is that the server must also be pre-configured to already know about the specific Linux user (e.g. <i>root) </i>that is specified in the policies and presented in the SSH certificate. Cloudflare is NOT managing the Linux users on your Linux servers.)</p><p>As shown below, you could write a policy that says users in Canada, the UK, and Australia that are authenticated with MFA and face recognition can access the <i>root </i>and <i>ec2-user </i>Linux users on a given set of servers in AWS.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4D580wfY5DxQ9iSNhflztJ/a97eea9e68b0a44ea2b9c544d1cf3bda/BLOG-2604_3.png" />
          </figure>
    <div>
      <h2>How does Cloudflare capture SSH command logs?</h2>
      <a href="#how-does-cloudflare-capture-ssh-command-logs">
        
      </a>
    </div>
    <p>Cloudflare captures SSH command logs because we built an SSH proxy that intercepts the SSH connections. The SSH proxy establishes one SSH connection between itself and the end user’s SSH client, and another SSH connection between itself and the target (server). The SSH proxy can therefore inspect the SSH commands and log them. </p><p>SSH commands are encrypted at rest using a public key that the customer uploads via the Cloudflare API. Cloudflare cannot read SSH command logs at rest, but they can be extracted (in encrypted form) from the Cloudflare API and decrypted by the customer (who holds the corresponding private key). Instructions for uploading the <a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/use-cases/ssh/ssh-infrastructure-access/#enable-ssh-command-logging"><u>encryption public key are available in our developer documentation</u></a>.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/1KvuPqP9XfUn5M6sE5Qvw4/c8eb24587b4301d4ca9bfad0b2037ee1/Log_for_digital-ocean.png" />
          </figure>
    <div>
      <h2>How the SSH interception works under the hood</h2>
      <a href="#how-the-ssh-interception-works-under-the-hood">
        
      </a>
    </div>
    
    <div>
      <h3>How does generic SSH work?</h3>
      <a href="#how-does-generic-ssh-work">
        
      </a>
    </div>
    <p>To understand how Cloudflare’s SSH proxy works, we first must review how a generic SSH connection is established.</p><p>First off, SSH runs over TCP, so to establish an SSH connection, we first need to complete a TCP handshake. Then, once the TCP handshake is complete, an SSH key exchange is needed to establish an ephemeral symmetric key between the client and the server that will be used to encrypt and authenticate their SSH traffic. The SSH key exchange is based on the server public key, also known as the <i>hostkey. </i>If you’ve ever used SSH, you’ve probably seen this message — that is the SSH server telling your SSH client to trust this hostkey for all future SSH interactions. (This is also known as TOFU or Trust On First Use.)</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/3rjmLTfw8CauXPT0kumYyw/7cbfe372a00f7c7b1f6957743113b20a/BLOG-2604_5.png" />
          </figure><p>Finally, the client needs to authenticate itself to the server. This can be done using SSH passwords, SSH keys, or SSH certificates (as described above). SSH also has a mode called <i>none</i>, which means that the client does NOT need to authenticate itself to the server at all.</p>
    <div>
      <h3>So how does Cloudflare’s SSH proxy work? </h3>
      <a href="#so-how-does-cloudflares-ssh-proxy-work">
        
      </a>
    </div>
    
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/6znMxrzjyakDF3KBqEWUHX/c12a50ef7ef6c77d4bbacaac3ee8ec60/BLOG-2604_6.png" />
          </figure><p>To understand this, we note that whenever you set up SSH with Access for Infrastructure in the Cloudflare dashboard, you first need to create the set of targets (i.e. servers) that you want to make accessible via SSH. Targets can be defined by IP address or hostname. You then create an Access for Infrastructure application that captures the TCP ports (e.g. port 22) that SSH runs over for those targets, and write policies for those SSH connections, as we already described above and <a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/use-cases/ssh/ssh-infrastructure-access/#5-add-an-infrastructure-application"><u>in our developer documentation</u></a>.</p><p>This setup allows Cloudflare to know the set of IP addresses and ports for which it must intercept SSH traffic. Thus, whenever Cloudflare sees a TCP handshake with an IP address and port that must be intercepted, it sends traffic for that TCP connection to the SSH proxy. </p><p>The SSH proxy leverages the client’s already authenticated identity from the WARP client, and enforces the configured Access for Infrastructure policies against it. If the policies do not allow the identity to connect to the target under the requested Linux user (e.g. <i>root)</i>, the SSH proxy will reject the connection and log an <b><i>Access denied</i></b><b> </b>event to the Access logs. Otherwise, if policies do allow the identity to connect, the the SSH proxy will establish the following two SSH connections: </p><ol><li><p>SSH connection from SSH proxy to target</p></li><li><p>SSH connection from end user’s SSH client (via Cloudflare’s WARP client) to SSH proxy</p></li></ol><p>Let’s take a look at each of these SSH connections, and the cryptographic material used to set them up. </p><p><b>To establish the SSH connection from SSH proxy to the target</b>, the SSH proxy acts as a client in the SSH key exchange between itself and the target server. The handshake uses the target server’s <i>hostkey</i> to establish an ephemeral symmetric key between the client and the server that will encrypt and authenticate their SSH traffic. Next, the SSH proxy must authenticate itself to the target server. This is done by presenting the server with a short-lived SSH certificate, issued by the Cloudflare SSH CA, for the specified Linux user that is requested for this connection as we already described above. Because the target server has been configured to trust the Cloudflare SSH CA, the target server will be able to successfully validate the certificate and the SSH connection will be established.</p><p><b>To establish the SSH connection from the end-user's SSH client to SSH proxy</b>, the SSH proxy acts as a server in the SSH key exchange between itself and the end-user’s SSH client. </p><p>To do this, the SSH proxy needs to inform the end user’s SSH client about the <i>hostkey</i> that will be used to establish this connection. But what <i>hostkey</i> should be used? We cannot use the same <i>hostkey </i>used by the target server, because that <i>hostkey </i>is the public key that corresponds to a private key that is known only to the target server, and not known to the SSH proxy. So, Cloudflare’s SSH proxy needs to generate its own <i>hostkey</i>. We don’t want the end user to randomly see warnings like the one shown below, so the SSH proxy should provide the same <i>hostkey </i>each time the user wants to access a given target server. But, if something does change with the <i>hostkey </i>of the target server, we do want the warning below to be shown. </p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/3VBYjkE9DOpN7A5IjLSN0H/bfbc9e3a65cb81abc6fe4eb5c5780b39/BLOG-2604_7.png" />
          </figure><p>To achieve the desired behavior, the SSH proxy generates a <i>hostkey </i>and its corresponding private key by hashing together (a) a fixed secret value valid that associated with the customer account, along with (b) the <i>hostkey</i> that was provided by this target server (in the connection from SSH proxy to target server). This part of the design ensures that the end user only needs to see the TOFU notification the very first time it connects to the target server via WARP, because the same <i>hostkey</i> is used for all future connections to that target. And, if the <i>hostkey</i> of the target server does change as a result of a Monster-In-The-Middle attack, the warning above will be shown to the user.</p><p>Finally, during the SSH key exchange handshake from WARP client to SSH proxy, the SSH proxy informs that end user’s native SSH client that it is using <i>none</i> for client authentication. This means that the SSH client does NOT need to authenticate itself to the server at all. This part of the design ensures that the user need not enter any SSH passwords or store any SSH keys in its SSH configuration in order to connect to the target server via WARP. Also, this does not compromise security, because the SSH proxy has already authenticated the end user via Cloudflare’s WARP client and thus does not need to use the native SSH client authentication in the native SSH client.</p><p>Put this all together, and we have accomplished our goal of having end users authenticate to target servers without any SSH keys or passwords, using Cloudflare’s SSH CA instead. Moreover, we also preserve the desired behaviors of the TOFU notifications and warnings built into native SSH clients!</p>
    <div>
      <h2>All the keys</h2>
      <a href="#all-the-keys">
        
      </a>
    </div>
    <p>Before we wrap up, let’s review the cryptographic keys you need in order to deploy SSH with Access for Infrastructure. There are two keys:</p><ol><li><p><b>Public key of the SSH CA. </b>The private key of the SSH CA is only known to Cloudflare and not shared with anyone. The public key of the <a href="https://ranbel-infrastructure-access.cloudflare-docs-7ou.pages.dev/cloudflare-one/connections/connect-networks/use-cases/ssh/ssh-infrastructure-access/#generate-a-cloudflare-ssh-ca"><u>SSH CA is obtained from the Cloudflare API</u></a> and must be <a href="https://ranbel-infrastructure-access.cloudflare-docs-7ou.pages.dev/cloudflare-one/connections/connect-networks/use-cases/ssh/ssh-infrastructure-access/#generate-a-cloudflare-ssh-ca"><u>installed</u></a> on all your target servers. The same public key is used for all of your targets. This public key does not need to be kept secret.</p></li><li><p><b>Private key for SSH command log encryption. </b>To obtain logs of SSH commands, you need to generate a <a href="https://ranbel-infrastructure-access.cloudflare-docs-7ou.pages.dev/cloudflare-one/connections/connect-networks/use-cases/ssh/ssh-infrastructure-access/#generate-a-cloudflare-ssh-ca"><u>public-private key pair, and upload the public key to Cloudflare</u></a>. The public key will be used to encrypt your SSH commands logs at REST. You need to keep the private key secret, and you can use it to <a href="https://ranbel-infrastructure-access.cloudflare-docs-7ou.pages.dev/cloudflare-one/connections/connect-networks/use-cases/ssh/ssh-infrastructure-access/#view-ssh-logs"><u>decrypt</u></a> your SSH command logs. </p></li></ol><p>That’s it! No other keys, passwords, or credentials to manage!</p>
    <div>
      <h2>Try it out today</h2>
      <a href="#try-it-out-today">
        
      </a>
    </div>
    <p>At Cloudflare, we are committed to providing the most comprehensive solution for ZTNA, which now also includes privileged access to sensitive infrastructure like servers accessed over SSH.</p><p>Organizations can now treat SSH like any other Access application and enforce strong MFA, device context, and policy-based access prior to granting user access. This allows organizations to consolidate their infrastructure access policies into their broader <a href="https://www.cloudflare.com/learning/access-management/security-service-edge-sse/">SSE</a> or SASE architecture.</p><p>You can try out Access for Infrastructure today by following <a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/use-cases/ssh/ssh-infrastructure-access/#_top"><u>these instructions in our developer documentation</u></a>. Access for Infrastructure is currently available free to teams of under 50 users, and at no extra cost to existing pay-as-you-go and Contract plan customers through an Access or Zero Trust subscription. Expect to hear about a lot more features from us as we continue to natively rebuild <a href="https://blog.cloudflare.com/cloudflare-acquires-bastionzero/"><u>BastionZero</u></a>’s technology into Cloudflare’s Access for Infrastructure service!</p> ]]></content:encoded>
            <category><![CDATA[Zero Trust]]></category>
            <category><![CDATA[Cloudflare Zero Trust]]></category>
            <category><![CDATA[Acquisitions]]></category>
            <category><![CDATA[SSH]]></category>
            <category><![CDATA[Cloudflare Access]]></category>
            <category><![CDATA[Cloudflare One]]></category>
            <category><![CDATA[Compliance]]></category>
            <guid isPermaLink="false">KUIHP5Rgyl2H3pGVE6m99</guid>
            <dc:creator>Sharon Goldberg</dc:creator>
            <dc:creator>Ann Ming Samborski</dc:creator>
            <dc:creator>Sebby Lipman</dc:creator>
        </item>
        <item>
            <title><![CDATA[Protect against identity-based attacks by sharing Cloudflare user risk scores with Okta]]></title>
            <link>https://blog.cloudflare.com/protect-against-identity-based-attacks-by-sharing-cloudflare-user-risk-with-okta/</link>
            <pubDate>Tue, 15 Oct 2024 13:00:00 GMT</pubDate>
            <description><![CDATA[ Uphold Zero Trust principles and protect against identity-based attacks by sharing Cloudflare user risk scores with Okta. Learn how this new integration allows your organization to mitigate risk in real time, make informed access decisions, and free up security resources with automation. ]]></description>
            <content:encoded><![CDATA[ <p>Cloudflare One, our <a href="https://www.cloudflare.com/learning/access-management/what-is-sase/"><u>secure access service edge (SASE)</u></a> platform, is introducing a new integration with Okta, the <a href="https://www.cloudflare.com/learning/access-management/what-is-identity-and-access-management/"><u>identity and access management (IAM)</u></a> vendor, to share risk indicators in real-time and simplify how organizations can dynamically manage their security posture in response to changes across their environments.</p><p>For many organizations, it is becoming increasingly challenging and inefficient to adapt to risks across their growing <a href="https://www.cloudflare.com/learning/security/what-is-an-attack-surface/"><u>attack surface</u></a>. In particular, security teams struggle with multiple siloed tools that fail to share risk data effectively with each other, leading to excessive manual effort to extract signals from the noise. To address this complexity, Cloudflare launched <a href="https://blog.cloudflare.com/unified-risk-posture/"><u>risk posture management capabilities</u></a> earlier this year to make it easier for organizations to accomplish three key jobs on one platform: </p><ol><li><p>Evaluating risk posed by people by using first-party <a href="https://www.cloudflare.com/learning/security/what-is-ueba/"><u>user entity and behavior analytics (UEBA)</u></a> models</p></li><li><p>Exchanging risk telemetry with best-in-class security tools, and</p></li><li><p>Enforcing risk controls based on those dynamic first- and third-party risk scores.</p></li></ol><p>Today’s announcement builds on these capabilities (particularly job #2) and <a href="https://www.cloudflare.com/partners/technology-partners/okta/"><u>our partnership with Okta</u></a> by enabling organizations to share Cloudflare’s real-time <a href="https://blog.cloudflare.com/cf1-user-risk-score/"><u>user risk scores</u></a> with Okta, which can then automatically enforce policies based on that user’s risk. In this way, organizations can adapt to evolving risks in less time with less manual effort.</p>
    <div>
      <h2>Cloudflare’s user risk scoring</h2>
      <a href="#cloudflares-user-risk-scoring">
        
      </a>
    </div>
    <p><a href="https://blog.cloudflare.com/cf1-user-risk-score/"><u>Introduced earlier this year</u></a>, Cloudflare’s user risk scoring analyzes real-time telemetry of user activities and behaviors and assigns a risk score of high, medium, or low. For example, if Cloudflare detects risky or suspicious activity from a user — such as impossible travel, where a user logs in from multiple geographically dispersed locations within a short time frame, data loss prevention (DLP) detections, or endpoint detections suggesting that the device is infected — the user’s risk score will increase. The activity leading to that scoring is logged for analysis.</p><p>Cloudflare includes <a href="https://developers.cloudflare.com/cloudflare-one/insights/risk-score/"><u>predefined risk behaviors</u></a> to help you get started. Administrators can create policies based on specific risk behaviors and adjust the risk level for each behavior based on their company’s tolerance.</p>
    <div>
      <h2>Share risk scores with Okta and take action automatically</h2>
      <a href="#share-risk-scores-with-okta-and-take-action-automatically">
        
      </a>
    </div>
    <p>Customers that opt in to this new integration will be able to share continually updated Cloudflare user risk scores with <a href="https://www.okta.com/products/identity-threat-protection/"><u>Identity Threat Protection with Okta AI</u></a>. If a user is deemed too risky, Okta will automatically take action to mitigate the risk, such as enforcing <a href="https://www.cloudflare.com/en-gb/learning/access-management/what-is-multi-factor-authentication/"><u>multi-factor authentication (MFA)</u></a> verification or universally logging the user out from all applications. </p><p>For example, a user has a low risk score from Cloudflare that was shared with Okta, but after exhibiting “impossible travel” behavior, the user’s risk level is raised to high. Cloudflare sends the updated score to Okta, which triggers a Universal Logout and an MFA challenge if the user attempts to log in again. Access to sensitive systems may be revoked completely until the user is verified. </p>
    <div>
      <h2>How it works: continuous risk evaluation and exchange</h2>
      <a href="#how-it-works-continuous-risk-evaluation-and-exchange">
        
      </a>
    </div>
    
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/79JiNwP0P5bbXpW6dy6ORQ/b0dc91943840b44bbcc8e447af64f392/image1.png" />
          </figure><p><sup><b><i>Figure 1.</i></b></sup><sup><i> Diagram showing risky behavior by a user, resulting in sign-out.</i></sup></p><p>We begin by detecting risky behavior from a user (such as an “impossible travel” event between two geographic locations). Instances of risky behavior are called Risk Events. We perform two actions when we observe a Risk Event: logging the event and evaluating whether further action is required. For customers that have enabled <a href="https://developers.cloudflare.com/cloudflare-one/insights/risk-score/#send-risk-score-to-okta"><u>Risk Score Sharing with Okta</u></a>, any change in Risk Score is transmitted to Okta’s Identity Threat Protection (ITP).</p><p>Upon receiving a new event, Okta evaluates the change in user risk against the organization's policies. These policies may include actions such as re-authenticating the user if they become high risk.</p><p>When we design new features, we aim for them to be extensible across the industry. For this reason, we chose the <a href="https://openid.net/specs/openid-sharedsignals-framework-1_0.html"><u>OpenID Shared Signals Framework Specification (SSF)</u></a> to be the foundation of our transmission format. By doing this, we are able to leverage current and future providers that support the standard. The core functionality of SSF revolves around sharing <a href="https://www.rfc-editor.org/rfc/rfc8417.html"><u>Security Event Tokens (SETs)</u></a>, a specialized version of a JSON Web Token (JWT). Providers can produce and consume Security Event Tokens, forming a “network” of shared user risk information between providers.</p>
          <figure>
          <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/SaWKy4UWPZfa8hf6rHcF8/571a08ddeab08b01b9a38e740ec89644/image2.png" />
          </figure><p><sup><b><i>Figure 2.</i></b></sup><sup><i> Diagram showing a Security Event Token being transmitted from Cloudflare to Okta.</i></sup></p><p>The diagram above (<b>Figure 2</b>) details the process of sharing risk. When sharing Risk Score changes with Okta, we bundle metadata about the risk event and user into the body of a Security Event Token. Following this, the JWT/SET is signed using our private key. This is an important step, as the signature is used to verify the sender's identity (cryptographic authenticity) and that the payload body has not been tampered with (cryptographic integrity). In plain terms, this signature is used by Okta to verify that the event is unaltered and was sent by Cloudflare.</p><p>Once Okta has verified the authenticity and integrity of the SET token, they may use the risk metadata within the body to execute Identity Threat Protection policies defined by the customer. These policies could include actions such as “if a high risk score is received from Cloudflare, sign out the offending user”.</p><p>Learn more about the Shared Signals Framework and CAEP in <a href="https://www.okta.com/blog/2024/08/identity-threat-protection-with-okta-ai/"><u>Okta’s announcement blog post</u></a>.</p>
    <div>
      <h2>Get started today</h2>
      <a href="#get-started-today">
        
      </a>
    </div>
    <p>Cloudflare customers can easily <a href="https://developers.cloudflare.com/cloudflare-one/insights/risk-score/#send-risk-score-to-okta"><u>enable risk score sharing from the Cloudflare One SSO setup page</u></a>. This is available to customers whether you’ve already integrated with Okta or are setting up the integration for the first time. You will also be able to confirm that the feature was enabled in your audit logs.</p><p>If you’ve already integrated Okta within your Cloudflare One dashboard:</p><ol><li><p>As an admin, navigate to Settings &gt; Authentication and select the Okta login method.</p></li><li><p>Select “send risk score to Okta.”</p></li></ol><p>If you haven’t yet integrated Okta within your Cloudflare One dashboard:</p><ol><li><p>As an admin, navigate to Settings &gt; Authentication and select a new login method.</p></li><li><p>Follow the instructions to add Okta as an SSO.</p></li><li><p>Select “send risk score to Okta.”</p></li></ol><p>Now, whenever a user’s risk score changes within the organization, information is sent to Okta automatically and an audit log is documented.</p>
    <div>
      <h2>Uphold Zero Trust principles</h2>
      <a href="#uphold-zero-trust-principles">
        
      </a>
    </div>
    <p>In conclusion, the ability to incorporate rich context is essential for making accurate and informed access decisions. With vast amounts of data — including user logins, logouts, websites visited, and emails sent — human analysts would struggle to keep pace with modern security challenges. Cloudflare provides context in the form of a risk score, enabling Okta’s risk engine to make more informed policy decisions about users. This sharing of information powers the continuous evaluation required to enforce Zero Trust policies within your organization, ultimately strengthening your organization’s security posture.</p><p>Not yet a Cloudflare One customer? <a href="https://www.cloudflare.com/products/zero-trust/plans/enterprise/"><u>Reach out for a consultation</u></a> or contact your account manager.</p> ]]></content:encoded>
            <category><![CDATA[Cloudflare Zero Trust]]></category>
            <category><![CDATA[Okta]]></category>
            <category><![CDATA[Partners]]></category>
            <guid isPermaLink="false">7LZCXzvQgHwLVGoT4O4Pj6</guid>
            <dc:creator>Noelle Kagan</dc:creator>
            <dc:creator>Andrew Meyer</dc:creator>
            <dc:creator>James Chang</dc:creator>
            <dc:creator>Gavin Chen</dc:creator>
            <dc:creator>Matt Davis</dc:creator>
        </item>
    </channel>
</rss>