<?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: Javier Pulido</title>
    <description>The latest articles on DEV Community by Javier Pulido (@ejher).</description>
    <link>https://dev.to/ejher</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.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3106869%2F9e36debd-c0eb-4f17-970f-44b84e027adf.png</url>
      <title>DEV Community: Javier Pulido</title>
      <link>https://dev.to/ejher</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ejher"/>
    <language>en</language>
    <item>
      <title>How I Built a Hardened Amazon Linux 2 AMI with EC2 Image Builder</title>
      <dc:creator>Javier Pulido</dc:creator>
      <pubDate>Mon, 16 Jun 2025 07:52:26 +0000</pubDate>
      <link>https://dev.to/ejher/how-i-built-a-hardened-amazon-linux-2-ami-with-ec2-image-builder-1bp0</link>
      <guid>https://dev.to/ejher/how-i-built-a-hardened-amazon-linux-2-ami-with-ec2-image-builder-1bp0</guid>
      <description>&lt;p&gt;Manually hardening EC2 instances is tedious, inconsistent, and easy to mess up.&lt;/p&gt;

&lt;p&gt;So I automated the entire process — and built a hardened Amazon Linux 2 AMI using EC2 Image Builder. It includes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;✅ CIS benchmark controls&lt;/li&gt;
&lt;li&gt;✅ IMDSv2-only access&lt;/li&gt;
&lt;li&gt;✅ Auditd + CloudWatch logging&lt;/li&gt;
&lt;li&gt;✅ Patch compliance automation&lt;/li&gt;
&lt;li&gt;✅ Secure, reusable AMIs for production&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Here's a quick preview of the image pipeline config:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;aws imagebuilder create-image-pipeline --cli-input-json file://pipeline-config.json
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;And it tests compliance automatically with every build.&lt;/p&gt;

&lt;p&gt;👉 Full guide in here:&lt;br&gt;
🔗 &lt;a href="https://thehiddenport.dev/posts/aws-ami-hardening" rel="noopener noreferrer"&gt;https://thehiddenport.dev/posts/aws-ami-hardening&lt;/a&gt;&lt;/p&gt;

</description>
      <category>aws</category>
      <category>ec2</category>
      <category>security</category>
      <category>devops</category>
    </item>
    <item>
      <title>How to Enforce Least Privilege in AWS IAM (Access Analyzer + CloudTrail)</title>
      <dc:creator>Javier Pulido</dc:creator>
      <pubDate>Mon, 09 Jun 2025 11:08:44 +0000</pubDate>
      <link>https://dev.to/ejher/how-to-enforce-least-privilege-in-aws-iam-access-analyzer-cloudtrail-4agp</link>
      <guid>https://dev.to/ejher/how-to-enforce-least-privilege-in-aws-iam-access-analyzer-cloudtrail-4agp</guid>
      <description>&lt;p&gt;Most IAM roles are over-permissioned by default.&lt;/p&gt;

&lt;p&gt;We know we should “enforce least privilege,” but how? AWS doesn’t make it easy — especially across dozens of roles, dev teams, and constantly shifting service usage.&lt;/p&gt;

&lt;p&gt;This week, I broke down my real-world approach using tools already built into AWS:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;✅ IAM Access Analyzer for external exposure&lt;/li&gt;
&lt;li&gt;✅ Service Last Accessed data for stale permissions&lt;/li&gt;
&lt;li&gt;✅ CloudTrail + the IAM Policy Simulator to trim roles down&lt;/li&gt;
&lt;li&gt;✅ EventBridge + Lambda for real-time alerting and automation&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Here’s a sample from the article — using &lt;code&gt;generate-service-last-accessed-details&lt;/code&gt; to audit a role:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;aws iam generate-service-last-accessed-details &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;--arn&lt;/span&gt; arn:aws:iam::123456789012:role/MyAppRole
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then review which services haven’t been touched in 90+ days:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;aws iam get-service-last-accessed-details &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;--job-id&lt;/span&gt; &amp;lt;job-id&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;💡 Combine this with CloudTrail and Access Analyzer for a full-picture review.&lt;/p&gt;




&lt;p&gt;👉 &lt;strong&gt;I published the full, step-by-step guide here&lt;/strong&gt;:&lt;br&gt;&lt;br&gt;
🔗 &lt;a href="https://thehiddenport.dev/posts/aws-enforcing-least-privilege/" rel="noopener noreferrer"&gt;https://thehiddenport.dev/posts/aws-enforcing-least-privilege/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Includes detection tips, audit workflows, and code examples you can apply right now.&lt;/p&gt;




