<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: MIDHUN KRISHNA B</title>
    <description>The latest articles on DEV Community by MIDHUN KRISHNA B (@midhun_krishnab_d5791755).</description>
    <link>https://dev.to/midhun_krishnab_d5791755</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4125521%2F32150cee-984c-4942-95f7-a0486a08499f.png</url>
      <title>DEV Community: MIDHUN KRISHNA B</title>
      <link>https://dev.to/midhun_krishnab_d5791755</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/midhun_krishnab_d5791755"/>
    <language>en</language>
    <item>
      <title>#M for Midhun, M for Macie: Exploring Amazon Macie 🔐☁️</title>
      <dc:creator>MIDHUN KRISHNA B</dc:creator>
      <pubDate>Wed, 16 Sep 2026 02:08:15 +0000</pubDate>
      <link>https://dev.to/midhun_krishnab_d5791755/m-for-midhun-m-for-macie-exploring-amazon-macie-3i3o</link>
      <guid>https://dev.to/midhun_krishnab_d5791755/m-for-midhun-m-for-macie-exploring-amazon-macie-3i3o</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;Cloud storage makes it easy for organizations, colleges, and students to store large amounts of data. However, storing data in the cloud also creates an important question: &lt;strong&gt;How do we know whether sensitive information is stored securely?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;AWS provides several security services to address different security requirements. One of them is &lt;strong&gt;Amazon Macie&lt;/strong&gt;, a fully managed data security and data privacy service designed to help discover sensitive data stored in Amazon S3.&lt;/p&gt;

&lt;p&gt;Amazon Macie uses &lt;strong&gt;machine learning and pattern matching&lt;/strong&gt; to discover sensitive information, monitor the security posture of S3 buckets, and generate findings when it detects potential security or privacy issues.&lt;/p&gt;

&lt;p&gt;For me, this service was an interesting choice because my name starts with &lt;strong&gt;M&lt;/strong&gt;, and Amazon Macie also starts with &lt;strong&gt;M&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  What is Amazon Macie?
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Amazon Macie&lt;/strong&gt; is an AWS data security service that focuses primarily on data stored in &lt;strong&gt;Amazon S3&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Macie automatically maintains an inventory of S3 general-purpose buckets and evaluates them for security and access-control issues. For example, if Macie detects that an S3 bucket has become publicly accessible, it can generate a finding for investigation.&lt;/p&gt;

&lt;p&gt;Macie can also inspect S3 objects to identify sensitive information such as personally identifiable information (PII), financial information, and credentials. It uses AWS-managed data identifiers as well as custom data identifiers defined by the user.&lt;/p&gt;

&lt;p&gt;In simple terms:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;S3 stores the data, while Macie helps us understand whether sensitive data exists there and whether the S3 environment has security risks.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Why was Amazon Macie created?
&lt;/h2&gt;

&lt;p&gt;As organizations move more data to cloud storage, it becomes difficult to manually inspect every file and determine whether it contains sensitive information.&lt;/p&gt;

&lt;p&gt;For example, a college might have thousands of files containing:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Student information&lt;/li&gt;
&lt;li&gt;Academic records&lt;/li&gt;
&lt;li&gt;Research documents&lt;/li&gt;
&lt;li&gt;Contact information&lt;/li&gt;
&lt;li&gt;Project datasets&lt;/li&gt;
&lt;li&gt;Financial documents&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Manually checking all these files would take significant time.&lt;/p&gt;

&lt;p&gt;Macie was designed to automate the discovery and reporting of sensitive data in Amazon S3 while also providing visibility into S3 security and privacy risks.&lt;/p&gt;




&lt;h2&gt;
  
  
  How Does Amazon Macie Work?
&lt;/h2&gt;

&lt;p&gt;The basic workflow can be understood as:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;                College / Organization
                         │
                         ▼
                  ┌─────────────┐
                  │  Amazon S3  │
                  │ Data / Files│
                  └──────┬──────┘
                         │
                         ▼
                  ┌─────────────┐
                  │ Amazon Macie│
                  └──────┬──────┘
                         │
             ┌───────────┴───────────┐
             ▼                       ▼
      Sensitive Data          Security / Privacy
       Detection                  Findings
             │                       │
             └───────────┬───────────┘
                         ▼
                  Administrator
                    Investigation
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;When Macie is enabled, it creates and maintains an inventory of S3 general-purpose buckets. It can then evaluate the buckets for security and access-control issues.&lt;/p&gt;

