Cloudflare Access
Cloudflare Access provides authentication in front of any web resource — no code changes needed. Free for up to 50 users.
How it works
Section titled “How it works”Cloudflare Access sits between the user and the resource. Before anyone can reach the site, they must authenticate via one of the configured identity providers (email OTP, Google, GitHub, etc.).
1. Enable Zero Trust
Section titled “1. Enable Zero Trust”- Log into Cloudflare Dashboard
- Go to Zero Trust (in the sidebar)
- Set up your Zero Trust organisation if you haven’t already
2. Create an Access application
Section titled “2. Create an Access application”- Go to Access → Applications → Add an application
- Choose Self-hosted
- Configure:
- Application name — e.g. “WAGE Docs”
- Session duration — how long before re-auth (e.g. 24 hours)
- Application domain — the domain/subdomain to protect (e.g.
docs.yourdomain.com)
3. Create an Access policy
Section titled “3. Create an Access policy”- Policy name — e.g. “Team access”
- Action — Allow
- Include rules — choose who can access:
- Emails — specific email addresses
- Email domains — e.g.
@yourdomain.com(anyone with that email domain) - Identity providers — Google, GitHub, etc.
4. Point your domain
Section titled “4. Point your domain”Ensure the domain/subdomain in step 2 points to where your docs site is deployed (Cloudflare Pages, Netlify, Vercel, etc.).
Deploying the docs site behind Access
Section titled “Deploying the docs site behind Access”The recommended setup for this docs site:
- Deploy to Cloudflare Pages (free, integrates natively with Access)
- Set up a custom domain (e.g.
docs.yourdomain.com) - Add a Cloudflare Access policy to protect that domain
- Team members authenticate via email OTP or Google — no passwords to manage
- Cloudflare Access is free for up to 50 users
- Users authenticate once per session duration — not on every page load
- Access works with any deployment target, not just Cloudflare Pages
- You can create multiple policies for different levels of access