&lt;p&gt;Thanks for reading — let me know how you're enforcing least privilege in your AWS org, or what your biggest roadblock has been.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>security</category>
      <category>cloud</category>
      <category>iam</category>
    </item>
    <item>
      <title>How to Harden EC2 Instances in AWS: A Technical Guide</title>
      <dc:creator>Javier Pulido</dc:creator>
      <pubDate>Thu, 29 May 2025 08:58:38 +0000</pubDate>
      <link>https://dev.to/ejher/how-to-harden-ec2-instances-in-aws-a-technical-guide-5c8</link>
      <guid>https://dev.to/ejher/how-to-harden-ec2-instances-in-aws-a-technical-guide-5c8</guid>
      <description>&lt;p&gt;Hardening an EC2 instance in AWS isn't just about patching the OS. It’s about &lt;strong&gt;building layered defense&lt;/strong&gt; into the very foundation of your infrastructure — before any workloads even land on the box.&lt;/p&gt;

&lt;p&gt;In this article, I walk through a &lt;strong&gt;practical and detailed approach to hardening Amazon EC2 instances&lt;/strong&gt;, aligned with AWS best practices and enriched with technical implementation examples. We’ll cover:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;🔐 Identity and access controls&lt;/li&gt;
&lt;li&gt;🛡️ OS-level security and configuration&lt;/li&gt;
&lt;li&gt;📦 Package and service minimization&lt;/li&gt;
&lt;li&gt;📊 Monitoring and audit trails&lt;/li&gt;
&lt;li&gt;🔄 Secure metadata access via IMDSv2&lt;/li&gt;
&lt;li&gt;🔒 Disk encryption, traffic filtering, and more&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Whether you're operating EC2 in a production-grade environment or just want to learn how to build secure-by-default systems, this guide is for you.&lt;/p&gt;




&lt;h2&gt;
  
  
  👇 Table of Contents
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;IAM roles and SSH access&lt;/li&gt;
&lt;li&gt;OS hardening: users, packages, and kernel settings&lt;/li&gt;
&lt;li&gt;Logging with CloudWatch and audit tools&lt;/li&gt;
&lt;li&gt;Enforcing IMDSv2 and disabling instance metadata abuse&lt;/li&gt;
&lt;li&gt;Network-layer protections (SGs, NACLs, VPC)&lt;/li&gt;
&lt;li&gt;EBS and filesystem encryption&lt;/li&gt;
&lt;li&gt;Long-term patching, automation, and compliance&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  🔐 Identity and Access Management
&lt;/h2&gt;

&lt;p&gt;Before you even spin up your EC2 instance, &lt;strong&gt;control who can access it&lt;/strong&gt; — both at the AWS level and the OS level.&lt;/p&gt;

&lt;p&gt;Use &lt;strong&gt;IAM instance roles&lt;/strong&gt; instead of embedding credentials. Lock down &lt;code&gt;ec2:DescribeInstances&lt;/code&gt;, &lt;code&gt;ssm:SendCommand&lt;/code&gt;, and similar privileges to only those who need them. Avoid using hardcoded SSH keys in favor of &lt;strong&gt;EC2 Instance Connect&lt;/strong&gt; or &lt;strong&gt;Session Manager&lt;/strong&gt; whenever possible.&lt;/p&gt;

&lt;p&gt;Here's a deeper look at these IAM concerns in &lt;a href="https://thehiddenport.dev/posts/aws-temporary-credentials-security/" rel="noopener noreferrer"&gt;my article on IAM misconfigurations and how to fix them&lt;/a&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  🛠️ Operating System Hardening
&lt;/h2&gt;

&lt;p&gt;Once the instance is launched, &lt;strong&gt;start hardening from the inside out&lt;/strong&gt;. Some key steps:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Remove unused packages and users&lt;/li&gt;
&lt;li&gt;Disable root login and enforce key-based authentication&lt;/li&gt;
&lt;li&gt;Apply CIS Benchmarks (or AWS Inspector rules) where applicable&lt;/li&gt;
&lt;li&gt;Configure iptables or nftables for outbound controls&lt;/li&gt;
&lt;li&gt;Ensure auditd is enabled and logs are shipped externally&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It’s worth automating these steps with user-data scripts, EC2 Image Builder, or a configuration tool like Ansible.&lt;/p&gt;




&lt;h2&gt;
  
  
  📖 Read the Full Guide
&lt;/h2&gt;

