Since our founding in 2010, Cloudflare has prioritized using our own services to solve our internal IT and security challenges. This approach helps us test and improve capabilities before shipping them to customers and has been foundational in how Cloudflare has secured our own workforce.
As Cloudflare’s attack surfaces grow with the addition of more employees, customers, and technology, we have an obligation to further strengthen our security posture and equip our IT and security teams with strong visibility and control. In response, we’ve built and adopted services from Cloudflare One, our SASE and SSE platform, to secure access to applications, defend against cyber threats, and protect sensitive data.
Cloudflare spans more than 3,500 people in dozens of offices and remote locations. This case study explores how Cloudflare uses our own Cloudflare One services to keep users safe and productive across the organization.
“Securing Cloudflare with our own services is the most effective way not only to protect our business, but also to innovate for our customers,” says Grant Bourzikas, Chief Security Officer. “Our commitment to protecting Cloudflare with Cloudflare helps our security team and services stay ahead of the curve as our organization continues to grow in ambition and complexity.”
Cloudflare follows Zero Trust best practices to secure access to all self-hosted applications for all users, whether remote or in-office. Specifically, we use our own Zero Trust Network Access (ZTNA) service (Cloudflare Access) to verify identity, enforce multi-factor authentication (MFA) with hardware keys, and evaluate device posture for every request. This posture evolved over several years and has enabled Cloudflare to better protect our growing workforce more effectively and advise customers based on our own experiences.
Cloudflare’s interest in Zero Trust began with a practical problem that our engineers solved for themselves: streamlining access to developer environments without the hassle of a Virtual Private Network (VPN).
In 2015, on the rare occasions when employees worked remotely, they were forced to backhaul traffic through an on-prem VPN appliance to reach internally-hosted applications. The VPN’s latency and unresponsiveness particularly frustrated on-call engineers, who had to log in at odd hours to triage time-sensitive problems.
To solve their own pain point, our engineers built Cloudflare Access, which started as a reverse proxy service that routed access requests through the closest Cloudflare data center, instead of backhauling through VPN hardware. For each request, Access verified users based on our identity provider in a browser window, freeing them from the inconvenience and risks of remembering VPN client login credentials.
The smooth authentication experience drove organic adoption of Access for more apps and further reduced reliance on the VPN. Engineers started by protecting Grafana with this new authentication workflow, followed by web apps like our Atlassian suite and eventually even non-HTTP resources.
The sudden transition to remote work during the pandemic only accelerated this migration of apps behind Access. By summer 2020, Cloudflare’s IT teams had achieved an ~80% reduction in the time spent servicing VPN-related tickets and a ~70% reduction in ticket volume compared to the prior year, resulting in time savings estimated at $100K annually.
In early 2021, Cloudflare’s security team mandated that all internally-hosted applications move behind Access, helping us reduce our attack surface with least privilege, default-deny and identity-based controls. Later that year, Cloudflare had deprecated its VPN entirely, and we have translated our experiences into prescriptive guidance for other organizations.
Onboarding and offboarding employees has also gotten simpler. New employees no longer have to learn to set up a VPN, saving upwards of 300 hours annually for the hundreds of new hires in 2020. Instead, configuring application access is now largely automated via Cloudflare’s integration with the infrastructure-as-code tool Terraform.