Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
47 changes: 47 additions & 0 deletions src/content/changelog/workers/2026-06-28-workers-access.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
---
title: You can now enable Access on a Worker or all Workers at once
description: Two new ways to protect Workers with Cloudflare Access. Apply a policy to a single Worker across all its domains, or set a default policy for every Worker in your account.
products:
- workers
date: 2026-06-28
---

import { Width } from "~/components";
import { Image } from "astro:assets";
import protectAllWorkers from "~/assets/images/changelog/workers/protect-all-workers.png";
import protectOneWorker from "~/assets/images/changelog/workers/protect-one-worker.png";

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I feel like this isn't normally how we embed images in changelogs? but probably not a big deal if it works

import makeWorkerPublic from "~/assets/images/changelog/workers/make-worker-public.png";
import chooseWhoCanSignIn from "~/assets/images/changelog/workers/choose-who-can-sign-in.png";
import accessPolicies from "~/assets/images/changelog/workers/access-policies.png";

You now have two new ways to protect your Workers with Cloudflare Access. With these you can:

- Set an Access policy on preview deployments only, or on both preview and production deployments.
- Control who can sign in by Cloudflare account membership, email address, or email domain.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is it worth calling out that you can do more expressive policies in the ZT dash?

<Width size="medium">
<Image src={chooseWhoCanSignIn} alt="Access policy configuration for controlling who can sign in" />
</Width>

**Protect a single Worker across all its domains at once**

Until now, if a Worker was reachable on a route, a Custom Domain, and a `workers.dev` URL, you had to create a separate Access application for each one. Now you apply one Access policy to the Worker itself. You can choose to apply it to all preview URLs associated with the Worker, or to both previews and production.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd call out the explicit payoff of this. it means that Worker+Access apps no longer have a fragile URL matching link. Changing a domain won't impact Access app coverage

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Complete me

<Image src={protectOneWorker} alt="Access setting for protecting a single Worker" />

**Protect all new and existing Workers by default**

Instead of configuring Access one Worker at a time, you can turn on account-wide protection and require sign-in for all Workers at once.
<Image src={protectAllWorkers} alt="Account-wide Access setting that protects all Workers" />

If you turn on account-wide protection but a specific Worker should remain publicly accessible, you can add a Worker-level bypass to exempt it.
<Image src={makeWorkerPublic} alt="Make a Worker public when all Workers are protected" />

**View all of your policies**

You can view and manage all of your Access policies in the **Access** tab of the Workers & Pages section in the dashboard.
<Image src={accessPolicies} alt="Access tab showing all configured Access policies" />

**API and programmatic access**

You can also set up these policies through the Workers API instead of the dashboard.

For setup instructions, refer to [Cloudflare Access for Workers](/workers/configuration/cloudflare-access/).
Loading