&lt;p&gt;👉 I’ve written the &lt;strong&gt;full deep-dive article&lt;/strong&gt;, with detailed configuration examples, command-line snippets, and AWS-specific security pitfalls to watch for.&lt;/p&gt;

&lt;p&gt;🔗 &lt;strong&gt;Read the full article on The Hidden Port:&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://thehiddenport.dev/posts/aws-ec2-hardening/" rel="noopener noreferrer"&gt;https://thehiddenport.dev/posts/aws-ec2-hardening/&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;Thanks for reading — feel free to leave a comment or let me know how &lt;em&gt;you&lt;/em&gt; approach EC2 hardening!&lt;/p&gt;

</description>
      <category>aws</category>
      <category>security</category>
      <category>devops</category>
      <category>cloud</category>
    </item>
    <item>
      <title>Templates, Automation, and Playbooks: My AWS IR Toolkit is Now Live</title>
      <dc:creator>Javier Pulido</dc:creator>
      <pubDate>Tue, 20 May 2025 12:10:40 +0000</pubDate>
      <link>https://dev.to/ejher/templates-automation-and-playbooks-my-aws-ir-toolkit-is-now-live-3ld2</link>
      <guid>https://dev.to/ejher/templates-automation-and-playbooks-my-aws-ir-toolkit-is-now-live-3ld2</guid>
      <description>&lt;p&gt;I’ve spent the last few weeks organizing and refining my own incident response process for AWS.&lt;/p&gt;

&lt;p&gt;From handling Security Hub alerts to writing custom SES and Slack notifications, I needed more than just a checklist — I needed an actual toolkit.&lt;/p&gt;

&lt;p&gt;So I built one.&lt;/p&gt;




&lt;h2&gt;
  
  
  What’s Included:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;✅ A printable &lt;strong&gt;incident response checklist&lt;/strong&gt; for triage&lt;/li&gt;
&lt;li&gt;✅ An editable &lt;strong&gt;IR playbook&lt;/strong&gt; aligned with ISO 27001 + AWS best practices&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Notification flows&lt;/strong&gt; using EventBridge, SES, and Slack&lt;/li&gt;
&lt;li&gt;✅ A &lt;strong&gt;cloud forensics tool matrix&lt;/strong&gt; to guide acquisition and analysis&lt;/li&gt;
&lt;li&gt;✅ Deployment-ready &lt;strong&gt;Terraform + Lambda&lt;/strong&gt; code for alerting automation&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Why I Built It
&lt;/h2&gt;

&lt;p&gt;After publishing my free IR checklist on my blog, I realized many teams (and individuals) still struggle with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Rebuilding IR processes from scratch&lt;/li&gt;
&lt;li&gt;Responding to findings without a clear comms path&lt;/li&gt;
&lt;li&gt;Automating triage across teams or accounts&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I bundled everything I use — templates, scripts, docs — into one focused toolkit.&lt;/p&gt;

&lt;p&gt;When I started planning IR action plans this would have helped me a lot.&lt;/p&gt;




&lt;h2&gt;
  
  
  🛠️ Get the Toolkit
&lt;/h2&gt;