&lt;p&gt;For sensitive-data discovery, Macie provides two main approaches:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Automated sensitive data discovery&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sensitive data discovery jobs&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Automated discovery provides broad visibility by evaluating the S3 inventory and selecting representative objects for analysis. Discovery jobs provide more targeted control because the user can specify which buckets and objects should be analyzed and whether the job should run once or periodically.&lt;/p&gt;




&lt;h2&gt;
  
  
  Key Features
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Automated Sensitive Data Discovery
&lt;/h3&gt;

&lt;p&gt;Macie can automatically analyze representative S3 objects to identify where sensitive data may exist.&lt;/p&gt;

&lt;p&gt;This provides organizations with broader visibility without requiring administrators to manually inspect every file.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Sensitive Data Discovery Jobs
&lt;/h3&gt;

&lt;p&gt;Users can create specific discovery jobs to analyze selected S3 buckets and objects.&lt;/p&gt;

&lt;p&gt;These jobs can be configured for one-time analysis or scheduled analysis, making them useful for periodic security assessments.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Managed and Custom Data Identifiers
&lt;/h3&gt;

&lt;p&gt;Macie includes built-in techniques for detecting many types of sensitive information, including PII, financial information, and credentials.&lt;/p&gt;

&lt;p&gt;Users can also create &lt;strong&gt;custom data identifiers&lt;/strong&gt; using patterns such as regular expressions to detect information specific to their organization.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Security and Access Monitoring
&lt;/h3&gt;

&lt;p&gt;Macie continuously maintains an inventory of S3 general-purpose buckets and evaluates them for security and access-control concerns.&lt;/p&gt;

&lt;p&gt;If a potential security or privacy issue is detected, Macie creates a finding that administrators can investigate.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Findings and Reporting
&lt;/h3&gt;

&lt;p&gt;Macie produces findings containing details about detected sensitive data or S3 security issues.&lt;/p&gt;

&lt;p&gt;These findings can also be integrated with services such as &lt;strong&gt;Amazon EventBridge&lt;/strong&gt; and &lt;strong&gt;AWS Security Hub&lt;/strong&gt; for further monitoring and response workflows.&lt;/p&gt;




&lt;h2&gt;
  
  
  College / Student Use Case 🎓
&lt;/h2&gt;

&lt;p&gt;Consider an &lt;strong&gt;AI and Machine Learning department&lt;/strong&gt; that uses Amazon S3 to store student project datasets.&lt;/p&gt;

&lt;p&gt;The department may have files containing:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Student Dataset
Research Data
Project Reports
Student Information
Survey Results
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Some datasets may accidentally contain personal information such as names, email addresses, phone numbers, or other sensitive information.&lt;/p&gt;

&lt;p&gt;The department could use Macie to analyze its S3 environment and identify where sensitive information may exist.&lt;/p&gt;

&lt;p&gt;For example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Student Project
      │
      ▼
Amazon S3
      │
      ▼
Amazon Macie
      │
      ▼
Sensitive Data Finding
      │
      ▼
Department Administrator
      │
      ▼
Review / Remediation
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This could help students and administrators become more aware of data privacy while developing cloud-based applications.&lt;/p&gt;




&lt;h2&gt;
  
  
  Simple Practical Example
&lt;/h2&gt;

&lt;p&gt;Suppose a student uploads a CSV file to an S3 bucket:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;student_data.csv
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The file might contain:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Name,Email,Department
Arun,arun@example.com,AI &amp;amp; ML
Rahul,rahul@example.com,AI &amp;amp; ML
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A Macie sensitive-data discovery job can analyze the S3 object and report sensitive information that matches its detection criteria.&lt;/p&gt;

&lt;p&gt;A basic practical workflow is:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Create an S3 bucket.&lt;/li&gt;
&lt;li&gt;Upload a test file.&lt;/li&gt;
&lt;li&gt;Open Amazon Macie.&lt;/li&gt;
&lt;li&gt;Enable Macie for the AWS Region.&lt;/li&gt;
&lt;li&gt;Select the S3 bucket for analysis.&lt;/li&gt;
&lt;li&gt;Create a sensitive data discovery job.&lt;/li&gt;
&lt;li&gt;Run the job.&lt;/li&gt;
&lt;li&gt;Review the resulting findings.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;AWS provides an official getting-started workflow that includes enabling Macie, configuring result storage, exploring sample findings, creating a sensitive-data discovery job, and reviewing findings.&lt;/p&gt;

