<p>One possibility is mounting the bucket as <code>s3fs</code> and serving the root folder as usually done by Nginx.</p>

CC BY-SA 4.0
2019-08-17T08:09:39.300Z
2019-08-17T08:09:39.300Z
W.M.
<ol>
<li><p><strong>Download - yes.</strong> Simply set each Object ACL to be publicly readable.</p>
</li>
<li><p><strong>List - sort of.</strong> If you set the Bucket ACL to publicly readable anyone can list the content. However it's a rather human-unfriendly XML listing.</p>
<p>You can generate your directory listings to some <code>index.html</code> files through an external process and configure the bucket to serve those.</p>
</li>
<li><p><strong>Basic auth - nope.</strong> You can look at something like <a href="https://aws.nz/best-practice/s3-presigned-url/" rel="nofollow noreferrer">S3 pre-signed URLs</a> to protect the content.</p>
</li>
</ol>
<p>Hope that helps :)</p>

CC BY-SA 4.0
2019-08-14T23:42:03.173Z
2019-08-14T23:42:03.173Z
2020-06-18T08:28:10.803Z
MLu
<p>In addition to Mlu answer, you can put Cloud front in front of the bucket and implement basic auth and probably listing/sorting with a Lambda@edge function.</p>

CC BY-SA 4.0
2019-08-17T22:51:08.173Z
2019-08-17T22:51:08.173Z
jdog
<p>Does <code>AWS S3</code> provide a way to make bucket's files available over <code>HTTP</code> preferably protected with <code>BASIC_AUTH</code>? I mean listing the files (index) and make it possible to download them over <code>HTTP</code>.</p>

<amazon-web-services><amazon-s3><http>
How to make an AWS S3 bucket accessible over HTTP?
W.M.
# How to make an AWS S3 bucket accessible over HTTP?

(Asked by: username_0 on 2019-08-14)

Does `AWS S3` provide a way to make bucket's files available over `HTTP` preferably protected with `BASIC_AUTH`? I mean listing the files (index) and make it possible to download them over `HTTP`.

**Tags:** amazon-web-services, amazon-s3, http


---

## 3 answers

### Answer by username_0 on 2019-08-17. Score: 2

One possibility is mounting the bucket as `s3fs` and serving the root folder as usually done by Nginx.


---

### Answer by username_1 on 2019-08-14. Score: 2

1. **Download - yes.** Simply set each Object ACL to be publicly readable.
2. **List - sort of.** If you set the Bucket ACL to publicly readable anyone can list the content. However it's a rather human-unfriendly XML listing.

   You can generate your directory listings to some `index.html` files through an external process and configure the bucket to serve those.
3. **Basic auth - nope.** You can look at something like [S3 pre-signed URLs](https://aws.nz/best-practice/s3-presigned-url/) to protect the content.

Hope that helps :)


---

### Answer by username_2 on 2019-08-17. Score: 1

In addition to Mlu answer, you can put Cloud front in front of the bucket and implement basic auth and probably listing/sorting with a Lambda@edge function.


---