&lt;p&gt;You can explore the full breakdown + story behind it here:&lt;br&gt;
👉 [Read the full article](&lt;a href="https://thehiddenport.dev/posts/aws-ir-toolkit/" rel="noopener noreferrer"&gt;https://thehiddenport.dev/posts/aws-ir-toolkit/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And if you’re ready to grab it:&lt;br&gt;
👉 &lt;a href="https://1220446601165.gumroad.com/l/aws-ir-tool" rel="noopener noreferrer"&gt;Download the AWS IR Toolkit on Gumroad (€9)&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Includes all future updates, and a community where you can suggest changes.&lt;/p&gt;




&lt;p&gt;💬 If you've built your own IR tools or want to share feedback — I'm all ears. This is version 1.0, and I plan to keep refining it.&lt;/p&gt;

&lt;p&gt;Thanks for reading — and stay sharp out there.&lt;/p&gt;

&lt;p&gt;– Javier&lt;/p&gt;

</description>
      <category>aws</category>
      <category>security</category>
      <category>devsecops</category>
      <category>cloudsecurity</category>
    </item>
    <item>
      <title>Securing Temporary Credentials in AWS: What You Should Be Doing But Probably Aren’t</title>
      <dc:creator>Javier Pulido</dc:creator>
      <pubDate>Mon, 12 May 2025 09:03:48 +0000</pubDate>
      <link>https://dev.to/ejher/securing-temporary-credentials-in-aws-what-you-should-be-doing-but-probably-arent-24cc</link>
      <guid>https://dev.to/ejher/securing-temporary-credentials-in-aws-what-you-should-be-doing-but-probably-arent-24cc</guid>
      <description>&lt;p&gt;🔐 &lt;strong&gt;Temporary credentials in AWS&lt;/strong&gt; are powerful—but also widely misunderstood.&lt;/p&gt;

&lt;p&gt;They allow developers and systems to access AWS resources &lt;em&gt;without&lt;/em&gt; relying on long-lived access keys. But just because they expire doesn’t mean they’re safe by default.&lt;/p&gt;

&lt;p&gt;In this post, I break down:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;✅ When and why to use temporary credentials&lt;/li&gt;
&lt;li&gt;🧱 Where things go wrong (over-permissive roles, lazy session durations…)&lt;/li&gt;
&lt;li&gt;🔒 Best practices for keeping temp creds secure&lt;/li&gt;
&lt;li&gt;🧠 Advanced use cases like federation and IAM Roles Anywhere&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🚧 Where People Go Wrong
&lt;/h2&gt;

&lt;p&gt;I’ve seen real-world setups where:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Temp credentials lasted &lt;strong&gt;12 hours&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Were used with &lt;strong&gt;AdministratorAccess&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;In &lt;strong&gt;CI/CD pipelines&lt;/strong&gt; with &lt;strong&gt;no monitoring&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That defeats the whole point of ephemeral access.&lt;/p&gt;




&lt;h2&gt;
  
  
  🛡️ What You &lt;em&gt;Should&lt;/em&gt; Be Doing
&lt;/h2&gt;

&lt;p&gt;🔸 &lt;strong&gt;Use least privilege roles&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Scope your roles tightly and use IAM condition keys like &lt;code&gt;aws:SourceIp&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;🔸 &lt;strong&gt;Shorten session durations&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
15–30 minutes is more than enough for most automation tasks.&lt;/p&gt;

&lt;p&gt;🔸 &lt;strong&gt;Log STS usage with CloudTrail&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Every AssumeRole or GetSessionToken should be traceable and alertable.&lt;/p&gt;

&lt;p&gt;🔸 &lt;strong&gt;Require MFA where appropriate&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Especially for sensitive role assumptions—break-glass or prod access.&lt;/p&gt;

&lt;p&gt;🔸 &lt;strong&gt;Automate responsibly&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Don’t reuse temporary creds or store them insecurely in config files. Use the SDKs properly.&lt;/p&gt;




&lt;h2&gt;
  
  
  🧠 Bonus: IAM Roles Anywhere
&lt;/h2&gt;

&lt;p&gt;For non-AWS workloads (like on-prem apps), &lt;strong&gt;IAM Roles Anywhere&lt;/strong&gt; lets you issue short-lived AWS credentials using signed certificates. It's a powerful addition for hybrid setups, but comes with its own set of guardrails.&lt;/p&gt;




&lt;h3&gt;
  
  
  🔗 Want the full breakdown?
&lt;/h3&gt;

&lt;p&gt;The original article goes deeper into:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Federation setups with Okta or AzureAD&lt;/li&gt;
&lt;li&gt;Example real-world misuses (and fixes)&lt;/li&gt;
&lt;li&gt;Credential rotation strategies&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;👉 &lt;a href="https://thehiddenport.dev/posts/aws-temporary-credentials-security/" rel="noopener noreferrer"&gt;Read the full guide here&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;Let me know:&lt;br&gt;&lt;br&gt;
How is your team managing AWS access today?&lt;br&gt;&lt;br&gt;
Still using long-term credentials… or have you moved fully to short-lived roles?&lt;/p&gt;

</description>
      <category>aws</category>
      <category>security</category>
      <category>devsecops</category>
      <category>iam</category>
    </item>
    <item>
      <title>Incident Response in AWS + Free PDF Playbook</title>
      <dc:creator>Javier Pulido</dc:creator>
      <pubDate>Thu, 08 May 2025 06:30:00 +0000</pubDate>
      <link>https://dev.to/ejher/incident-response-in-aws-free-pdf-playbook-2594</link>
      <guid>https://dev.to/ejher/incident-response-in-aws-free-pdf-playbook-2594</guid>
      <description>&lt;p&gt;🛡️ Incident Response in AWS + Free PDF Playbook&lt;/p&gt;

&lt;p&gt;TL;DR: I wrote a complete, experience-based guide on how to structure an Incident Response (IR) process inside AWS. It includes a free downloadable playbook template you can adapt for your own organization.&lt;br&gt;
🔍 What's in the guide?&lt;/p&gt;

&lt;p&gt;This article walks through how to:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Set up a dedicated AWS IR account (or region)

Isolate and import compromised resources

Collect and store forensic evidence in S3

Automate parts of your response workflow using AWS-native services

Ensure evidence integrity and avoid contamination
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;It’s not theory — this is based on how we’re actually handling IR processes in real environments.&lt;br&gt;
🧰 Bonus: Free PDF Playbook Template&lt;/p&gt;

&lt;p&gt;I’ve included a downloadable playbook you can adapt to your own AWS setup.&lt;br&gt;
It’s simple, focused, and designed to be actionable.&lt;br&gt;
🔗 &lt;a href="https://thehiddenport.dev/posts/incident-response-aws-guide/" rel="noopener noreferrer"&gt;Read the Full Post&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;👉 &lt;a href="https://thehiddenport.dev/posts/aws-ir-playbook-template/" rel="noopener noreferrer"&gt;Incident Response in AWS + PDF Playbook&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you're building or refining your IR playbook, I hope this helps you build something practical and secure.&lt;/p&gt;

&lt;p&gt;Would love to hear how others are handling IR in cloud-native environments.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>security</category>
      <category>incidentresponse</category>
      <category>devsecops</category>
    </item>
    <item>
      <title>How I Passed the AWS Certified Security – Specialty (SCS-C02) Exam</title>
      <dc:creator>Javier Pulido</dc:creator>
      <pubDate>Wed, 30 Apr 2025 06:38:26 +0000</pubDate>
      <link>https://dev.to/ejher/how-i-passed-the-aws-certified-security-specialty-scs-c02-exam-267d</link>
      <guid>https://dev.to/ejher/how-i-passed-the-aws-certified-security-specialty-scs-c02-exam-267d</guid>
      <description>&lt;p&gt;I recently passed the &lt;strong&gt;AWS Certified Security – Specialty (SCS-C02)&lt;/strong&gt; exam, and I wanted to share my experience in case it helps anyone else on the same path.&lt;/p&gt;




&lt;h2&gt;
  
  
  📚 Study Journey
&lt;/h2&gt;

&lt;p&gt;I first started studying with &lt;strong&gt;Zeal Vora's&lt;/strong&gt; course on Udemy back in September 2024. It gave me a solid foundation, but work got hectic, and I had to pause.&lt;/p&gt;

&lt;p&gt;Earlier this year, I got back into it with &lt;strong&gt;Stephane Maarek’s SCS-C02 course&lt;/strong&gt; — it was a fantastic refresher and only 16 hours long. I also started working through &lt;strong&gt;Tutorial Dojo’s practice exams&lt;/strong&gt;, which were incredibly useful for simulating the real exam format.&lt;/p&gt;

&lt;p&gt;All in all, I spent around &lt;strong&gt;80–100 hours&lt;/strong&gt; studying and playing lightly in AWS.&lt;/p&gt;




&lt;h2&gt;
  
  
  🧠 What Helped the Most
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Taking notes after each failed question&lt;/li&gt;
&lt;li&gt;Reviewing explanations, not just answers&lt;/li&gt;
&lt;li&gt;Practicing with an AWS account (light console usage helped a lot)&lt;/li&gt;
&lt;li&gt;Focusing on IAM, STS, Organizations, and logging-related services&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🔍 What the Exam Felt Like
&lt;/h2&gt;

&lt;p&gt;The real exam had a strong focus on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;AWS Organizations&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;CloudFront&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Fleet management and IAM structure&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Some topics like &lt;strong&gt;CloudHSM&lt;/strong&gt; didn’t appear at all. But honestly, &lt;em&gt;almost everything I studied showed up&lt;/em&gt; in one form or another.&lt;/p&gt;

&lt;p&gt;Time was manageable — I finished with around 10 minutes to spare.&lt;/p&gt;




&lt;h2&gt;
  
  
  🎓 Final Advice
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Pick one course and finish it fully before jumping to exams&lt;/li&gt;
&lt;li&gt;Practice exams are not optional — they are &lt;em&gt;essential&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;Don’t just memorize — try to understand what the service does &lt;em&gt;and why you’d use it that way&lt;/em&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;📫 I write about cloud security, automation, and best practices at &lt;a href="https://thehiddenport.dev" rel="noopener noreferrer"&gt;The Hidden Port&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;If this post helped you, feel free to visit or share!&lt;/p&gt;

</description>
      <category>aws</category>
      <category>security</category>
      <category>devops</category>
      <category>cloud</category>
    </item>
  </channel>
</rss>
