US Navy Veteran transitioning to cybersecurity. Background in digital marketing with 16+ years of experience, now applying my strategic and analytical skills to cloud security challenges.
A step-by-step implementation of a static website using Amazon S3, demonstrating how to configure bucket policies, set up static website hosting, and create a professional portfolio site.
Time Investment: Approximately 2 hours
AWS Services: Amazon S3
Status: Completed April 2025
This implementation demonstrates how to:
The first step was creating a new S3 bucket with appropriate settings for website hosting:
Next, I uploaded my portfolio website files to the newly created bucket:
The upload process was straightforward using the AWS Management Console, which provides a simple drag-and-drop interface.
To enable website hosting functionality on the S3 bucket:
After completing this step, AWS provided a bucket endpoint URL - the public address where the website would be accessible.
http://bucket-name.s3-website-region.amazonaws.com
When first attempting to access the site, I encountered a 403 Forbidden error. Despite disabling "Block all public access" at the bucket level, the individual objects were still private by default.
To resolve this issue, I implemented two different approaches:
I also implemented a bucket policy for more comprehensive access control:
This policy accomplishes two critical things:
Once permissions were correctly configured, I conducted several tests:
Through this project, I gained practical experience with two different approaches to managing S3 permissions:
While AWS generally recommends using bucket policies over ACLs for most scenarios, understanding both methods provides valuable flexibility when managing S3 resources.