Built so security teams sign off.
Credentials are encrypted in your browser before they reach us and decrypted only to run the operation you asked for. Uploads, editing, cross-server transfers, and ZIP downloads process object contents in memory without persisting them. Individual downloads go straight from your bucket to the browser. No per-person IAM users to rotate at off-boarding. MIT-licensed and self-hostable inside your own VPC.
- Credentials encrypted in your browser — decrypted only in memory, to sign
- No persistent object storage — contents are processed for your requested operations
- MIT-licensed and self-hostable inside your VPC
Why teams pick S3 Viewer
A tool you can hand to your security review.
Client-encrypted credentials
Access keys are encrypted in your browser before they are sent — AES-256-GCM with the key wrapped using RSA-OAEP (SHA-256). Decrypted in memory only to run the operation you asked for, then discarded. They never come back to the browser, never appear in logs, never return in API responses.
No persistent object storage
Uploads stream through the API into your bucket using a single request or browser-coordinated multipart requests. Editing, cross-server transfers, and ZIP downloads also process contents in memory without persisting them. Individual downloads and media previews load directly from your bucket over 15-minute presigned URLs.
No IAM users to rotate
Members aren't IAM users — they sign in to S3 Viewer and their role is checked before any request is signed with the server's single credential. Removing one cuts their access on the next request; a download link they already opened keeps working for up to 15 minutes. No AWS keys to cycle, nothing for you to forget about.
Tamper-evident audit log
Owners can switch on an audit log per server. Each record is hash-chained to the one before it, so Verify integrity catches edited or missing rows. Choose who can view it, whether it records everything or only changes and downloads, and how long records are kept; export to CSV any time.
Self-host on your VPC
MIT-licensed. Self-host with PostgreSQL, your own RSA key pair, and HTTPS — credentials never have to leave your network.
Open and auditable
The full source is on GitHub. Read the encryption code, the request signing path, and the role checks for yourself before you trust it.
How it works
Three steps to your bucket.
No agents to install, no infrastructure to manage. Paste credentials and you're browsing.
- 01
Connect with least-privilege keys
Use an IAM policy scoped to the buckets and operations you actually need — typically s3:ListBucket, s3:GetObject, s3:PutObject, and s3:DeleteObject on specific bucket ARNs. If your token can't call ListBuckets, name the buckets it may reach when you add the server. - 02
Invite the team — no IAM users to mint
Each member gets their own login and a role — Owner, Admin, Editor or Viewer — with a per-bucket override where you need one. Off-boarding is removing them under Settings, Members; you don't rotate any AWS keys because they never had any. - 03
Self-host if compliance demands it
Drop the open-source build inside your VPC. Credentials, sessions, and request signing all stay on your infrastructure — self-hosted, there is no third party in the request path at all.
FAQ
Common questions.
Direct answers we wish we'd had when picking a viewer.
Where are my AWS credentials stored?
Do you store the contents of my S3 objects?
How is this safer than minting IAM users for every teammate?
Can I run S3 Viewer entirely inside my own infrastructure?
How do I off-board someone who's leaving?
Is there an audit log?
What IAM policy should I use?
Is the source code open?
Related guides
Step-by-step how-tos.
Granular permissions
The IAM s3:prefix Condition that everyone misses, plus folder-limited roles for when IAM is more than you need.
Invite a teammate
Skip per-person IAM users for human collaboration. Email invite, per-bucket role, optional folder limit, one-click revoke.
Delete a file
Versioning, delete markers, MFA Delete — and how to actually purge instead of soft-deleting.
Keep exploring
Other use cases
Multi-cloud
AWS S3, Cloudflare R2, MinIO, B2, and Wasabi — same sidebar, same file browser, one server at a time.
Sharing without AWS
Email-invite clients and execs to a clean browser view of one bucket — revocable in one click, no IAM.
Team workspaces
Per-bucket roles with optional folder limits, no per-person IAM, and one-click off-boarding without rotating any keys.