Cybersecurity glossary

What is a Public Storage Bucket?

Learn what a public storage bucket is, how ACLs and policies make objects world-readable, why “public for a CDN” still leaks, and which org controls prevent accidental exposure.

Cloud, containers and KubernetesUpdated August 13, 2026
Also known asPublic object storageOpen cloud bucketWorld-readable bucket

Definition

A public storage bucket is a cloud object store (such as S3, GCS, or Azure Blob) whose ACL, IAM policy, or anonymous-access setting allows anyone on the internet—or any principal in the cloud—to list or read objects without being an intended consumer.

Why public storage buckets matter

Object storage is where backups, data lakes, build artifacts, and “temporary” exports quietly accumulate. When that store is public, the internet does not need an exploit—only a URL, a scanner, or a search engine.

Unlike a mis-set security group on a database that still needs a password, anonymous object read is the data itself. Rotation after the fact cannot unsay a downloaded dump.

How a bucket becomes world-readable

1

A store is created for convenience

A team needs “a place for files.” The default may be private, but tutorials and copied modules often are not.

2

An ACL or resource policy widens

AllUsers, AllAuthenticatedUsers, Principal:*, or anonymous blob access is attached.

3

Block-public guardrails are off

Account-level Block Public Access, org policies, or Azure anonymous-access blocks are disabled or scoped out.

4

Sensitive prefixes land in the same bucket

A static site, a log export, and a database dump share one name because renaming felt expensive.

5

The internet enumerates it

Known bucket-name patterns, public datasets, and referer logs expose the objects.

Public does not mean one setting

Public list

Anyone can enumerate keys. Even “secret” filenames become a catalog.

Public read

Anyone who knows or guesses a key can download the object.

Public write

Anyone can upload. That is malware hosting, not a CDN.

Authenticated-users read

Any cloud customer, not your staff. Treat it as public for threat modeling.

Intentional public assets versus leaks

UseAcceptable patternLeak pattern
Static website / public JSDedicated bucket, public read only, no list, no backupsSame bucket as env files, SQL dumps, or .git
Partner data exchangeNamed principal in IAM or short-lived signed URLsAnonymous read “so they don’t need an account”
CDN originOAC/origin auth so only the CDN can fetchOrigin bucket also world-readable as a shortcut
Logs and backupsPrivate, KMS-encrypted, tight IAM, lifecycle expiryPublic “just for the vendor support session”

Public bucket prevention checklist

  • Turn on account- and org-level Block Public Access (or equivalent) and require a break-glass exception to disable it.
  • Scan IaC and live accounts for AllUsers, anonymous access, and Principal:* on storage.
  • Split public website assets from data, logs, and backups—never mix prefixes in one bucket.
  • Prefer signed URLs or CDN origin authentication over anonymous object read.
  • Encrypt with customer-managed keys and deny unencrypted uploads as defense in depth—not as a substitute for private ACLs.
  • Enable access logging and alert on anonymous GetObject from unexpected prefixes.
  • Inventory existing buckets; public exposure is often years old, not last week’s deploy.
  • If exposure happened, assume download, rotate secrets found in objects, and run a data-impact assessment.

The practical takeaway

A public storage bucket is object storage that the internet (or every cloud customer) can read, list, or write. Most incidents are copy-paste policies and mixed-use buckets, not novel exploits.

Block public access at the organization, keep public sites in dedicated stores, and grant partners identities—not anonymity. If a file should not be on a billboard, it should not be in a public bucket.

Related security terms

Frequently asked questions

What is a public storage bucket in simple terms?

It is a cloud folder of files that anyone can download (and sometimes list or overwrite) because an ACL or policy says “everyone” instead of a named identity.

Is a public website bucket always a vulnerability?

Public read can be intentional for static sites. It is a vulnerability when the bucket also holds backups, configs, or when public write/list is enabled. Separate public assets from private data.

Does “authenticated users” mean my company only?

No. On several clouds that group means any customer of the cloud, not your directory. Treat it as nearly public.

Can I hide objects with a long random URL?

No. Listing, access logs, referrers, and scanners find prefixes. Unlisted is not authorization. Use IAM and signed URLs with expiry.

How do buckets become public by accident?

Copied Terraform, a static-website tutorial, a misplaced Principal:*, disabled Block Public Access, or a CDN origin that reused a data bucket.

What should happen if a production bucket was public?

Close access, inventory who downloaded what from logs, rotate any secrets that lived there, and treat exposed personal data as a breach-assessment event.

How do I allow a partner to read objects without going public?

Grant that partner’s cloud principal in a resource policy, or issue short-lived signed URLs. Do not set anonymous read.

References

Explore authoritative guidance and frameworks related to public storage bucket.

Explore every security definition

Return to the glossary to search by term, alias, starting letter, or security category.

Browse glossary