&lt;p&gt;For a student experiment, it is better to use &lt;strong&gt;dummy/test data rather than real personal information&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  Advantages
&lt;/h2&gt;

&lt;p&gt;Amazon Macie provides several benefits:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Automated discovery:&lt;/strong&gt; Reduces the need to manually inspect large numbers of S3 objects.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Security visibility:&lt;/strong&gt; Helps identify potential S3 security and access-control issues.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sensitive-data detection:&lt;/strong&gt; Can detect various categories of sensitive information.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Customization:&lt;/strong&gt; Custom data identifiers allow organizations to define their own detection patterns.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Integration:&lt;/strong&gt; Findings can be integrated with other AWS security and event-management services.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Limitations / Things to Consider
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Cost
&lt;/h3&gt;

&lt;p&gt;Macie is a paid AWS service, and pricing depends on factors such as the number of S3 buckets monitored, the number of S3 objects involved in automated discovery, and the amount of uncompressed data analyzed.&lt;/p&gt;

&lt;p&gt;AWS also provides a &lt;strong&gt;30-day free trial&lt;/strong&gt; when Macie is enabled for the first time, subject to the applicable conditions. AWS currently also provides a monthly free allowance for analysis of up to &lt;strong&gt;1 GB&lt;/strong&gt; of S3 data for sensitive-data discovery.&lt;/p&gt;

&lt;p&gt;Therefore, students should monitor their AWS usage and costs.&lt;/p&gt;

&lt;h3&gt;
  
  
  Complexity
&lt;/h3&gt;

&lt;p&gt;Macie is easier to use than building a complete sensitive-data detection system from scratch, but understanding findings, data identifiers, permissions, and S3 security configurations still requires AWS knowledge.&lt;/p&gt;

&lt;h3&gt;
  
  
  Scalability
&lt;/h3&gt;

&lt;p&gt;Macie is designed to work with S3 data estates at organizational scale. Automated discovery and targeted discovery jobs allow organizations to choose different levels of analysis.&lt;/p&gt;

&lt;h3&gt;
  
  
  Supported Data
&lt;/h3&gt;

&lt;p&gt;Macie does not analyze every possible S3 storage class and file format. The object must use a supported storage class and supported format for sensitive-data analysis.&lt;/p&gt;




&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Amazon Macie is an AWS service designed to improve visibility into sensitive data and security risks in Amazon S3.&lt;/p&gt;

&lt;p&gt;Its combination of &lt;strong&gt;machine learning, pattern matching, automated discovery, sensitive-data discovery jobs, security monitoring, and detailed findings&lt;/strong&gt; makes it useful for organizations that store important information in S3.&lt;/p&gt;

&lt;p&gt;For a college or student project, Macie can be particularly useful as an introduction to &lt;strong&gt;cloud security, data privacy, and responsible handling of sensitive information&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;My takeaway is simple:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Amazon S3 helps us store data, while Amazon Macie helps us understand and protect the sensitive data stored there.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;And that makes &lt;strong&gt;“M for Midhun, M for Macie”&lt;/strong&gt; a fitting introduction to my first AWS security deep dive. 🚀&lt;/p&gt;




