Using S3 bucket as a file server for the public


We basically want to collect files from external customers into a file server.

We were thinking of using the S3 bucket as the file server that customers can interact with directly.

Is it possible to accomplish this where we create a bucket for each customer, and he can be given a link to the S3 bucket that also serves as the UI for him to drag and drop his files into directly?

i. He shouldn't have to log-in to AWS or create an AWS account

ii. He should directly interact with only his S3 bucket (drag-drop, add, delete files), there shouldn't be a way for him to check other buckets. We will probably create many S3 buckets for our customers in the same AWS account. His entry point into the S3 bucket UI is via a link (S3 bucket URL perhaps)

If such a thing is possible - would love some general pointers.

  • Please let me know if I answered your question

asked a year ago750 views
2 Answers

Hi, @ababuji

The S3 bucket has a function that allows you to use it without authentication by making public settings.

Also, some file upload tools support S3 buckets.

  • WinSCP
  • Cyberduck
profile picture
answered a year ago

Yes, it is possible to use Amazon S3 buckets as file servers for external customers to upload and download files without the need for them to log in to AWS or create an AWS account. You can create a separate S3 bucket for each customer and provide them with a unique URL that allows them to directly access and interact with their respective buckets.

Here are the general steps you can follow to set up an S3 bucket for each customer:

Create an AWS account: If you haven't already done so, create an AWS account and sign in to the AWS Management Console.

Create an S3 bucket: In the AWS Management Console, create a new S3 bucket for each customer. When creating the bucket, make sure to enable "Block all public access" to ensure that the bucket is not accessible by anyone other than the intended customer.

Configure bucket policies: Once you have created the S3 bucket, you can configure the bucket policies to allow the customer to upload and download files. You can use S3 bucket policies to restrict access to the bucket to a specific IP address or range, or to require the use of a pre-signed URL.

Provide customer access: Once the bucket policies are configured, you can provide the customer with a unique URL that allows them to directly access and interact with their respective S3 bucket. You can also provide them with instructions on how to upload and download files to and from the bucket.

Monitor access: Finally, you should monitor the access to the S3 buckets to ensure that only the intended customer is accessing their respective bucket.

It's important to note that setting up an S3 bucket for each customer can be a time-consuming process, especially if you have a large number of customers. Additionally, you will need to ensure that the bucket policies are configured correctly to ensure the security and privacy of the data.

I hope this helps! Let me know if you have any further questions.

answered 7 months ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions