Madison College • Fall 2026 madisoncollege.edu

Project 1 — S3 Static Website Hosting

← Back to Projects
Objectives
  • Create AWS S3 buckets
  • Explore S3 bucket settings relating to website hosting
  • Create IAM users & groups
  • Create and assign policies for users that provide necessary access
Project Overview

You and a group of friends have decided to create a web-based startup, and your plan is to use AWS services as the technology platform. Initially, your goal is to set up a static website hosted within AWS using S3. To begin, you will be working on the S3 bucket setup. You will also need to create an IAM account that allows the instructor to log in to your AWS account to verify your setup. The instructor will need to be able to access S3 as an S3 administrator.

Project Details

S3

  1. Create a bucket for your company using the naming convention firstName-lastName-companyName, where firstName and lastName are your first and last name and companyName is the fictional company name you want to use for Project 1.
  2. The company bucket should be set up to host a static website, and that website should be publicly accessible. Set the default document to index.html and the error document to error.html. Additionally, enable versioning on the bucket.
  3. Within your company bucket, create 3 folders: src, financials, private.
  4. Create a website that includes 5 HTML pages. Include index.html and error.html at the root of the bucket. The 3 other pages can be anything you like and should be located inside the /src folder. (screenshot required)
  5. Update index.html so there is a revision (this should happen after versioning has already been enabled). Verify that you now have multiple versions of the index.html file. (screenshot required)

IAM

  1. Create an IAM account that allows the instructor to log in to your AWS account (this account can and should be removed after receiving a grade for Project 1). This account needs to be able to access S3 as an S3 administrator. Include login instructions as part of your project submission.

Tests and Verification

  • What is the URL of my company website?
  • Does the instructor account have access to S3 and its various functions?
  • Is the website publicly accessible?
  • If a file is modified, is there a versioning system in place?
Grading Rubric (Total: 50 points)

S3 Setup (20 points)

  • Bucket naming & creation: 5 points — correct naming convention and bucket exists
  • Website hosting settings: 5 points — static website enabled, index/error configured, public access properly set
  • Folder structure: 3 points — src, financials, private created
  • Versioning enabled: 3 points — versioning turned on and evidence provided
  • Access policy & public availability: 4 points — bucket policy/CORS and public access settings correct

Website Content (10 points)

  • Root pages: 3 points — index.html and error.html present at bucket root
  • Additional pages: 3 points — three pages inside /src present and functional
  • Screenshots: 2 points — screenshots of website and files (including versions)
  • Public URL included: 2 points — working URL provided in submission

IAM Setup (10 points)

  • Instructor IAM account & permissions: 6 points — account created and granted S3 administrator access
  • Login instructions: 2 points — clear login steps and credential delivery notes provided
  • IAM screenshots: 2 points — screenshot of user and attached policy

Tests & Verification (10 points)

  • Website accessibility: 3 points — site loads publicly without errors
  • Instructor access verified: 3 points — instructor can access S3 functions as described
  • Versioning verification: 2 points — evidence of multiple versions after modification
  • Overall documentation: 2 points — submission includes URL, screenshots, and notes
What did I learn?
  • Creating S3 resources
  • Configuring S3 buckets for website hosting
  • Creating IAM accounts and assigning permissions
  • Managing access to AWS resources