&lt;h2&gt;
  
  
  References
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;AWS Documentation — What is Amazon Macie?&lt;br&gt;
&lt;a href="https://docs.aws.amazon.com/macie/latest/user/what-is-macie.html?utm_source=chatgpt.com" rel="noopener noreferrer"&gt;Amazon Macie Documentation&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;AWS Documentation — Getting Started with Amazon Macie&lt;br&gt;
&lt;a href="https://docs.aws.amazon.com/macie/latest/user/getting-started.html?utm_source=chatgpt.com" rel="noopener noreferrer"&gt;Getting Started with Amazon Macie&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;AWS Documentation — Discovering Sensitive Data with Macie&lt;br&gt;
&lt;a href="https://docs.aws.amazon.com/macie/latest/user/data-classification.html?utm_source=chatgpt.com" rel="noopener noreferrer"&gt;Discovering Sensitive Data with Macie&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;AWS Documentation — Amazon Macie Pricing&lt;br&gt;
&lt;a href="https://docs.aws.amazon.com/macie/latest/user/account-mgmt-costs-calculations.html?utm_source=chatgpt.com" rel="noopener noreferrer"&gt;Amazon Macie Pricing Documentation&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>blog</category>
    </item>
    <item>
      <title>Cloud Workshop Day 1: Building and Deploying My First HTML Portfolio on AWS</title>
      <dc:creator>MIDHUN KRISHNA B</dc:creator>
      <pubDate>Tue, 15 Sep 2026 06:54:57 +0000</pubDate>
      <link>https://dev.to/midhun_krishnab_d5791755/cloud-workshop-day-1-building-and-deploying-my-first-html-portfolio-on-aws-1mm0</link>
      <guid>https://dev.to/midhun_krishnab_d5791755/cloud-workshop-day-1-building-and-deploying-my-first-html-portfolio-on-aws-1mm0</guid>
      <description>&lt;h1&gt;
  
  
  From &lt;code&gt;index.html&lt;/code&gt; to the Cloud: Deploying My Portfolio with AWS S3 and CloudFront
&lt;/h1&gt;

&lt;p&gt;As part of my cloud workshop, I got the opportunity to build and deploy my own personal portfolio website using &lt;strong&gt;HTML, CSS, JavaScript, and AWS&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The website itself was straightforward — a single HTML-based portfolio — but deploying it to the cloud taught me much more than simply creating a webpage.&lt;/p&gt;

&lt;p&gt;I worked with &lt;strong&gt;Amazon S3&lt;/strong&gt; to host my website files and &lt;strong&gt;Amazon CloudFront&lt;/strong&gt; to distribute the website through a global content delivery network.&lt;/p&gt;

&lt;p&gt;Along the way, I also faced a few errors that helped me understand how cloud deployment actually works.&lt;/p&gt;

&lt;h2&gt;
  
  
  🛠️ Technologies Used
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;HTML&lt;/li&gt;
&lt;li&gt;CSS&lt;/li&gt;
&lt;li&gt;JavaScript&lt;/li&gt;
&lt;li&gt;Amazon S3&lt;/li&gt;
&lt;li&gt;Amazon CloudFront&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  1. Building My Portfolio Website
&lt;/h2&gt;

&lt;p&gt;I started by creating my portfolio as an HTML file.&lt;/p&gt;

&lt;p&gt;The main file was:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;index.html
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I used HTML to structure the website and CSS to design the interface. JavaScript was used wherever interactive functionality was required.&lt;/p&gt;

&lt;p&gt;The portfolio included sections such as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;About Me&lt;/li&gt;
&lt;li&gt;Skills&lt;/li&gt;
&lt;li&gt;Projects&lt;/li&gt;
&lt;li&gt;Education&lt;/li&gt;
&lt;li&gt;Experience / Journey&lt;/li&gt;
&lt;li&gt;Contact&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The goal was to create a simple, responsive portfolio that could showcase my skills and projects.&lt;/p&gt;

&lt;p&gt;At first, the website was running locally on my computer.&lt;/p&gt;

&lt;p&gt;The next challenge was:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;How can I make this website accessible online?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That's where AWS came in.&lt;/p&gt;




&lt;h1&gt;
  
  
  ☁️ 2. Creating an Amazon S3 Bucket
&lt;/h1&gt;

&lt;p&gt;The first AWS service I used was &lt;strong&gt;Amazon S3 (Simple Storage Service)&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;S3 can store static website files such as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;HTML&lt;/li&gt;
&lt;li&gt;CSS&lt;/li&gt;
&lt;li&gt;JavaScript&lt;/li&gt;
&lt;li&gt;Images&lt;/li&gt;
&lt;li&gt;Other frontend assets&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I created an S3 bucket specifically for my portfolio website.&lt;/p&gt;

&lt;p&gt;After creating the bucket, I uploaded my &lt;code&gt;index.html&lt;/code&gt; file along with the required website files.&lt;/p&gt;

&lt;p&gt;The basic structure looked like:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Portfolio Website
│
├── index.html
├── style.css
├── script.js
└── images/
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The important file was &lt;code&gt;index.html&lt;/code&gt;, because it served as the main entry point of the website.&lt;/p&gt;




