How to5 min readOctober 7, 2026

Previewing and sharing files in Amazon S3: the complete guide

How to open files in Amazon S3 without downloading them and share them safely with people outside the company, in reading order.

JeVaughn Ferguson
Founder, developer
The short version

Previewing well means handling the formats a browser can't show on its own, without copying files out of your account. Sharing well means links that expire, can be revoked and record who opened them. Presigned URLs and correct Content-Types cover a single file; a team needs both jobs done in one place.

Getting staff into an S3 bucket is only half the job. The day-to-day friction comes after that: every PDF lands in a Downloads folder, iPhone photos won't open, a 2 GB zip has to be downloaded just to see what is inside, and sending a file to a client means a script or an email attachment nobody can take back.

This guide collects our articles on those two jobs, previewing and sharing, in the order teams usually hit them. If you haven't solved access yet, start with our guide to S3 access for non-technical teams.

Open files without downloading them

A browser can show many S3 objects inline if the object's Content-Type is right and the request asks for inline display. That works for a single PDF and stops working for Office documents, HEIC photos, large video and anything in a cold storage class. The first article compares the four ways to preview; the second lists what to check before you pick a viewer for a whole team.

Look inside archives before anyone extracts them

S3 can't unzip anything, but a zip keeps its table of contents at the end of the file. A couple of range requests read that list, so you can check the file count, the unpacked size and the paths before anything is extracted or copied to a laptop.

Share files outside the company

A link that leaves the company should expire, be revocable, know who opened it, and point at the file rather than a copy. A public object meets none of those. A presigned URL meets the first. An email attachment creates a copy you no longer control. Start with the checklist, then the mechanics of presigned URLs if you are building it yourself.

Getting files in

Previews and shares assume the files are in the bucket. If people still email files to an engineer to upload, this covers the four ways in, from the console to a workspace, and the size limits that decide between them.

Try it in BucketDesk

Starter is free. Deploy a scoped role with CloudFormation, sign in, and browse, without handing anyone an access key.

Connect a bucket

Primary sources

Discussion

0 comments · open to guests · moderated
Comments appear after a quick review.

Liked this? Get the next article by email. No schedule, no filler, one click to leave.

Keep reading

All writing →
Product decisions9 min

Amazon Textract or Claude on Amazon Bedrock: which one should read the documents in your S3 bucket?

Two AWS services can read a PDF in your bucket. One is a scanner that fills in fields, the other is a reader you can ask questions. This explains which to reach for.Textract sync 10 MB / 1 page vs async 500 MB / 3,000 pages, FORMS, TABLES, QUERIES, LAYOUT, SIGNATURES feature types, per-page prices, Converse 4.5 MB x 5 document limit, citations need a text layer, Textract-then-Bedrock pipeline.

Product decisions8 min

Which Amazon Bedrock model should answer questions about your documents?

Bedrock offers dozens of models. For asking a contract or report a question, six things actually separate them, and most of them are not on the leaderboard.Converse document limits are model-independent, citations documented for Claude, cache minimums 512 to 4,096 tokens by model, Nova 20K cache cap and 5-minute TTL, aws_review-only models, geo and global inference profiles vs bedrock-mantle, EOL no sooner than dates, Marketplace billing lines.

Security8 min

Amazon Bedrock data retention modes: none, default or aws_review for business documents

When you ask AI on AWS about a company document, AWS now lets you choose whether that conversation may be kept. Here is what each choice means and who should make it.data_retention_mode none/default/aws_review/provider_data_share/inherit, project → account → model default resolution, allowed_modes and ValidationException, bedrock:PutAccountDataRetention with the DataRetentionMode condition key, and destination-Region storage under cross-Region inference.