&lt;h1&gt;
  
  
  🌐 3. Configuring the Website in S3
&lt;/h1&gt;

&lt;p&gt;After uploading the files, I configured the S3 bucket for hosting the static website.&lt;/p&gt;

&lt;p&gt;The idea was simple:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Browser
   ↓
AWS S3
   ↓
index.html
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;However, simply uploading a file to S3 does not automatically make it publicly accessible.&lt;/p&gt;

&lt;p&gt;I had to configure the required settings and permissions so that the website could be accessed properly.&lt;/p&gt;




&lt;h1&gt;
  
  
  ⚠️ 4. Facing the Access Denied Error
&lt;/h1&gt;

&lt;p&gt;One of the first problems I encountered was an:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;AccessDenied
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;error.&lt;/p&gt;

&lt;p&gt;The file existed inside the bucket, but accessing it through the website endpoint did not work as expected.&lt;/p&gt;

&lt;p&gt;This made me realize an important concept:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Uploading a file to cloud storage and making that file accessible through the internet are two different things.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;I had to check the bucket configuration and permissions carefully.&lt;/p&gt;

&lt;p&gt;After correcting the required settings, I was able to access the website through S3.&lt;/p&gt;




&lt;h1&gt;
  
  
  🚀 5. Adding Amazon CloudFront
&lt;/h1&gt;

&lt;p&gt;Once the website was working with S3, I wanted to use &lt;strong&gt;Amazon CloudFront&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;CloudFront is AWS's Content Delivery Network (CDN). It can distribute website content through edge locations around the world.&lt;/p&gt;

&lt;p&gt;The architecture became:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;User
  ↓
CloudFront
  ↓
Amazon S3
  ↓
index.html
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Instead of users directly accessing the S3 bucket, CloudFront could act as the front-facing distribution layer.&lt;/p&gt;

&lt;p&gt;This also introduced another set of configuration requirements.&lt;/p&gt;




&lt;h1&gt;
  
  
  ❌ 6. The CloudFront &lt;code&gt;NoSuchKey&lt;/code&gt; Error
&lt;/h1&gt;

&lt;p&gt;After configuring CloudFront, I encountered another error:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;NoSuchKey
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The error indicated that CloudFront was looking for:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;index.html/index.html
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;instead of simply:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;index.html
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;At first, this was confusing because the &lt;code&gt;index.html&lt;/code&gt; file definitely existed in the S3 bucket.&lt;/p&gt;

&lt;p&gt;I then checked the CloudFront configuration.&lt;/p&gt;




&lt;h1&gt;
  
  
  🔍 7. Finding the Problem
&lt;/h1&gt;

&lt;p&gt;The problem was related to the &lt;strong&gt;Origin Path&lt;/strong&gt; configuration.&lt;/p&gt;

&lt;p&gt;The CloudFront origin had been configured with an origin path that already pointed toward &lt;code&gt;index.html&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;At the same time, the CloudFront distribution was configured with:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Default Root Object:
index.html
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This caused CloudFront to effectively construct a path similar to:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;/index.html/index.html
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That file obviously did not exist.&lt;/p&gt;

&lt;p&gt;The correct configuration was to remove the unnecessary origin path and allow CloudFront to use:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Default Root Object → index.html
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;After correcting the configuration, CloudFront could find the actual file in the S3 bucket.&lt;/p&gt;




&lt;h1&gt;
  
  
  🔄 8. Creating a CloudFront Invalidation
&lt;/h1&gt;

&lt;p&gt;After changing the CloudFront configuration, I created an invalidation for:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;/*
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This tells CloudFront to remove the cached versions of the requested objects so that the updated configuration/content can be served.&lt;/p&gt;

&lt;p&gt;After waiting for the distribution to update, I tested the website again.&lt;/p&gt;

&lt;p&gt;This time, the portfolio loaded successfully.&lt;/p&gt;




&lt;h1&gt;
  
  
  🎉 9. Final Architecture
&lt;/h1&gt;

&lt;p&gt;The final deployment looked like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;             ┌─────────────────┐
             │      User       │
             └────────┬────────┘
                      │
                      ▼
             ┌─────────────────┐
             │  CloudFront CDN │
             └────────┬────────┘
                      │
                      ▼
             ┌─────────────────┐
             │    Amazon S3    │
             │                 │
             │   index.html    │
             │   CSS / JS      │
             └─────────────────┘
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The portfolio was no longer limited to my local computer.&lt;/p&gt;

&lt;p&gt;It had been deployed to the AWS cloud and could be delivered through CloudFront.&lt;/p&gt;




&lt;h1&gt;
  
  
  🧩 Challenges I Faced
&lt;/h1&gt;

&lt;p&gt;The deployment was not completely straightforward.&lt;/p&gt;

&lt;p&gt;I faced several issues during the process:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. S3 &lt;code&gt;AccessDenied&lt;/code&gt;
&lt;/h3&gt;

&lt;p&gt;The website files existed, but the required access configuration was not correct.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Bucket Configuration
&lt;/h3&gt;

&lt;p&gt;I had to carefully check the bucket settings and make sure the configuration matched the website deployment requirements.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. CloudFront &lt;code&gt;NoSuchKey&lt;/code&gt;
&lt;/h3&gt;

&lt;p&gt;CloudFront was looking for:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;index.html/index.html
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;instead of:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;index.html
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  4. CloudFront Caching
&lt;/h3&gt;

&lt;p&gt;After making configuration changes, I had to create an invalidation so that the updated content could be served.&lt;/p&gt;

&lt;p&gt;These problems were actually one of the most valuable parts of the workshop because they forced me to understand what was happening instead of simply following deployment steps.&lt;/p&gt;




&lt;h1&gt;
  
  
  💡 What I Learned
&lt;/h1&gt;

&lt;p&gt;This workshop gave me practical experience with cloud deployment.&lt;/p&gt;

&lt;p&gt;Some of the key things I learned were:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;How static websites can be hosted using Amazon S3.&lt;/li&gt;
&lt;li&gt;How cloud storage permissions affect website accessibility.&lt;/li&gt;
&lt;li&gt;How CloudFront works as a CDN.&lt;/li&gt;
&lt;li&gt;How CloudFront connects to an S3 origin.&lt;/li&gt;
&lt;li&gt;How the Default Root Object works.&lt;/li&gt;
&lt;li&gt;Why correct origin configuration is important.&lt;/li&gt;
&lt;li&gt;How caching can affect website updates.&lt;/li&gt;
&lt;li&gt;How to troubleshoot AWS deployment errors.&lt;/li&gt;
&lt;li&gt;How a locally created HTML website can be moved to the cloud.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The biggest lesson for me was that &lt;strong&gt;deployment is not always about getting everything right on the first attempt&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Errors such as &lt;code&gt;AccessDenied&lt;/code&gt; and &lt;code&gt;NoSuchKey&lt;/code&gt; initially looked confusing, but investigating them helped me understand the underlying AWS configuration.&lt;/p&gt;




&lt;h1&gt;
  
  
  🌍 From a Local File to a Cloud Website
&lt;/h1&gt;

&lt;p&gt;Before this workshop, my portfolio was simply a website running on my computer.&lt;/p&gt;

&lt;p&gt;After the deployment process, the architecture became:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;HTML Portfolio
      ↓
    S3
      ↓
 CloudFront
      ↓
   Internet
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That transition gave me a practical understanding of how cloud services can be used to deploy real websites.&lt;/p&gt;

&lt;p&gt;It was a small project, but it was a valuable first step toward understanding &lt;strong&gt;cloud computing and deployment&lt;/strong&gt;.&lt;/p&gt;




&lt;h1&gt;
  
  
  🚀 Conclusion
&lt;/h1&gt;

&lt;p&gt;Building the portfolio was only one part of the experience.&lt;/p&gt;

&lt;p&gt;The more valuable part was taking the &lt;code&gt;index.html&lt;/code&gt; file from my local system and actually deploying it using AWS.&lt;/p&gt;

&lt;p&gt;I learned that cloud deployment involves more than uploading files. Configuration, permissions, origins, caching, and troubleshooting all play an important role.&lt;/p&gt;

&lt;p&gt;This workshop gave me hands-on experience with &lt;strong&gt;Amazon S3 and CloudFront&lt;/strong&gt;, and it motivated me to explore more AWS services and cloud-based deployments in the future.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Build it locally. Deploy it to the cloud. Break it. Debug it. Learn from it.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>aws</category>
      <category>cloud</category>
      <category>tutorial</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
