<?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>Forem: Lingesh B</title>
    <description>The latest articles on Forem by Lingesh B (@lingesh18).</description>
    <link>https://forem.com/lingesh18</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%2F3044151%2F725dbbdd-6b9c-45ac-a2a8-aff21fa315af.jpg</url>
      <title>Forem: Lingesh B</title>
      <link>https://forem.com/lingesh18</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/lingesh18"/>
    <language>en</language>
    <item>
      <title>Enforcing Zero Trust: AWS VPC Encryption Controls Explained</title>
      <dc:creator>Lingesh B</dc:creator>
      <pubDate>Sat, 25 Apr 2026 08:37:19 +0000</pubDate>
      <link>https://forem.com/aws-builders/enforcing-zero-trust-aws-vpc-encryption-controls-explained-fpf</link>
      <guid>https://forem.com/aws-builders/enforcing-zero-trust-aws-vpc-encryption-controls-explained-fpf</guid>
      <description>&lt;p&gt;“Encryption in transit” is no longer a “nice-to-have” — it’s a mandatory requirement for PCI-DSS, HIPAA, and modern Zero-Trust architectures. But how do you prove to an auditor that every packet in your VPC is encrypted?&lt;/p&gt;

&lt;p&gt;You don’t do it with spreadsheets; you do it with VPC Flow Logs. By leveraging the new ${encryption-status} field and VPC Encryption Controls, you can audit, verify, and enforce hardware-level encryption across your entire infrastructure with a single click.&lt;/p&gt;

&lt;p&gt;VPC Encryption Controls is a security and compliance feature introduced by AWS to provide centralized visibility and authoritative control over the encryption of data moving within and between your Virtual Private Clouds.&lt;/p&gt;

&lt;p&gt;Historically, verifying that all “east-west” traffic (traffic between your internal instances, load balancers, and databases) was encrypted was a manual and complex task, often involving messy spreadsheets and custom auditing scripts. This feature automates that process by leveraging the AWS Nitro System hardware and application-layer metadata.&lt;/p&gt;

&lt;p&gt;The Two Core Modes&lt;br&gt;
To help you reach a fully encrypted state without breaking your existing applications, the feature operates in two phases:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzn2zexmsajfy4mrb57ze.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzn2zexmsajfy4mrb57ze.png" alt=" " width="800" height="52"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Key Capabilities&lt;/p&gt;

&lt;p&gt;Detailed Auditing: Adds a new ${encryption-status} field to VPC Flow Logs, showing you at a glance if traffic is encrypted via Nitro hardware (1), application-level TLS (2), both (3), or not at all (0).&lt;br&gt;
Resource Identification: Provides a “To-Do” list in the AWS Console of specific resources (like older EC2 instances or HTTP listeners) that are preventing you from reaching an enforced security posture.&lt;br&gt;
Seamless Upgrades: Automatically migrates managed infrastructure like Application Load Balancers (ALB) and Fargate tasks to Nitro-based hardware to ensure they meet encryption standards transparently.&lt;br&gt;
Compliance Ready: Simplifies the proof required for regulatory frameworks like HIPAA, PCI DSS, and FedRAMP by providing an authoritative dashboard of encryption status.&lt;br&gt;
Why use it?&lt;br&gt;
If your organization follows a Zero Trust architecture, you can no longer assume that internal traffic is “safe” just because it’s inside the VPC. VPC Encryption Controls allow you to verify and mandate that every single packet is encrypted, providing a critical layer of defense-in-depth against internal threats or misconfigurations.&lt;/p&gt;

&lt;p&gt;In this demo, I have created a VPC with below resources&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flr1s9oj9g4jtwa4x1n7i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flr1s9oj9g4jtwa4x1n7i.png" alt=" " width="800" height="373"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8ymw6lt85hicwrkw7ymf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8ymw6lt85hicwrkw7ymf.png" alt=" " width="800" height="229"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Architecture diagram:&lt;/p&gt;

&lt;p&gt;My application(static website) has four EC2 instances(webservers) behind an Application load balancer&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpiyfsgh25ie57nm0jfdk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpiyfsgh25ie57nm0jfdk.png" alt=" " width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Created VPC Encryption control in “Monitor” mode to first audit the encryption status of resources in my VPC&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6jzcel8b6rfi2xbu14gs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6jzcel8b6rfi2xbu14gs.png" alt=" " width="800" height="299"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In simple terms, Monitor Mode is like a security camera for your network. It watches all the data moving around your VPC and takes notes on whether that data is “scrambled” (encrypted) or “plain text” (unencrypted).&lt;/p&gt;

&lt;p&gt;Crucially, it does not block or change anything. Your website and apps will keep running exactly as they are while it gathers information&lt;/p&gt;

&lt;p&gt;Below resources have been flagged as resources accepting unencrypted traffic&lt;/p&gt;

&lt;p&gt;Internet Gateway&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe0o6fgyzyi38vs4qnb6j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe0o6fgyzyi38vs4qnb6j.png" alt=" " width="800" height="245"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can configure specific exclusions for resources such as internet gateways or NAT gateways, that don’t support encryption (because the traffic flows outside of the AWS network).&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Elastic Network interfaces include the four EC2 instances(t2.micro) and NAT Gateway&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftkc410ftc2uxi996h92w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftkc410ftc2uxi996h92w.png" alt=" " width="800" height="333"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Moving to a Fully Encrypted VPC(Enforce mode)&lt;br&gt;
Once you have identified unencrypted resources in Monitor Mode, you can begin migrating them to a secure state. Depending on the service type, this process is either automatic or requires a manual upgrade.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Automatic Migration (No Action Required)
Certain managed services will handle the transition for you. AWS will transparently move the underlying infrastructure to Nitro hardware — which provides automatic encryption — with zero service interruption:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Application Load Balancers (ALB)&lt;br&gt;
Network Load Balancers (NLB)&lt;br&gt;
AWS Fargate Tasks&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Manual Migration (Action Required)
For resources that you manage directly, such as Amazon EC2 instances, you must take one of the following steps to achieve encryption compliance:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Upgrade Hardware: Switch from older, legacy instances (like t2 or m4) to modern Nitro-based types (like t3, m5, c6g, etc.).&lt;br&gt;
Encrypt the App: If you cannot upgrade the hardware, you must configure TLS/SSL encryption (HTTPS) manually at the application level.&lt;br&gt;
I created custom VPC flow logs to capture the encryption status&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk2g73ha7um7d533x42v4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk2g73ha7um7d533x42v4.png" alt=" " width="800" height="356"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Sent traffic to my Webservers via Application Load Balancer(Note that I am accessing ALB using http and not https)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F41mo8661k87659u3p10b.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F41mo8661k87659u3p10b.png" alt=" " width="800" height="105"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Then, I checked my VPC flow logs to identify the encryption status&lt;/p&gt;

&lt;p&gt;Encryption Status Code:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F110onpk13bc6h6yz1n4d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F110onpk13bc6h6yz1n4d.png" alt=" " width="800" height="133"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For EC2 instances running on t2.micro instance type, the encryption status field is 0 meaning no hardware level or app level encryption was detected&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxj5u35d1cl1wirvm1fe8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxj5u35d1cl1wirvm1fe8.png" alt=" " width="800" height="132"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After I manually migrated two of my EC2 instances to m8a.medium(Nitro based instance), the encryption status field in the flow logs is 1 for those specific instances indicating hardware layer encryption&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk8kqqximfpae9cnjvb88.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk8kqqximfpae9cnjvb88.png" alt=" " width="800" height="132"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After manual migration to Nitro based instance type, those instances also got removed from the unencrypted resources list and only the remaining two instances(t2.micro) are flagged&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw3vybpz5mw8aztf255uq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw3vybpz5mw8aztf255uq.png" alt=" " width="800" height="198"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhotqjagbhqqg81b4og52.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhotqjagbhqqg81b4og52.png" alt=" " width="800" height="336"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;IMPORTANT CATCH:&lt;br&gt;
🛑 The “Port 80” Catch: Why isn’t my ALB flagged?&lt;br&gt;
If you are running an Application Load Balancer (ALB) on Port 80, you might be surprised to see it missing from the “Unencrypted Resources” list. It feels like a security hole, but it’s actually due to a “silent upgrade” AWS performs for you.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The Transparent Nitro Migration
When you enable Monitor Mode, AWS identifies that the ALB is a managed service. It then automatically and transparently migrates the ALB’s underlying infrastructure to Nitro hardware.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Because Nitro-based hardware has a dedicated security chip that scrambles data at the physical network layer, the ALB is now capable of hardware encryption. In the eyes of VPC Encryption Controls, it is no longer a “blocker” to security — even if your application is still using Port 80.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Status 1: The “Invisible” Internal Shield
Even if you haven’t set up an SSL certificate yet, the traffic moving inside your VPC (from the ALB to a modern EC2 instance) is often automatically encrypted by the Nitro chips on both ends.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;What you’ll see in logs: An encryption-status of 1.&lt;br&gt;
What it means: Your internal “East-West” traffic is protected by hardware-level AES-256 encryption, even over an unencrypted protocol like HTTP.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The “False Sense of Security” Warning
This is the most important part : VPC Encryption Controls only track the journey inside the VPC.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Inside the VPC (ALB → EC2): Safe (Status 1).&lt;br&gt;
Outside the VPC (User → ALB): UNSAFE.&lt;br&gt;
If a user sends a password to your ALB on Port 80 over the public internet, that password is sent in plain text. It only gets “scrambled” by Nitro hardware after it reaches the ALB. To truly be secure, you must still move to Port 443 (HTTPS) to protect the data during its journey across the internet.&lt;/p&gt;

&lt;p&gt;The reason Internet Gateways (IGW) and NAT Gateways are flagged while your ALB is not comes down to one thing: The Destination of the Data.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The “Off-Ramp” Problem
VPC Encryption Controls are designed to ensure data is encrypted within the AWS network.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The ALB sends data to another resource inside your VPC (like an EC2 instance). Because both ends are inside AWS, AWS can use Nitro hardware to scramble that data.&lt;br&gt;
Gateways are different. Their entire purpose is to send data outside your VPC to the public internet.&lt;br&gt;
Once data leaves through an IGW or NAT Gateway, AWS no longer owns the “wires” it travels on. AWS cannot force the rest of the internet to use Nitro hardware encryption. Therefore, these gateways are marked as Unencrypted because they are essentially “leaks” where protected data turns into unprotected public data.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Physical vs. Logical Limitations
ALB/Fargate: These are “Software-Defined” managed services. AWS can simply update the “code” they run on to include Nitro capabilities. That’s why they are automatically moved to the “Encrypted” list.
Gateways: These are architectural “edge” points. A NAT Gateway is a middleman. If you send it unencrypted data from an EC2 instance, it must pass that unencrypted data out to the internet. It cannot “Nitro-encrypt” a packet that is destined for a Google or Netflix server.&lt;/li&gt;
&lt;li&gt;They are “Blockers” by Design
In your dashboard, “Unencrypted Resources” really means “Things that will stop you from enabling Enforce Mode.” If you tried to turn on Enforce Mode without addressing these gateways, AWS would have to drop all your internet traffic to stay “compliant” with your security policy.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;To fix this, AWS doesn’t expect you to “encrypt” the gateway. Instead, you must Exclude them&lt;/p&gt;

&lt;p&gt;The 3-Step Process:&lt;br&gt;
Monitor (Watch): Turn on Monitor Mode to find out resources that allow unencrypted traffic.&lt;br&gt;
Fix (Upgrade): For resources, such as the previous generation of Amazon Elastic Compute Cloud (Amazon EC2) instances, you will need to switch to modern Nitro based instance types or configure TLS encryption at application level.&lt;br&gt;
Enforce (Lock): Once the monitor shows everything is green, you flip the switch to “Enforce Mode,” which will block any future unencrypted traffic from even starting.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>vpc</category>
      <category>encryption</category>
      <category>zerotrust</category>
    </item>
    <item>
      <title>Building an Automated AWS Security Advisor: RAG with AWS Bedrock and OpenSearch Serverless</title>
      <dc:creator>Lingesh B</dc:creator>
      <pubDate>Sat, 25 Apr 2026 07:37:45 +0000</pubDate>
      <link>https://forem.com/aws-builders/building-an-automated-aws-security-advisor-rag-with-aws-bedrock-and-opensearch-serverless-jbh</link>
      <guid>https://forem.com/aws-builders/building-an-automated-aws-security-advisor-rag-with-aws-bedrock-and-opensearch-serverless-jbh</guid>
      <description>&lt;p&gt;The Problem: Security Posture Debt at Scale&lt;/p&gt;

&lt;p&gt;In large AWS environments spanning multiple accounts, developers and engineers create cloud resources every day — EC2 instances, S3 buckets, ECS clusters, EKS clusters, RDS databases, Lambda functions, VPCs and so many other resources. But it also means security best practices often get deprioritized in the heat of delivery.&lt;/p&gt;

&lt;p&gt;The result? AWS Security Hub flags dozens of findings every week. Resources that don’t conform to CIS AWS Foundations Benchmark, PCI DSS controls, or AWS Foundational Security Best Practices (FSBP) accumulate a growing backlog. The security team then has to chase down resource owners, explain what’s wrong, and guide them through remediation — a reactive, time-intensive process.&lt;/p&gt;

&lt;p&gt;What if you could shift security left by providing developers with an AI-powered Security Advisor? By leveraging Retrieval-Augmented Generation (RAG), we can build a system that crawls the latest official security standards and provides actionable, real-time remediation advice.&lt;/p&gt;

&lt;p&gt;Reactive Mode&lt;/p&gt;

&lt;p&gt;User provisions non-compliant resource → Security Hub flags it → Security team investigates → Manually notifies resource owner → Owner remediates (eventually)&lt;/p&gt;

&lt;p&gt;Proactive Mode&lt;/p&gt;

&lt;p&gt;User asks chatbot “how should I configure my S3 bucket securely?” → RAG retrieves exact CIS / PCI DSS controls → User gets actionable guidance before provisioning&lt;/p&gt;

&lt;p&gt;The Solution: A RAG-Powered Security Advisor Chatbot&lt;br&gt;
Build an internal security advisor chatbot powered by Retrieval-Augmented Generation (RAG) using AWS Bedrock Knowledge Bases. The system ingests official AWS security standard documentation, indexes it in a vector store, and answers natural language questions from developers with grounded, citation-backed responses.&lt;/p&gt;

&lt;p&gt;The core premise: instead of security standards living in PDFs that no one reads, they become a queryable, conversational knowledge layer that any developer can access in seconds — directly integrated into their existing workflow.&lt;/p&gt;

&lt;p&gt;Architecture Overview&lt;br&gt;
🕸Data Sources&lt;/p&gt;

&lt;p&gt;Web Crawler pulling CIS Benchmarks, PCI DSS controls, and AWS FSBP documentation from official URLs&lt;/p&gt;

&lt;p&gt;🧠Bedrock Knowledge Base&lt;/p&gt;

&lt;p&gt;Managed RAG service handling chunking, embedding generation, and retrieval orchestration&lt;/p&gt;

&lt;p&gt;🔍OpenSearch Serverless&lt;/p&gt;

&lt;p&gt;Vector store for semantic search — scales automatically, no cluster management overhead&lt;/p&gt;

&lt;p&gt;💬Claude on Bedrock&lt;/p&gt;

&lt;p&gt;Foundation model for response generation — grounded in retrieved context, not hallucinations&lt;/p&gt;

&lt;p&gt;🛡️Security Hub&lt;/p&gt;

&lt;p&gt;Posture score baseline — the north star metric our chatbot helps improve over time&lt;/p&gt;

&lt;p&gt;👤Developer Interface&lt;/p&gt;

&lt;p&gt;Chat UI exposed to development teams — internal Slack bot, portal, or CLI wrapper&lt;/p&gt;

&lt;p&gt;Building the Knowledge Base in AWS Bedrock&lt;br&gt;
AWS Bedrock Knowledge Bases is a managed service that abstracts the heavy lifting of a RAG pipeline — document ingestion, chunking strategy, embedding model selection, vector store integration, and retrieval. For our use case, it was the natural choice because we needed production-grade reliability without building custom orchestration.&lt;/p&gt;

&lt;p&gt;(a) Create Knowledge Base with vector store&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh5nnjetrphph4x2yycdd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh5nnjetrphph4x2yycdd.png" alt="AWS Bedrock console showing the Knowledge Base creation workflow" width="800" height="308"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;(b) Choose “Web Crawler” as data source&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqxsm79ydzb2puixqjn79.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqxsm79ydzb2puixqjn79.png" alt="AWS Bedrock console showing the Knowledge Base creation workflow" width="800" height="222"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;(c ) Enter below URL’s as source URL’s&lt;/p&gt;

&lt;p&gt;AWS Foundational Security Best Practices standard in Security Hub CSPM&lt;br&gt;
Learn about the AWS Foundational Security Best Practices standard and the applicable security controls in AWS Security…&lt;br&gt;
docs.aws.amazon.com&lt;/p&gt;

&lt;p&gt;CIS AWS Foundations Benchmark in Security Hub CSPM&lt;br&gt;
The Center for Internet Security (CIS) AWS Foundations Benchmark serves as a set of security configuration best…&lt;br&gt;
docs.aws.amazon.com&lt;/p&gt;

&lt;p&gt;PCI DSS in Security Hub CSPM&lt;br&gt;
AWS Security Hub CSPM supports v.3.2.1 and v4.0.1 of the Payment Card Industry Data Security Standard (PCI DSS). You…&lt;br&gt;
docs.aws.amazon.com&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F20ajk26qp6rx6an08eo8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F20ajk26qp6rx6an08eo8.png" alt="AWS Bedrock console showing the Knowledge Base creation workflow" width="800" height="251"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;(d) Continue with default selections for Sync scope, Parsing and chunking&lt;/p&gt;

&lt;p&gt;(e) Choose “Amazon Titan Text Embeddingsv2” model as Embedding model&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh1pmuw2qix69ichgxxp9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh1pmuw2qix69ichgxxp9.png" alt="AWS Bedrock console showing the Knowledge Base creation workflow" width="800" height="563"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;(f) Select quick vector store creation&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqw23lj2b6j02y138xyg8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqw23lj2b6j02y138xyg8.png" alt="AWS Bedrock console showing the Knowledge Base creation workflow" width="800" height="444"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;(g) Wait for Knowledge Base and Vector database creation to complete&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz4xgmsze07bfop7qx76g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz4xgmsze07bfop7qx76g.png" alt="AWS Bedrock console showing the Knowledge Base creation workflow" width="800" height="310"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;(h) Once Knowledge Base is created, select the data source and click on sync which will populate the OpenSearch serverless collection(vector database) with embeddings&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx8t1ucg6wy0osjy05zjc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx8t1ucg6wy0osjy05zjc.png" alt="AWS console showing the Data sync workflow to populate the vector database" width="800" height="314"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flk3hmwes6frp61tlvf0l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flk3hmwes6frp61tlvf0l.png" alt="AWS console showing the Data sync workflow to populate the vector database" width="800" height="260"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffsxnzyjsbeftsjblkhl1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffsxnzyjsbeftsjblkhl1.png" alt="AWS console showing the Data sync workflow to populate the vector database" width="800" height="273"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Vector Store: OpenSearch Serverless&lt;br&gt;
For a production-grade RAG system, a serverless vector database is ideal. It handles the indexing of high-dimensional embeddings without the overhead of managing clusters.&lt;/p&gt;

&lt;p&gt;Collection Type: Vector Search.&lt;br&gt;
Logic: When the web crawler ingests data, it breaks the text into chunks, converts them into vectors (using a model like Titan Text Embeddings), and stores them in OSS.&lt;br&gt;
I chose OpenSearch Serverless over the other supported vector stores (Pinecone, Redis Enterprise, Aurora PostgreSQL) for a specific reason: it’s native AWS, supports IAM-based access control, integrates seamlessly with VPC endpoint policies, and removes the operational overhead of managing an OpenSearch cluster entirely.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxp6z3mpj73tjxo4erzoc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxp6z3mpj73tjxo4erzoc.png" alt="AWS console showing the opensearch serverless collection" width="800" height="305"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fngwf9zglrocx8ae2vag6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fngwf9zglrocx8ae2vag6.png" alt="AWS console showing the opensearch serverless collection" width="800" height="311"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Why serverless over provisioned OpenSearch?&lt;br&gt;
A knowledge base for internal developer queries has a spiky, unpredictable query pattern — zero traffic at night, bursts during working hours and incident response. Serverless OCUs (OpenSearch Compute Units) scale to zero and burst automatically, making it significantly more cost-efficient for this use case than a provisioned domain with fixed shard capacity.&lt;/p&gt;

&lt;p&gt;Important: Bedrock Knowledge Bases requires the OpenSearch Serverless collection to be of type vector search, not time series or search. Set this at collection creation — it cannot be changed later.&lt;/p&gt;

&lt;p&gt;Data Ingestion: Web Crawler for Security Standards&lt;br&gt;
The choice of data source is what makes this system genuinely authoritative. Rather than uploading stale PDFs, we pointed the Bedrock web crawler at official, continuously-maintained documentation URLs.&lt;/p&gt;

&lt;p&gt;URLs ingested: CIS AWS Foundations Benchmark,PCI DSS v4.0 Requirements, AWS FSBP Controls, AWS Security Hub Docs&lt;/p&gt;

&lt;p&gt;Web crawler ingestion means our knowledge base stays current when AWS updates control documentation or when PCI DSS guidance is revised — we just re-run the sync job, no manual uploads needed.&lt;/p&gt;

&lt;p&gt;The crawler handles pagination automatically, and Bedrock's sync job can be scheduled or triggered via EventBridge for freshness.&lt;/p&gt;

&lt;p&gt;Test the Knowledge Base&lt;br&gt;
Perform a test whether Knowledge Base(RAG) delivers answers as expected based on the security standard recommendations before integrating with your Chatbot app&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flrtiu5uf5iosmwaozy4c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flrtiu5uf5iosmwaozy4c.png" alt="Test the AWS Bedrock Knowledge Base" width="800" height="297"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6urmp4uk0k385556dabh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6urmp4uk0k385556dabh.png" alt="Test the AWS Bedrock Knowledge Base" width="800" height="310"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Example:&lt;/p&gt;

&lt;p&gt;Query: “What’s the Security Hub posture score impact if I leave port 22 open to 0.0.0.0/0 on my security group?”&lt;/p&gt;

&lt;p&gt;Response : Unrestricted SSH access (0.0.0.0/0 on port 22) violates EC2.19 in AWS FSBP and CIS control 5.2. Security Hub assigns this a HIGH severity finding. It will negatively impact your overall posture score, especially within the Network Security category. Restrict inbound SSH to known IP ranges using your VPN CIDR, or use AWS Systems Manager Session Manager to eliminate the need for SSH entirely.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The RAG Pipeline in Action
When a developer asks a question, here’s what happens end-to-end — in under 3 seconds:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;1.User query arrives&lt;/p&gt;

&lt;p&gt;“What are the CIS benchmark requirements for S3 bucket encryption?”&lt;/p&gt;

&lt;p&gt;↓&lt;/p&gt;

&lt;p&gt;2.Query embedding&lt;/p&gt;

&lt;p&gt;Bedrock embeds the query using Titan Embeddings v2, producing a 1536-dim vector representation of the semantic intent.&lt;/p&gt;

&lt;p&gt;↓&lt;/p&gt;

&lt;p&gt;3.Vector retrieval from OpenSearch Serverless&lt;/p&gt;

&lt;p&gt;Approximate nearest-neighbor search retrieves the top-K most semantically similar chunks from the indexed security standards. K=5 by default, tunable.&lt;/p&gt;

&lt;p&gt;↓&lt;/p&gt;

&lt;p&gt;4.Augmented prompt construction&lt;/p&gt;

&lt;p&gt;Retrieved chunks are injected into a structured prompt alongside the user query. Source URLs are preserved for citation.&lt;/p&gt;

&lt;p&gt;↓&lt;/p&gt;

&lt;p&gt;5.Response generation via Claude on Bedrock&lt;/p&gt;

&lt;p&gt;The foundation model generates a grounded, structured response citing specific control IDs — never fabricating controls that don’t exist in the retrieved context.&lt;/p&gt;

&lt;p&gt;Key configuration decisions&lt;br&gt;
When creating the Knowledge Base, we made the following choices that significantly impacted retrieval quality:&lt;/p&gt;

&lt;p&gt;1.Embedding model: Amazon Titan Embeddings v2&lt;/p&gt;

&lt;p&gt;Optimized for English technical documentation. Produces 1536-dimensional dense vectors. Good semantic fidelity for regulatory and standards language.&lt;/p&gt;

&lt;p&gt;↓&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Chunking strategy:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Automatically splits text into chunks of 300 tokens in size&lt;/p&gt;

&lt;p&gt;↓&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Vector store: OpenSearch Serverless collection&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Created a dedicated vector search collection type. Bedrock auto-creates the index schema and handles sync.&lt;/p&gt;

&lt;p&gt;↓&lt;/p&gt;

&lt;p&gt;4.Retrieval: Hybrid search (semantic + keyword)&lt;/p&gt;

&lt;p&gt;Combining dense vector search with BM25 keyword matching improves recall for specific control IDs like “CIS 2.1.2” or “PCI DSS Req 6.4”.&lt;/p&gt;

&lt;p&gt;The choice of data source is what makes this system genuinely authoritative. Rather than uploading stale PDFs, we pointed the Bedrock web crawler at official, continuously-maintained documentation URLs.&lt;/p&gt;

&lt;p&gt;Web crawler ingestion means our knowledge base stays current when AWS updates control documentation or when PCI DSS guidance is revised — we just re-run the sync job, no manual uploads needed.&lt;/p&gt;

&lt;p&gt;Implementation Architecture&lt;br&gt;
The flow works as follows:&lt;/p&gt;

&lt;p&gt;Frontend: A Slack bot, Microsoft Teams app, or a simple Streamlit web UI.&lt;br&gt;
API Layer: Amazon API Gateway triggers a Lambda function.&lt;br&gt;
Logic Layer: AWS Lambda calls the Bedrock RetrieveAndGenerateAPI.&lt;br&gt;
Data Layer: Bedrock queries OpenSearch Serverless and generates a response using a model like Claude or Amazon Nova&lt;/p&gt;

&lt;p&gt;Conclusion&lt;br&gt;
Security posture improvement doesn’t have to be a reactive, ticket-driven grind. By treating security standards as a living knowledge base — queryable, conversational, and always current — you can shift security left and make best practices the path of least resistance for your development teams.&lt;/p&gt;

&lt;p&gt;AWS Bedrock Knowledge Bases, OpenSearch Serverless, and web crawler ingestion make this remarkably accessible to build. The hardest part isn’t the technology — it’s getting developers to use the chatbot instead of guessing. Make it fast, make it actionable, and make it available where they already work.&lt;/p&gt;

&lt;p&gt;"How are you currently handling security remediation in your organization? Have you experimented with RAG for internal documentation yet? Let’s discuss in the comments!"&lt;/p&gt;

</description>
      <category>ai</category>
      <category>aws</category>
      <category>rag</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Beyond RAG: Why Google’s Agentic Data Cloud is the Future of Cloud Security</title>
      <dc:creator>Lingesh B</dc:creator>
      <pubDate>Fri, 24 Apr 2026 17:40:49 +0000</pubDate>
      <link>https://forem.com/lingesh18/beyond-rag-why-googles-agentic-data-cloud-is-the-future-of-cloud-security-17m6</link>
      <guid>https://forem.com/lingesh18/beyond-rag-why-googles-agentic-data-cloud-is-the-future-of-cloud-security-17m6</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/google-cloud-next-2026-04-22"&gt;Google Cloud NEXT Writing Challenge&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;If you are a Cloud Security Architect, you have a different set of concerns when evaluating an AI pipeline: Where does sensitive data land? Who—or what—controls access to it? Can an AI agent be tricked into leaking a policy document? And critically, can you audit every retrieval decision for an auditor?&lt;/p&gt;

&lt;p&gt;I have spent the last year building a production RAG-powered internal security advisor on AWS using Bedrock. But after watching the keynotes at &lt;strong&gt;Google Cloud NEXT '26&lt;/strong&gt;, it is clear that we are moving past the "static RAG" era. We are entering the &lt;strong&gt;Agentic Era&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;Here is why Google’s new Agentic Data Cloud isn't just an update—it is the architectural blueprint for the future of secure, autonomous enterprise intelligence.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Evolution: From Static Pipelines to Ambient Intelligence
&lt;/h2&gt;

&lt;p&gt;My current AWS-based architecture served us well, but it highlighted a chronic issue: &lt;strong&gt;operational inertia&lt;/strong&gt;. Every time our internal security standards or AWS Foundational Security Best Practices (FSBP) updated, we had to trigger manual sync jobs, manage chunking strategies, and fight against "flat" vector retrieval limitations.&lt;/p&gt;

&lt;p&gt;Google Cloud NEXT '26 fundamentally changes this narrative with the &lt;strong&gt;Agentic Data Cloud&lt;/strong&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Ambient Ingestion via Knowledge Catalog
&lt;/h3&gt;

&lt;p&gt;The standout announcement is the &lt;strong&gt;Knowledge Catalog&lt;/strong&gt;. In my AWS implementation, ingestion was a discrete, manual step. Google’s approach is &lt;strong&gt;ambient&lt;/strong&gt;: the moment a document lands in GCS, it is instantly enriched, indexed, and made agent-ready by Gemini. &lt;/p&gt;

&lt;p&gt;For a security architect, this shifts the focus from &lt;em&gt;pipeline maintenance&lt;/em&gt; to &lt;em&gt;policy governance&lt;/em&gt;. By offloading the "data engineering" of RAG to the platform, we can focus on the critical security layer: defining granular data boundary controls for what the Knowledge Catalog is permitted to index.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. GraphRAG: The Missing Link for Compliance
&lt;/h3&gt;

&lt;p&gt;Security controls aren't flat—they are a dependency graph. PCI DSS requirement 10.2.1 relates to logging, which links back to identity controls and data protection standards. &lt;/p&gt;

&lt;p&gt;Standard vector similarity often misses these implicit relationships. &lt;strong&gt;BigQuery Graph&lt;/strong&gt;— GCP's native implementation of GraphRAG is the architectural answer I’ve been looking for. It allows agents to traverse the logic of a control framework natively, surfacing how a public-facing workload impacts multiple control families. This is a massive leap forward in making AI "security-aware" by default.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. The Cross-Cloud Lakehouse: The Security Dream
&lt;/h3&gt;

&lt;p&gt;Multi-cloud is the reality of the financial services sector. Until now, querying security findings across AWS, Azure, and GCP required complex ETL or expensive third-party tools. The &lt;strong&gt;Cross-Cloud Lakehouse&lt;/strong&gt; removes the need to move data, reducing the attack surface by eliminating egress and duplicate storage. &lt;/p&gt;

&lt;p&gt;This is the platform-level solution to a problem that usually haunts Security Architects: &lt;em&gt;Governance at the speed of query&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;While AWS provides a battle-tested foundation for today, Google Cloud NEXT '26 has effectively set the roadmap for the next decade. &lt;/p&gt;

&lt;p&gt;AWS provides the baseline, but Google is solving the structural limitations of RAG. By integrating GraphRAG and ambient intelligence natively into the data layer, Google is transforming AI from a "query tool" into an "autonomous partner."&lt;/p&gt;

&lt;h2&gt;
  
  
  My Recommendation for Security Architects
&lt;/h2&gt;

&lt;p&gt;If you are building today, do not wait. The goal is to move beyond the limitations of manual, flat-vector retrieval. &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; &lt;strong&gt;If you are GCP-native:&lt;/strong&gt; Lean into the Agentic Data Cloud previews immediately. The transition from manual pipelines to ambient knowledge ingestion will drastically reduce your operational overhead.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;If you are multi-cloud:&lt;/strong&gt; Use the Cross-Cloud Lakehouse as your strategic anchor. It represents the future of federated security posture management.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;The "Auditor" Test:&lt;/strong&gt; Regardless of the platform, the primary security boundary is now the &lt;strong&gt;Agent Gateway&lt;/strong&gt;. As you move to Agentic workflows, focus your design on how this gateway logs, monitors, and enforces trust between the Agent and the data it consumes.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The Agentic Enterprise is no longer theoretical—it is here. The question for us as Security Architects is no longer if we build these pipelines, but how we govern the autonomous intelligence that will soon be making security decisions on our behalf. &lt;/p&gt;

&lt;p&gt;Google’s vision of ambient, graph-aware, cross-cloud intelligence isn't just a set of new services—it is the architectural roadmap for the next generation of cloud security.&lt;/p&gt;

&lt;p&gt;Are you ready to see how your current security controls would map to a graph-augmented architecture? &lt;/p&gt;

&lt;p&gt;I’m happy to discuss how we might bridge the gap between static compliance documents and agentic retrieval&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>cloudnextchallenge</category>
      <category>googlecloud</category>
      <category>ai</category>
    </item>
    <item>
      <title>Enforcing Zero Trust: VPC Encryption Controls Explained</title>
      <dc:creator>Lingesh B</dc:creator>
      <pubDate>Sat, 27 Dec 2025 16:06:20 +0000</pubDate>
      <link>https://forem.com/aws-builders/enforcing-zero-trust-vpc-encryption-controls-explained-4o53</link>
      <guid>https://forem.com/aws-builders/enforcing-zero-trust-vpc-encryption-controls-explained-4o53</guid>
      <description>&lt;p&gt;“Encryption in transit” is no longer a “nice-to-have” — it’s a mandatory requirement for PCI-DSS, HIPAA, and modern Zero-Trust architectures. But how do you prove to an auditor that every packet in your VPC is encrypted?&lt;/p&gt;

&lt;p&gt;You don’t do it with spreadsheets; you do it with &lt;strong&gt;VPC Flow Logs&lt;/strong&gt;. By leveraging the new ${encryption-status} field and VPC Encryption Controls, you can audit, verify, and enforce hardware-level encryption across your entire infrastructure with a single click.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;VPC Encryption Controls&lt;/strong&gt; is a security and compliance feature introduced by AWS to provide centralized visibility and authoritative control over the encryption of data moving within and between your Virtual Private Clouds.&lt;/p&gt;

&lt;p&gt;Historically, verifying that all “east-west” traffic (traffic between your internal instances, load balancers, and databases) was encrypted was a manual and complex task, often involving messy spreadsheets and custom auditing scripts. This feature automates that process by leveraging the &lt;strong&gt;AWS Nitro System&lt;/strong&gt; hardware and application-layer metadata.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Two Core Modes
&lt;/h3&gt;

&lt;p&gt;To help you reach a fully encrypted state without breaking your existing applications, the feature operates in two phases:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn8qwgte7yy8lc9qjnmgf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn8qwgte7yy8lc9qjnmgf.png" width="800" height="52"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Key Capabilities&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Detailed Auditing:&lt;/strong&gt; Adds a new ${encryption-status} field to VPC Flow Logs, showing you at a glance if traffic is encrypted via Nitro hardware (1), application-level TLS (2), both (3), or not at all (0).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Resource Identification:&lt;/strong&gt; Provides a “To-Do” list in the AWS Console of specific resources (like older EC2 instances or HTTP listeners) that are preventing you from reaching an enforced security posture.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Seamless Upgrades:&lt;/strong&gt; Automatically migrates managed infrastructure like &lt;strong&gt;Application Load Balancers (ALB)&lt;/strong&gt; and &lt;strong&gt;Fargate tasks&lt;/strong&gt; to Nitro-based hardware to ensure they meet encryption standards transparently.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Compliance Ready:&lt;/strong&gt; Simplifies the proof required for regulatory frameworks like &lt;strong&gt;HIPAA&lt;/strong&gt; , &lt;strong&gt;PCI DSS&lt;/strong&gt; , and &lt;strong&gt;FedRAMP&lt;/strong&gt; by providing an authoritative dashboard of encryption status.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Why use it?
&lt;/h3&gt;

&lt;p&gt;If your organization follows a &lt;strong&gt;Zero Trust&lt;/strong&gt; architecture, you can no longer assume that internal traffic is “safe” just because it’s inside the VPC. VPC Encryption Controls allow you to verify and mandate that every single packet is encrypted, providing a critical layer of defense-in-depth against internal threats or misconfigurations.&lt;/p&gt;

&lt;p&gt;In this demo, I have created a VPC with below resources&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7aswnt36jxyb1yw2ioot.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7aswnt36jxyb1yw2ioot.png" width="800" height="373"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftduqqa3actz9x3goir6c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftduqqa3actz9x3goir6c.png" width="800" height="229"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Architecture diagram:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;My application(static website) has four EC2 instances(webservers) behind an Application load balancer&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcamcwj36ld70434r0gox.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcamcwj36ld70434r0gox.png" width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Created VPC Encryption control in “Monitor” mode to first audit the encryption status of resources in my VPC&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fro7mdwuz61gly9zxd9s3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fro7mdwuz61gly9zxd9s3.png" width="800" height="299"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In simple terms, &lt;strong&gt;Monitor Mode&lt;/strong&gt; is like a security camera for your network. It watches all the data moving around your VPC and takes notes on whether that data is “scrambled” (encrypted) or “plain text” (unencrypted).&lt;/p&gt;

&lt;p&gt;Crucially, &lt;strong&gt;it does not block or change anything.&lt;/strong&gt; Your website and apps will keep running exactly as they are while it gathers information&lt;/p&gt;

&lt;p&gt;Below resources have been flagged as resources accepting unencrypted traffic&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Internet Gateway&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr4e4c7olwhfkbom4pd2d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr4e4c7olwhfkbom4pd2d.png" width="800" height="245"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can configure specific exclusions for resources such as &lt;a href="https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Internet_Gateway.html" rel="noopener noreferrer"&gt;internet gateways&lt;/a&gt; or &lt;a href="https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html" rel="noopener noreferrer"&gt;NAT gateways&lt;/a&gt;, that don’t support encryption (because the traffic flows outside of the AWS network).&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Elastic Network interfaces include the four EC2 instances(t2.micro) and NAT Gateway&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A3jkCEB0pO_OWiqX66fBBKw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A3jkCEB0pO_OWiqX66fBBKw.png" width="800" height="334"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Moving to a Fully Encrypted VPC(Enforce mode)
&lt;/h3&gt;

&lt;p&gt;Once you have identified unencrypted resources in &lt;strong&gt;Monitor Mode&lt;/strong&gt; , you can begin migrating them to a secure state. Depending on the service type, this process is either automatic or requires a manual upgrade.&lt;/p&gt;

&lt;h4&gt;
  
  
  1. Automatic Migration (No Action Required)
&lt;/h4&gt;

&lt;p&gt;Certain managed services will handle the transition for you. AWS will transparently move the underlying infrastructure to &lt;strong&gt;Nitro hardware&lt;/strong&gt;  — which provides automatic encryption — with &lt;strong&gt;zero service interruption&lt;/strong&gt; :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Application Load Balancers (ALB)&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Network Load Balancers (NLB)&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;AWS Fargate Tasks&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  2. Manual Migration (Action Required)
&lt;/h4&gt;

&lt;p&gt;For resources that you manage directly, such as &lt;strong&gt;Amazon EC2 instances&lt;/strong&gt; , you must take one of the following steps to achieve encryption compliance:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Upgrade Hardware:&lt;/strong&gt; Switch from older, legacy instances (like t2 or m4) to &lt;strong&gt;modern Nitro-based types&lt;/strong&gt; (like t3, m5, c6g, etc.).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Encrypt the App:&lt;/strong&gt; If you cannot upgrade the hardware, you must configure &lt;strong&gt;TLS/SSL encryption&lt;/strong&gt; (HTTPS) manually at the application level.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I created custom VPC flow logs to capture the encryption status&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A9LwRzPwhCI2GBwNxSwi6fg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A9LwRzPwhCI2GBwNxSwi6fg.png" width="800" height="355"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Sent traffic to my Webservers via Application Load Balancer( &lt;strong&gt;Note that I am accessing ALB using http and not https&lt;/strong&gt; )&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Ael4Kj4JZpM67C6IgD5-taQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Ael4Kj4JZpM67C6IgD5-taQ.png" width="800" height="105"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Then, I checked my VPC flow logs to identify the encryption status&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Encryption Status Code:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AYFc6lqmYfKdJHyCnueo1Lg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AYFc6lqmYfKdJHyCnueo1Lg.png" width="800" height="133"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For EC2 instances running on t2.micro instance type, the encryption status field is 0 meaning no hardware level or app level encryption was detected&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AhVKU9a2MLUlr4PLf7FId5A.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AhVKU9a2MLUlr4PLf7FId5A.png" width="800" height="131"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After I manually migrated two of my EC2 instances to m8a.medium(Nitro based instance), the encryption status field in the flow logs is 1 for those specific instances indicating hardware layer encryption&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AOCuh8JV-xlYMzRjQrn0fZA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AOCuh8JV-xlYMzRjQrn0fZA.png" width="800" height="131"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After manual migration to Nitro based instance type, those instances also got removed from the unencrypted resources list and only the remaining two instances(t2.micro) are flagged&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2ABXhPhnPsquoAjdx9mnX-ow.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2ABXhPhnPsquoAjdx9mnX-ow.png" width="800" height="198"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A2ScKnkqvnOKFAjG64-idBw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A2ScKnkqvnOKFAjG64-idBw.png" width="800" height="336"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;IMPORTANT CATCH:&lt;/strong&gt;
&lt;/h3&gt;

&lt;h3&gt;
  
  
  🛑 The “Port 80” Catch: Why isn’t my ALB flagged?
&lt;/h3&gt;

&lt;p&gt;If you are running an &lt;strong&gt;Application Load Balancer (ALB)&lt;/strong&gt; on &lt;strong&gt;Port 80&lt;/strong&gt; , you might be surprised to see it missing from the “Unencrypted Resources” list. It feels like a security hole, but it’s actually due to a “silent upgrade” AWS performs for you.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. The Transparent Nitro Migration
&lt;/h3&gt;

&lt;p&gt;When you enable &lt;strong&gt;Monitor Mode&lt;/strong&gt; , AWS identifies that the ALB is a managed service. It then automatically and transparently migrates the ALB’s underlying infrastructure to &lt;strong&gt;Nitro hardware&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Because Nitro-based hardware has a dedicated security chip that scrambles data at the physical network layer, the ALB is now &lt;strong&gt;capable&lt;/strong&gt; of hardware encryption. In the eyes of VPC Encryption Controls, it is no longer a “blocker” to security — even if your application is still using Port 80.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Status 1: The “Invisible” Internal Shield
&lt;/h3&gt;

&lt;p&gt;Even if you haven’t set up an SSL certificate yet, the traffic moving &lt;strong&gt;inside&lt;/strong&gt; your VPC (from the ALB to a modern EC2 instance) is often automatically encrypted by the Nitro chips on both ends.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;What you’ll see in logs:&lt;/strong&gt; An encryption-status of  &lt;strong&gt;1&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;What it means:&lt;/strong&gt; Your internal “East-West” traffic is protected by hardware-level AES-256 encryption, even over an unencrypted protocol like HTTP.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. The “False Sense of Security” Warning
&lt;/h3&gt;

&lt;p&gt;This is the most important part : &lt;strong&gt;VPC Encryption Controls only track the journey inside the VPC.&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Inside the VPC (ALB → EC2):&lt;/strong&gt; Safe (Status 1).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Outside the VPC (User → ALB):&lt;/strong&gt;  &lt;strong&gt;UNSAFE.&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If a user sends a password to your ALB on Port 80 over the public internet, that password is sent in plain text. It only gets “scrambled” by Nitro hardware &lt;em&gt;after&lt;/em&gt; it reaches the ALB. To truly be secure, you must still move to &lt;strong&gt;Port 443 (HTTPS)&lt;/strong&gt; to protect the data during its journey across the internet.&lt;/p&gt;

&lt;p&gt;The reason &lt;strong&gt;Internet Gateways (IGW)&lt;/strong&gt; and &lt;strong&gt;NAT Gateways&lt;/strong&gt; are flagged while your &lt;strong&gt;ALB&lt;/strong&gt; is not comes down to one thing: &lt;strong&gt;The Destination of the Data.&lt;/strong&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  1. The “Off-Ramp” Problem
&lt;/h3&gt;

&lt;p&gt;VPC Encryption Controls are designed to ensure data is encrypted &lt;strong&gt;within the AWS network&lt;/strong&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;The ALB&lt;/strong&gt; sends data to another resource &lt;em&gt;inside&lt;/em&gt; your VPC (like an EC2 instance). Because both ends are inside AWS, AWS can use Nitro hardware to scramble that data.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Gateways&lt;/strong&gt; are different. Their entire purpose is to send data &lt;strong&gt;outside&lt;/strong&gt; your VPC to the public internet.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Once data leaves through an IGW or NAT Gateway, AWS no longer owns the “wires” it travels on. AWS cannot force the rest of the internet to use Nitro hardware encryption. Therefore, these gateways are marked as &lt;strong&gt;Unencrypted&lt;/strong&gt; because they are essentially “leaks” where protected data turns into unprotected public data.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Physical vs. Logical Limitations
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;ALB/Fargate:&lt;/strong&gt; These are “Software-Defined” managed services. AWS can simply update the “code” they run on to include Nitro capabilities. That’s why they are automatically moved to the “Encrypted” list.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Gateways:&lt;/strong&gt; These are architectural “edge” points. A NAT Gateway is a middleman. If you send it unencrypted data from an EC2 instance, it must pass that unencrypted data out to the internet. It cannot “Nitro-encrypt” a packet that is destined for a Google or Netflix server.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. They are “Blockers” by Design
&lt;/h3&gt;

&lt;p&gt;In your dashboard, “Unencrypted Resources” really means &lt;strong&gt;“Things that will stop you from enabling Enforce Mode.”&lt;/strong&gt; If you tried to turn on &lt;strong&gt;Enforce Mode&lt;/strong&gt; without addressing these gateways, AWS would have to drop all your internet traffic to stay “compliant” with your security policy.&lt;/p&gt;

&lt;p&gt;To fix this, AWS doesn’t expect you to “encrypt” the gateway. Instead, you must &lt;strong&gt;Exclude&lt;/strong&gt;  them&lt;/p&gt;

&lt;h3&gt;
  
  
  The 3-Step Process:
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Monitor (Watch):&lt;/strong&gt; Turn on Monitor Mode to find out resources that allow unencrypted traffic.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Fix (Upgrade):&lt;/strong&gt; For resources, such as the previous generation of &lt;a href="https://aws.amazon.com/ec2/" rel="noopener noreferrer"&gt;Amazon Elastic Compute Cloud (Amazon EC2)&lt;/a&gt; instances, you will need to switch to &lt;a href="https://docs.aws.amazon.com/ec2/latest/instancetypes/ec2-nitro-instances.html" rel="noopener noreferrer"&gt;modern Nitro based&lt;/a&gt; &lt;a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/data-protection.html#encryption-transit" rel="noopener noreferrer"&gt;instance types&lt;/a&gt; or configure TLS encryption at application level.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Enforce (Lock):&lt;/strong&gt; Once the monitor shows everything is green, you flip the switch to “Enforce Mode,” which will block any future unencrypted traffic from even starting.&lt;/li&gt;
&lt;/ol&gt;




</description>
      <category>data</category>
      <category>cloudsecurity</category>
      <category>aws</category>
      <category>encryption</category>
    </item>
    <item>
      <title>AWS Config + SSM: Automated AMI Governance</title>
      <dc:creator>Lingesh B</dc:creator>
      <pubDate>Sun, 30 Nov 2025 18:42:57 +0000</pubDate>
      <link>https://forem.com/aws-builders/aws-config-ssm-automated-ami-governance-1c69</link>
      <guid>https://forem.com/aws-builders/aws-config-ssm-automated-ami-governance-1c69</guid>
      <description>&lt;p&gt;In the dynamic world of cloud infrastructure, security and compliance are paramount. One of the simplest, yet most critical, security mistakes is launching an EC2 instance from an &lt;strong&gt;unapproved or vulnerable Amazon Machine Image (AMI)&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;This not only introduces security risks (like unpatched software or misconfigurations) but also immediately causes compliance drift. The solution? Don’t just detect the drift —  &lt;strong&gt;automatically terminate it&lt;/strong&gt; using the power of &lt;strong&gt;AWS Config Rules&lt;/strong&gt; and &lt;strong&gt;Systems Manager Automation&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;This post walks through a robust, automated pattern to enforce your AMI governance policy in real-time.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Problem: Unapproved AMIs are a Security Sinkhole
&lt;/h3&gt;

&lt;p&gt;Every AMI used in your environment should be approved, patched, and hardened. When developers or tools bypass these approved golden images and launch instances using random public AMIs (or old, stale custom AMIs), they open the door to threats like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Known Vulnerabilities:&lt;/strong&gt; Older AMIs likely lack critical patches.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Malware/Backdoors:&lt;/strong&gt; Unknown public AMIs can be compromised.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Misconfiguration:&lt;/strong&gt; Images may not adhere to your organizational security baseline.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Our goal is to create a safety net that catches these non-compliant launches instantly and performs an immediate, decisive action.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 1: The Detective Control — AWS Config Rule
&lt;/h3&gt;

&lt;p&gt;The first line of defense is a detective control. Use an AWS Config rule to continuously evaluate every newly launched EC2 instance against a predefined standard.&lt;/p&gt;

&lt;h4&gt;
  
  
  🔎 The Key Config Rule: approved-amis-by-id
&lt;/h4&gt;

&lt;p&gt;AWS provides managed rules for common checks. The rule used here is the approved-amis-by-id rule&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Define the Standard:&lt;/strong&gt; You supply the Config rule with a list of &lt;strong&gt;approved AMI IDs&lt;/strong&gt; for your Region (e.g., ami-12345, ami-54321).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Continuous Evaluation:&lt;/strong&gt; When a new EC2 instance is launched, the Config service checks the AMI ID against your approved list.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Flag Non-Compliance:&lt;/strong&gt; If the instance’s AMI ID is &lt;strong&gt;not&lt;/strong&gt; on the approved list, the Config rule flags the resource’s compliance status as &lt;strong&gt;NON_COMPLIANT&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AJV9c2WMjXeF69qVXbIDZqw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AJV9c2WMjXeF69qVXbIDZqw.png" width="800" height="406"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Here, I have mentioned “ami-0fa3fe0fa7920f68e” id as my approved AMI. You can pass your authentic AMI id’s in the parameters section&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AzEsUgMQ_F85UeQLRCVGtjw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AzEsUgMQ_F85UeQLRCVGtjw.png" width="800" height="324"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I launched an EC2 instance with AMI “ami-069e612f612be3a2b”&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Ac4-tVhLVbFDCPqb5ZDci0Q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Ac4-tVhLVbFDCPqb5ZDci0Q.png" width="800" height="249"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As expected, the config rule has marked this EC2 instance as non-compliant&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Aknyw4Lhy7E3F3WzWIAsfEQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Aknyw4Lhy7E3F3WzWIAsfEQ.png" width="800" height="202"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 2: The Proactive Control — Automated Remediation
&lt;/h3&gt;

&lt;p&gt;Detection alone is not enough; we need enforcement. We use &lt;strong&gt;AWS Systems Manager (SSM) Automation&lt;/strong&gt; as the remediation engine linked directly to our Config rule.&lt;/p&gt;

&lt;h4&gt;
  
  
  🔨 Linking Config to Systems Manager
&lt;/h4&gt;

&lt;p&gt;When setting up the approved-amis-by-id Config rule, you associate it with an &lt;strong&gt;SSM Automation Document&lt;/strong&gt;. This document defines the steps to take when a resource becomes non-compliant.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Define the Action:&lt;/strong&gt; The simplest and most decisive action is &lt;strong&gt;aws:terminateinstances&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Input Parameter:&lt;/strong&gt; The Config rule provides the &lt;strong&gt;Non-Compliant Resource ID&lt;/strong&gt; (the EC2 instance ID) as an input parameter to the SSM Automation document.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Execution:&lt;/strong&gt; Upon receiving the non-compliant signal, the SSM Automation Document executes the termination command against the offending EC2 instance.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Select “Manage Remediation” on the config rule&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AEXkmDLosrZ2TBnSOu1Blcg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AEXkmDLosrZ2TBnSOu1Blcg.png" width="800" height="407"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Choose “Automatic remediation” and optionally modify the values for retry attempts and time window&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AetgMQZGL0Q1tX_Yj6GjFlw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AetgMQZGL0Q1tX_Yj6GjFlw.png" width="800" height="348"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Many pre-built EC2 actions(SSM documents) are available. For this example, I opted for “Terminate EC2 instances” action. You can decide and choose the appropriate action you want to implement for non-compliant EC2 instances&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2At57Keva6KDVfnYVhZKipig.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2At57Keva6KDVfnYVhZKipig.png" width="800" height="392"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AFxC4MKj6iB_ugLYtrRx-Cw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AFxC4MKj6iB_ugLYtrRx-Cw.png" width="800" height="291"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Next, create a role with “Systems Manager” as the trusted entity and below permissions policy&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AUvAb-POFBlvH4km1bgKQ0w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AUvAb-POFBlvH4km1bgKQ0w.png" width="800" height="347"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A0cdFSP-_PIYZA5PEdliZ8w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A0cdFSP-_PIYZA5PEdliZ8w.png" width="800" height="312"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Pass the ARN of the role created and save the configuration&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AyeQl1Yr-hNvH0VNoqXo6hw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AyeQl1Yr-hNvH0VNoqXo6hw.png" width="800" height="238"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can wait for the auto-remediation to kick-in or if you want to test quickly in interest of time, click on “Remediate”&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AMvFRhGgC8UBO2jgSeL6iGA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AMvFRhGgC8UBO2jgSeL6iGA.png" width="800" height="210"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Non-Compliant EC2 instance has been terminated by the automated action&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AOhAuUSuHNOZBBBkSxURitQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AOhAuUSuHNOZBBBkSxURitQ.png" width="800" height="193"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  A Note on Time and Security
&lt;/h4&gt;

&lt;p&gt;This automated termination occurs within minutes of the instance being launched and flagged. By immediately removing the non-compliant resource, you:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Minimize the &lt;strong&gt;“blast radius”&lt;/strong&gt; of a potential security vulnerability.&lt;/li&gt;
&lt;li&gt;Ensure &lt;strong&gt;compliance status&lt;/strong&gt; is instantly restored.&lt;/li&gt;
&lt;li&gt;Provide immediate feedback to the developer or service that launched the non-compliant resource.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Best Practices for Deployment
&lt;/h3&gt;

&lt;p&gt;To make this pattern effective and operationally safe, consider the following:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Staging/Testing:&lt;/strong&gt; Deploy this setup in a non-production (e.g., Development) environment in &lt;strong&gt;Monitor Mode&lt;/strong&gt; first to test the detection accuracy before enabling automated remediation.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Alerting and Notification:&lt;/strong&gt; Configure &lt;strong&gt;Amazon SNS&lt;/strong&gt; or &lt;strong&gt;AWS Chatbot&lt;/strong&gt; to receive alerts whenever an instance is terminated by this automation. This provides necessary visibility and audit trails.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;By pairing AWS Config for detection with Systems Manager for remediation, you move beyond mere auditing and establish a &lt;strong&gt;self-healing, compliant infrastructure&lt;/strong&gt; that enforces security standards without human intervention.&lt;/p&gt;




</description>
      <category>aws</category>
      <category>compliance</category>
      <category>ec2</category>
      <category>automation</category>
    </item>
    <item>
      <title>AWS Security Hub vs Security Hub CSPM: Partners in Protecting Your Cloud Journey</title>
      <dc:creator>Lingesh B</dc:creator>
      <pubDate>Sat, 08 Nov 2025 19:17:44 +0000</pubDate>
      <link>https://forem.com/aws-builders/aws-security-hub-vs-security-hub-cspm-partners-in-protecting-your-cloud-journey-2c3</link>
      <guid>https://forem.com/aws-builders/aws-security-hub-vs-security-hub-cspm-partners-in-protecting-your-cloud-journey-2c3</guid>
      <description>&lt;p&gt;AWS Security Hub and Security Hub CSPM are closely related, but they play distinct roles in AWS security strategy.&lt;/p&gt;

&lt;h3&gt;
  
  
  What is AWS Security Hub?
&lt;/h3&gt;

&lt;p&gt;AWS Security Hub is a unified cloud security platform. Its primary role is to aggregate, correlate, and prioritize security findings from various AWS services — such as Amazon GuardDuty, Amazon Inspector, and Amazon Macie — as well as select third-party providers. Security Hub provides a comprehensive dashboard where security teams can view exposures, automate responses, and track remediation status across their AWS accounts.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ft1oopim5i5yhelsosyfi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ft1oopim5i5yhelsosyfi.png" width="800" height="288"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Key Features of AWS Security Hub:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Centralized findings aggregation (from sources like GuardDuty, Inspector, CSPM, etc.)&lt;/li&gt;
&lt;li&gt;Automated response orchestration via EventBridge&lt;/li&gt;
&lt;li&gt;Attack path correlation and prioritized risk analysis&lt;/li&gt;
&lt;li&gt;Unified dashboard with actionable insights&lt;/li&gt;
&lt;li&gt;Uses OCSF (Open Cybersecurity Schema Framework) for standardized findings&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy0q733ncu8dqs7c6ynkp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy0q733ncu8dqs7c6ynkp.png" width="800" height="374"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fytgf7ulwggv7o834mv9t.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fytgf7ulwggv7o834mv9t.png" width="800" height="318"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  What is Security Hub CSPM?
&lt;/h3&gt;

&lt;p&gt;Security Hub CSPM stands for Cloud Security Posture Management. It focuses specifically on evaluating cloud resource configurations against best practices and compliance frameworks such as CIS, PCI DSS, or NIST. CSPM functionality runs automated, continuous checks to identify misconfigurations, policy violations, and compliance risks.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7nz5348qve1s6f479ls9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7nz5348qve1s6f479ls9.png" width="800" height="318"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Key Features of Security Hub CSPM:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Automated posture and compliance checks (FSBP, CIS, PCI DSS, NIST, etc.)&lt;/li&gt;
&lt;li&gt;Continuous cloud resource monitoring&lt;/li&gt;
&lt;li&gt;Security scoring and detailed compliance reporting&lt;/li&gt;
&lt;li&gt;Uses AWS Security Finding Format (ASFF)&lt;/li&gt;
&lt;li&gt;Seamlessly integrates with Security Hub for unified operations&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffs0ld2s0ns2eqzmv5pld.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffs0ld2s0ns2eqzmv5pld.png" width="800" height="318"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5fbx56jf3tlbh49vi5gj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5fbx56jf3tlbh49vi5gj.png" width="800" height="274"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  How Are They Different?
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4paksm14l9lpwzilendp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4paksm14l9lpwzilendp.png" width="800" height="286"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  How Do They Work Together?
&lt;/h3&gt;

&lt;p&gt;Think of Security Hub as the dashboard that sees everything. CSPM is the engine running compliance and configuration checks in the background. When you enable CSPM, its findings — such as misconfigured S3 buckets, permissive security groups, or non-compliant IAM policies — are fed into Security Hub, where they’re surfaced, correlated with other risks, and prioritized for response.&lt;/p&gt;

&lt;p&gt;Security Hub enables workflows and automation (via EventBridge, Lambda, or external tools) so security teams can address exposures rapidly, track remediation, and demonstrate compliance.&lt;/p&gt;

&lt;h3&gt;
  
  
  When Should You Use Each Service?
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Enable CSPM if you need continuous compliance monitoring, resource configuration checks, or detailed reports for frameworks like CIS, PCI DSS, or NIST.&lt;/li&gt;
&lt;li&gt;Enable Security Hub if you want a single pane of glass, automated response workflows, and correlation across all your AWS security services.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Best Practice: Most organizations should enable both. CSPM ensures your AWS environment adheres to security best practices, while Security Hub gives you the operational control and visibility to manage real-world cloud security risks.&lt;/p&gt;

&lt;h3&gt;
  
  
  Summary
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;AWS Security Hub is the centralized cloud security analytics and response platform.&lt;/li&gt;
&lt;li&gt;Security Hub CSPM is the posture management and compliance checking core.&lt;/li&gt;
&lt;li&gt;Together, they deliver complete visibility, automated compliance, and actionable insights.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;By understanding these differences and how the solutions complement each other, you can build a robust, automated, and scalable cloud security strategy that delivers real-world protection and compliance.&lt;/p&gt;




</description>
      <category>compliance</category>
      <category>aws</category>
      <category>cloudsecurity</category>
      <category>security</category>
    </item>
    <item>
      <title>Meet Your New Dev Partner: The Amazon Q CLI Agent (and Our Windows Game!)</title>
      <dc:creator>Lingesh B</dc:creator>
      <pubDate>Fri, 23 May 2025 18:14:55 +0000</pubDate>
      <link>https://forem.com/aws-builders/meet-your-new-dev-partner-the-amazon-q-cli-agent-and-our-windows-game-43km</link>
      <guid>https://forem.com/aws-builders/meet-your-new-dev-partner-the-amazon-q-cli-agent-and-our-windows-game-43km</guid>
      <description>&lt;p&gt;&lt;strong&gt;Introducing Amazon Q: AWS’s AI Assistant&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In the rapidly evolving landscape of cloud computing and development tools, Amazon Web Services has introduced Amazon Q,&lt;br&gt;&lt;br&gt;
an AI assistant designed specifically to enhance productivity for developers, cloud practitioners, and AWS users.&lt;/p&gt;

&lt;p&gt;Amazon Q serves as your knowledgeable companion for navigating the AWS ecosystem, writing and debugging code, managing&lt;br&gt;&lt;br&gt;
infrastructure, and implementing best practices. Unlike general-purpose AI assistants, Amazon Q specializes in technical&lt;br&gt;&lt;br&gt;
tasks with direct access to your working environment.&lt;/p&gt;

&lt;p&gt;What sets Amazon Q apart is its ability to interact directly with your system — executing bash commands, reading and&lt;br&gt;&lt;br&gt;
writing files, making AWS CLI calls, and providing contextual recommendations based on your specific environment.&lt;br&gt;&lt;br&gt;
Whether you’re troubleshooting deployment issues, optimizing resource usage, or accelerating development workflows,&lt;br&gt;&lt;br&gt;
Amazon Q brings AWS expertise directly to your command line.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Use Cases:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Amazon Q can assist with below activities&lt;/p&gt;

&lt;p&gt;• **AWS Services**&lt;br&gt;&lt;br&gt;
 • Provide guidance on AWS service selection and configuration&lt;br&gt;&lt;br&gt;
 • Explain AWS concepts and best practices&lt;br&gt;&lt;br&gt;
 • Troubleshoot AWS service issues&lt;/p&gt;

&lt;p&gt;• **Code Assistance**&lt;br&gt;&lt;br&gt;
 • Write, modify, and debug code&lt;br&gt;&lt;br&gt;
 • Review and optimize existing code&lt;br&gt;&lt;br&gt;
 • Generate code examples for various programming languages&lt;br&gt;&lt;br&gt;
 • Help with unit tests and test frameworks&lt;/p&gt;

&lt;p&gt;• **System Operations**&lt;br&gt;&lt;br&gt;
 • Execute bash commands on your Linux system&lt;br&gt;&lt;br&gt;
 • Read and write files on your filesystem&lt;br&gt;&lt;br&gt;
 • List directory contents and navigate your file structure&lt;/p&gt;

&lt;p&gt;• **AWS CLI Integration**&lt;br&gt;&lt;br&gt;
 • Make AWS CLI calls to manage resources&lt;br&gt;&lt;br&gt;
 • Query AWS resources and services&lt;br&gt;&lt;br&gt;
 • Help automate AWS operations&lt;/p&gt;

&lt;p&gt;• **Infrastructure Management**&lt;br&gt;&lt;br&gt;
 • Assist with infrastructure as code (CloudFormation, CDK, Terraform)&lt;br&gt;&lt;br&gt;
 • Optimize resource configurations&lt;br&gt;&lt;br&gt;
 • Implement security best practices&lt;/p&gt;

&lt;p&gt;• **Troubleshooting**&lt;br&gt;&lt;br&gt;
 • Debug application errors&lt;br&gt;&lt;br&gt;
 • Analyze logs and error messages&lt;br&gt;&lt;br&gt;
 • Suggest solutions for common issues&lt;/p&gt;

&lt;p&gt;**Development Workflows**&lt;br&gt;&lt;br&gt;
 • Automate repetitive tasks&lt;br&gt;&lt;br&gt;
 • Improve development processes&lt;br&gt;&lt;br&gt;
 • Suggest tools and approaches for specific problems&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Installing Amazon Q CLI on Windows:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Native windows installation is not available yet, so we will use Windows Subsystem for Linux(wsl) to install Amazon Q CLI in Windows machine&lt;/p&gt;

&lt;p&gt;Step 1:&lt;/p&gt;

&lt;p&gt;Run command wsl — install on your windows terminal&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp8gqqzcpdf03lp6vqkvi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp8gqqzcpdf03lp6vqkvi.png" width="800" height="97"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Step 2:&lt;/p&gt;

&lt;p&gt;Run command wsl -d ubuntu&lt;br&gt;&lt;br&gt;
This will download and install a virtual ubuntu instance on youe wsl environment. You will also be prompted to setup unix user account credentials&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Famh9x5t8xjbt0qwrzsfa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Famh9x5t8xjbt0qwrzsfa.png" width="800" height="376"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Step 3:&lt;/p&gt;

&lt;p&gt;Default directory in wsl account points to your windows home directory. Run cd to change your directory path&lt;/p&gt;

&lt;p&gt;Run command sudo apt install unzip&lt;/p&gt;

&lt;p&gt;Download the installer using command&lt;br&gt;&lt;br&gt;
curl — proto ‘=https’ — tlsv1.2 -sSf &lt;a href="https://desktop-release.codewhisperer.us-east-1.amazonaws.com/latest/q-x86_64-linux-musl.zip" rel="noopener noreferrer"&gt;https://desktop-release.codewhisperer.us-east-1.amazonaws.com/latest/q-x86_64-linux-musl.zip&lt;/a&gt; -o q.zip&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxtlo078gezi8qzctmypb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxtlo078gezi8qzctmypb.png" width="800" height="337"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Step 4:&lt;/p&gt;

&lt;p&gt;Run unzip q.zip to unzip the archive&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9sirl05iuqehjd7rjxwx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9sirl05iuqehjd7rjxwx.png" width="800" height="232"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Step 5:&lt;/p&gt;

&lt;p&gt;After unzipping the archive, you will find the directory named q. Switch to q directory and execute the install.sh script&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F904%2F1%2AbV5vUmUn-_XafBNj52GXAA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F904%2F1%2AbV5vUmUn-_XafBNj52GXAA.png" width="800" height="330"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Step 6:&lt;/p&gt;

&lt;p&gt;After successful installation, you can interact with Amazon Q&lt;br&gt;&lt;br&gt;
Type q chat&lt;br&gt;&lt;br&gt;
Here, I have prompted it to create a simple 2d game. You can ask it to create a game of your choice&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AigHtxw1h5Ebq0EV5P4r2RA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AigHtxw1h5Ebq0EV5P4r2RA.png" width="800" height="350"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Amazon Q starts building the game using python pygame library&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AVTHBlrg3tCSBUolCBSJ0Rw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AVTHBlrg3tCSBUolCBSJ0Rw.png" width="800" height="314"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2ARYsYecBeLXFVoXrhQ8d6wg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2ARYsYecBeLXFVoXrhQ8d6wg.png" width="800" height="433"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To quit the Amazon Q CLI environment, type /q&lt;/p&gt;

&lt;p&gt;Step 7:&lt;/p&gt;

&lt;p&gt;Now, I see there is file named simple_game.py created in my home directory.&lt;br&gt;&lt;br&gt;
Run python3 simple_game.py and you will see the game window pop-up&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AS-50CYTCpKPFFRKMAVtnSw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AS-50CYTCpKPFFRKMAVtnSw.png" width="800" height="366"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Note: In case, you do not have pip already installed, execute the below commands to install pip&lt;br&gt;&lt;br&gt;
sudo apt-get update&lt;br&gt;&lt;br&gt;
sudo apt-get install python3-pip&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2A3xgxkV9c8eOWfiXR1Oka1A.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2A3xgxkV9c8eOWfiXR1Oka1A.png" width="800" height="232"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To explore additional functions, I have prompted Amazon Q to create and execute a bash script to display system metrics&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AV7v1sXpVbz-6zhg36a0c2A.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AV7v1sXpVbz-6zhg36a0c2A.png" width="800" height="395"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Amazon Q CLI successfully created and executed the script to give me the below system metrics report&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AJa0DzhtGNCy31dfFNW0EFg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AJa0DzhtGNCy31dfFNW0EFg.png" width="800" height="345"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Amazon Q CLI proves to be a versatile and powerful tool that extends far beyond basic AWS interactions. Throughout this blog, we’ve&lt;br&gt;&lt;br&gt;
explored its diverse capabilities — from assisting with everyday development tasks to creating engaging applications like our 2D&lt;br&gt;&lt;br&gt;
game, and even helping with system administration through custom bash scripts for monitoring system metrics. The straightforward&lt;br&gt;&lt;br&gt;
installation process on Windows makes it accessible to developers working in any environment.&lt;/p&gt;

&lt;p&gt;What makes Amazon Q CLI particularly valuable is its ability to serve as both a productivity enhancer and a creative tool. Whether&lt;br&gt;&lt;br&gt;
you’re writing scripts to monitor system performance, developing games, or managing AWS resources, Amazon Q CLI provides contextual,&lt;br&gt;&lt;br&gt;
intelligent assistance that adapts to your needs. Its natural language understanding and code-aware capabilities make it an&lt;br&gt;&lt;br&gt;
indispensable companion for developers, DevOps engineers, and system administrators alike.&lt;/p&gt;

&lt;p&gt;As we’ve demonstrated through practical examples, Amazon Q CLI isn’t just another command-line tool — it’s an AI-powered assistant&lt;br&gt;&lt;br&gt;
that understands your development environment, helps solve complex problems, and accelerates your workflow. As AWS continues to&lt;br&gt;&lt;br&gt;
enhance its capabilities, Amazon Q CLI will undoubtedly become an even more essential tool in every developer’s toolkit.&lt;/p&gt;

&lt;p&gt;Start exploring Amazon Q CLI today, and discover how it can transform your development experience and boost your productivity.&lt;/p&gt;




</description>
      <category>amazonqcli</category>
      <category>ai</category>
      <category>aws</category>
      <category>amazonq</category>
    </item>
    <item>
      <title>Code-Free AI Magic: Build an image classification model with AWS SageMaker Canvas</title>
      <dc:creator>Lingesh B</dc:creator>
      <pubDate>Sat, 19 Apr 2025 12:35:08 +0000</pubDate>
      <link>https://forem.com/aws-builders/code-free-ai-magic-build-an-image-classification-model-with-aws-sagemaker-canvas-2gio</link>
      <guid>https://forem.com/aws-builders/code-free-ai-magic-build-an-image-classification-model-with-aws-sagemaker-canvas-2gio</guid>
      <description>&lt;h3&gt;
  
  
  What is SageMaker Canvas?
&lt;/h3&gt;

&lt;p&gt;Amazon SageMaker Canvas empowers you to transform data at petabyte-scale, and build, evaluate, and deploy production-ready machine learning (ML) models without coding. It streamlines the end-to-end ML lifecycle in a unified and secure enterprise environment.&lt;/p&gt;

&lt;p&gt;With SageMaker Canvas, you can accelerate innovation and more quickly solve business problems by democratizing ML development across all skill levels and regardless of coding expertise.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Benefits of SageMaker Canvas:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Amazon SageMaker Canvas offers a compelling suite of benefits that democratize machine learning, making it accessible to a wider range of users without requiring coding expertise. Here are some key advantages:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. No-Code Machine Learning:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Intuitive Visual Interface:&lt;/strong&gt; SageMaker Canvas provides a user-friendly, point-and-click interface, eliminating the need to write any code for the entire ML lifecycle.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Simplified Workflow:&lt;/strong&gt; It streamlines the process of data preparation, model building, training, evaluation, and deployment into an easy-to-follow visual workflow.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;2. Accessibility for Business Users:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Empowers Non-Technical Teams:&lt;/strong&gt; Business analysts, domain experts, and other users without deep ML knowledge can build and deploy models, directly addressing their specific business problems.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Bridging the Gap:&lt;/strong&gt; It reduces the reliance on data scientists and engineers for initial model development and exploration.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;3. Accelerated Model Building:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Automated Model Selection (AutoML):&lt;/strong&gt; Canvas automatically analyzes your data and tests various machine learning algorithms to identify the best-performing models for your specific prediction task.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Rapid Experimentation:&lt;/strong&gt; The no-code environment allows for quick iteration and experimentation with different data and model configurations.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;4. Enhanced Collaboration and Governance:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Seamless Integration with SageMaker Studio:&lt;/strong&gt; Models built in Canvas can be easily shared with data scientists in SageMaker Studio for further customization and advanced analysis.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Transparency and Explainability:&lt;/strong&gt; Canvas provides insights into model performance and offers explanations of predictions, fostering trust and understanding.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Model Registry Integration:&lt;/strong&gt; Models can be registered in the SageMaker Model Registry for governance, version control, and MLOps best practices.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Collaboration Features:&lt;/strong&gt; Facilitates collaboration across teams through model sharing and integration with other AWS services like Amazon DataZone and Amazon QuickSight.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;5. End-to-End ML Lifecycle Support:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Data Preparation:&lt;/strong&gt; Easily connect to various data sources, visualize data, and perform data transformations without coding.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Model Building &amp;amp; Training:&lt;/strong&gt; Automatically build and train models using AutoML capabilities.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Model Evaluation:&lt;/strong&gt; Assess model performance with intuitive visualizations and metrics.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Deployment:&lt;/strong&gt; Deploy models for real-time or batch predictions with just a few clicks.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Monitoring (via integration with other services):&lt;/strong&gt; While Canvas itself is no-code, the deployed models can be monitored using other AWS services.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;6. Cost-Effective:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Democratization of ML:&lt;/strong&gt; Reduces the need for large teams of specialized data scientists for every ML task.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Efficiency Gains:&lt;/strong&gt; Speeds up the model development and deployment process, leading to faster time-to-value.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In essence, SageMaker Canvas empowers a broader audience to harness the power of machine learning to solve business problems, explore data-driven insights, and innovate more quickly, all within a user-friendly, no-code environment&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Demo:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In this demo, lets use SageMaker Canvas to build,train and deploy an image classification(dogs &amp;amp; cats) model without any code in just few clicks&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1:Create a SageMaker domain&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Navigate to SageMaker AI service in AWS console and click on ‘Create a SageMaker domain’&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AS-1gNZcfQ4FXc6xCH_lniw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AS-1gNZcfQ4FXc6xCH_lniw.png" width="800" height="294"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Opt for ‘Quick setup’ for demo purpose&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2APFIqE8jm1XxX40rkneJV4Q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2APFIqE8jm1XxX40rkneJV4Q.png" width="800" height="302"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once domain is ready, you can view it in ‘Domains’ section&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AEUNh6o9_sxRYbKBooK8Whg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AEUNh6o9_sxRYbKBooK8Whg.png" width="800" height="289"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2: Open Canvas&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AyUnixrQWqKVdqdH9NcTrcQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AyUnixrQWqKVdqdH9NcTrcQ.png" width="800" height="285"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Click on ‘My Models’&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Alc7zhkIlKr5_k7qQYVULeA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Alc7zhkIlKr5_k7qQYVULeA.png" width="800" height="342"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Click on ‘Create new model’&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AZJd7WQBzzBBlnPAPrJmc2Q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AZJd7WQBzzBBlnPAPrJmc2Q.png" width="800" height="351"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Name the model as you wish and choose ‘Image analysis’ under problem type&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A-vHKw98jHd4PMhvS_Vvedw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A-vHKw98jHd4PMhvS_Vvedw.png" width="800" height="323"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3: Create an image dataset&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Data is the lifeblood that fuels machine learning models, enabling them to learn patterns, make predictions, and drive intelligent decisions.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AAj7AqdaQpb0PNQCE5M9r5Q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AAj7AqdaQpb0PNQCE5M9r5Q.png" width="800" height="333"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Kaggle is a very popular platform for data scientists and machine learning practitioners. It hosts a vast collection of datasets uploaded by the community, ranging in size and complexity.&lt;/p&gt;

&lt;p&gt;For this demo, I have downloaded the below dataset which has labelled images of cats and dogs&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AkhW99NCsmmHRZS8-HPIj3Q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AkhW99NCsmmHRZS8-HPIj3Q.png" width="800" height="304"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Dataset consists of two folders. One folder has images for training and other folder has images for testing the model&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F763%2F1%2AgvHJWw0m0WbUT2y85BVQpw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F763%2F1%2AgvHJWw0m0WbUT2y85BVQpw.png" width="763" height="355"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Create a training dataset&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AbbYtZyW4D8hO76qgfhGngA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AbbYtZyW4D8hO76qgfhGngA.png" width="800" height="376"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A1locQ5pFxN99FMKcRzdkoQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A1locQ5pFxN99FMKcRzdkoQ.png" width="800" height="301"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Upload the dog images folder&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AqPclPH7JbNzpOB3nbttHrg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AqPclPH7JbNzpOB3nbttHrg.png" width="800" height="216"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Upload the cat images folder&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A1amccrNJm5u7_PMfEsnpfQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A1amccrNJm5u7_PMfEsnpfQ.png" width="800" height="222"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AhOiQr41CNJV21egeo4iqGQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AhOiQr41CNJV21egeo4iqGQ.png" width="800" height="364"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Wait for the dataset to be ready&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Asj4Z3Jq8d4sGzwXRiDw3HQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Asj4Z3Jq8d4sGzwXRiDw3HQ.png" width="800" height="183"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4: Build model&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;As you can see below, label distribution among data is even. We have 200 dog images and 200 cat images as part of training data&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AzAOUoCi8qtxb4QhHWazjFQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AzAOUoCi8qtxb4QhHWazjFQ.png" width="800" height="340"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Click on ‘Quick build’&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Az-3nvmt2LG7B1KiKTVNYkg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Az-3nvmt2LG7B1KiKTVNYkg.png" width="800" height="267"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It takes around 15–30 minutes for the model to be ready&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AQ-2MYGAylVoQ0JZhvUHplw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AQ-2MYGAylVoQ0JZhvUHplw.png" width="800" height="321"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once the model is ready, you can view and analyze the training results&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AKKf-J-ALGJI1p3x3g6Sljg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AKKf-J-ALGJI1p3x3g6Sljg.png" width="800" height="377"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Ap7aolB6BTxrWmD28CyEEPg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Ap7aolB6BTxrWmD28CyEEPg.png" width="800" height="341"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AqH2O_Xgim0eWtcsYVKGoew.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AqH2O_Xgim0eWtcsYVKGoew.png" width="800" height="325"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5: Make model predictions with new data for validation&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;SageMaker Canvas offers two options, one for single prediction and other for batch prediction&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2An6IbDBXTDbv6nJPxq4ijIA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2An6IbDBXTDbv6nJPxq4ijIA.png" width="800" height="186"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We will go for the batch prediction and create a test dataset&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AG32TTtuWkZ_L5jzgnRGJFg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AG32TTtuWkZ_L5jzgnRGJFg.png" width="800" height="284"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;From the already downloaded dataset, open the ‘test’ folder and upload 70 dog images and 70 cat images which will form the test dataset&lt;/p&gt;

&lt;p&gt;Once test dataset is ready, click on ‘Generate Predictions’&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Ax7DND8G_wuM7HHtEtjExig.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Ax7DND8G_wuM7HHtEtjExig.png" width="800" height="292"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AcXq2XmNK0eryvwJUm7n9EQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AcXq2XmNK0eryvwJUm7n9EQ.png" width="800" height="258"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Ag4bEiLe_v9xbQBwKhtQjNA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Ag4bEiLe_v9xbQBwKhtQjNA.png" width="800" height="206"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;View and analyze the prediction results&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A3bmzIK-mdFYDd89WooH_Pg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A3bmzIK-mdFYDd89WooH_Pg.png" width="800" height="332"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2ANjFeiANkfqDzGBkkUcLs9w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2ANjFeiANkfqDzGBkkUcLs9w.png" width="800" height="335"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5: Deploy the model&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If the prediction results are satisfactory, proceed with the model deployment. You can deploy your model to SageMaker AI hosting services and get an endpoint that can be used for inference. These endpoints are fully managed and support autoscaling.&lt;/p&gt;

&lt;p&gt;To send an inference request to a model, you invoke the endpoint that hosts it. You can invoke your endpoints using Amazon SageMaker Studio, the AWS SDKs, or the AWS CLI&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AftADP4bCk7Go5cxVFiNUVQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AftADP4bCk7Go5cxVFiNUVQ.png" width="800" height="238"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And there you have it! You’ve successfully built, trained, and deployed your very own image classification model to distinguish between cats and dogs — all without writing a single line of code, thanks to the intuitive power of Amazon SageMaker Canvas.&lt;/p&gt;

&lt;p&gt;This is just the beginning of what you can achieve with visual AI. Imagine classifying different types of flowers, identifying objects in your home, or even analyzing product quality. SageMaker Canvas opens up a world of possibilities, empowering anyone to harness the power of machine learning for image understanding. So go ahead, explore your image data and unleash your inner AI visionary!&lt;/p&gt;




</description>
      <category>ai</category>
      <category>imageclassification</category>
      <category>sagemakercanvas</category>
      <category>awssagemaker</category>
    </item>
    <item>
      <title>Building a Secure AWS Foundation: A Step-by-Step Guide to setup Landing Zone with AWS Control Tower</title>
      <dc:creator>Lingesh B</dc:creator>
      <pubDate>Sun, 19 Jan 2025 12:00:54 +0000</pubDate>
      <link>https://forem.com/aws-builders/building-a-secure-aws-foundation-a-step-by-step-guide-to-setup-landing-zone-with-aws-control-tower-2l8a</link>
      <guid>https://forem.com/aws-builders/building-a-secure-aws-foundation-a-step-by-step-guide-to-setup-landing-zone-with-aws-control-tower-2l8a</guid>
      <description>&lt;p&gt;&lt;strong&gt;Introduction&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Cloud computing offers incredible flexibility and scalability, but managing a multi-account AWS environment can quickly become complex. This is where AWS Control Tower comes in. This powerful service helps you establish and govern a secure and compliant foundation for your AWS workloads — a crucial step known as setting up a “Landing Zone.”&lt;/p&gt;

&lt;p&gt;This blog will provide a user-friendly guide to understanding AWS Control Tower and walking you through the process of setting up a secure landing zone.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is AWS Control Tower?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Imagine Control Tower as a skilled architect and construction crew for your AWS environment. It automates the building and management of a secure and compliant foundation, ensuring your AWS workloads operate efficiently and securely.&lt;/p&gt;

&lt;p&gt;Here’s a breakdown:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Automated Setup:&lt;/strong&gt; Control Tower automates the deployment of core AWS security and operational best practices. This includes setting up accounts, configuring networks, and implementing security controls.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Centralized Governance:&lt;/strong&gt; It provides a central point of control for managing and governing your entire AWS environment, making it easier to enforce policies and maintain consistency.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Simplified Compliance:&lt;/strong&gt; Control Tower helps you meet industry standards and regulations (like PCI DSS, ISO 27001) by enforcing security best practices and automating compliance checks.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Enhanced Security:&lt;/strong&gt; It incorporates built-in security guardrails that prevent common misconfigurations and help you maintain a high level of security.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;What is an AWS Landing Zone?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Think of your AWS Landing Zone as the secure and well-architected foundation for your entire AWS environment. It’s where you deploy and operate your applications and services. A well-defined landing zone includes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Account Structure:&lt;/strong&gt; A well-organized structure for your AWS accounts, separating development, test, and production environments for better security and control.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Network Configuration:&lt;/strong&gt; A secure and scalable network architecture (using Virtual Private Clouds — VPCs) to isolate and protect your workloads.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Identity and Access Management (IAM):&lt;/strong&gt; Robust IAM policies and roles to control access to AWS resources and ensure only authorized users can perform specific actions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Security Best Practices:&lt;/strong&gt; Implementation of key security measures like encryption, logging, and intrusion detection.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Setting Up Your AWS Landing Zone with Control Tower: A Step-by-Step Guide&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Log into your AWS account which you want to use as Management account with Administrator or Root access and open AWS Control Tower console&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7i3slg9cpadxr29qvber.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7i3slg9cpadxr29qvber.png" width="800" height="233"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1: Review pricing and select Region&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2plteyp6qliiw47twicr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2plteyp6qliiw47twicr.png" width="800" height="323"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;I have chosen North Virginia as my home region&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpcx8sxq2gspan8ywmffj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpcx8sxq2gspan8ywmffj.png" width="800" height="332"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;I have selected Singapore as my additional region for governance. You can choose your regions based on your environment and requirements&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnsophgkrhz8d8hk33knq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnsophgkrhz8d8hk33knq.png" width="800" height="343"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Below setting allows you to prevent users from launching resources in other regions to meet company’s compliance and regulatory requirements. I have not enabled it.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhs1akqf0sljv650gel5y.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhs1akqf0sljv650gel5y.png" width="800" height="416"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2: Configure Organizational units(OU’s)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx61gm1fuhjuiw9j193jv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx61gm1fuhjuiw9j193jv.png" width="800" height="245"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;I have created an additional OU named ‘Applications’&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2AqBjQjPVc4QzzepFpdEJY9w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2AqBjQjPVc4QzzepFpdEJY9w.png" width="800" height="358"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3: Configure shared accounts&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AfpeBuhmoLPg22srtlJOT_Q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AfpeBuhmoLPg22srtlJOT_Q.png" width="800" height="194"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;I opted to create new accounts as Audit and Log archive accounts instead of using existing accounts&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F901%2F1%2AlEpVem4j6hZjofavB4ArQg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F901%2F1%2AlEpVem4j6hZjofavB4ArQg.png" width="800" height="334"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F898%2F1%2AOqEvapQ_5j1EHcD8-Sfknw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F898%2F1%2AOqEvapQ_5j1EHcD8-Sfknw.png" width="800" height="300"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4: Additional configurations&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;I opted for self managed access since I already had an existing IAM Identity Center setup&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2A7VzGatntK1hpXGuCvICRLA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2A7VzGatntK1hpXGuCvICRLA.png" width="800" height="237"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2ARGLkvIpVySXkdxUSubVXtA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2ARGLkvIpVySXkdxUSubVXtA.png" width="800" height="420"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2AjGI_wCfwvN9BN-I2NzBm1A.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2AjGI_wCfwvN9BN-I2NzBm1A.png" width="800" height="329"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2A3NOy4Dzz035DcMe1ILYtYA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2A3NOy4Dzz035DcMe1ILYtYA.png" width="800" height="397"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5: Review&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2A2uR86UdXA9suXDVaozWErg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2A2uR86UdXA9suXDVaozWErg.png" width="800" height="241"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2ACWBGvCB5-0CP8fMGKsmq0Q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2ACWBGvCB5-0CP8fMGKsmq0Q.png" width="800" height="283"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F901%2F1%2AZJ2oKgh-yhC8bQe-pzq7Iw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F901%2F1%2AZJ2oKgh-yhC8bQe-pzq7Iw.png" width="800" height="384"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2AFIQJYzSaaUUMI_F9bs9trA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2AFIQJYzSaaUUMI_F9bs9trA.png" width="800" height="373"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2A__dkn24qYnn8ugZk83DKPA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2A__dkn24qYnn8ugZk83DKPA.png" width="800" height="355"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Four IAM roles are created in the process of setting up a Landing zone by Control Tower&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2AZHCiOELGrb2pnCNhVn9uTQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2AZHCiOELGrb2pnCNhVn9uTQ.png" width="800" height="357"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2ABegCpJQ4FyZ9AQJss0yQ6Q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2ABegCpJQ4FyZ9AQJss0yQ6Q.png" width="800" height="409"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2AaSUqIYWraHzOkPTJdA9ubA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2AaSUqIYWraHzOkPTJdA9ubA.png" width="800" height="407"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2A4lDtrE5PahfNjcKjrWVI_g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2A4lDtrE5PahfNjcKjrWVI_g.png" width="800" height="396"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2AXo5y4oDgXLneXiHg-o9xDw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2AXo5y4oDgXLneXiHg-o9xDw.png" width="800" height="231"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;It takes around 60 minutes for Landing Zone creation&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2AZ-EhzQGLnV8Bqz1tCHf0GA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2AZ-EhzQGLnV8Bqz1tCHf0GA.png" width="800" height="305"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Once Landing Zone is created, below dashboard will be available&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2AWkZyrCBkOwjGuQKDi_c2AQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2AWkZyrCBkOwjGuQKDi_c2AQ.png" width="800" height="284"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2ApUeh6ocucwvi8WuDhVNR5A.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F940%2F1%2ApUeh6ocucwvi8WuDhVNR5A.png" width="800" height="304"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;In Organization tab of Control Tower, you can check the baseline state and create/register new OU’s and enroll new accounts&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Abr2iebz3zcCEyjcJHFFawg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Abr2iebz3zcCEyjcJHFFawg.png" width="800" height="309"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Account factory: Create new accounts&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AxHqkgS28ll2f1kWUUkUAeQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AxHqkgS28ll2f1kWUUkUAeQ.png" width="800" height="252"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Centrally enable and manage Controls:&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AmgxjPo1xjTQBrqyB7OyF3g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AmgxjPo1xjTQBrqyB7OyF3g.png" width="800" height="310"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Axg0w6hBFwGoD7dkEMg3Uaw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Axg0w6hBFwGoD7dkEMg3Uaw.png" width="800" height="306"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Key Benefits of Using Control Tower for Landing Zone Setup:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Increased Security:&lt;/strong&gt; Enhances your security posture by enforcing security best practices and preventing common misconfigurations.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Improved Compliance:&lt;/strong&gt; Helps you meet industry regulations and maintain compliance standards.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Enhanced Efficiency:&lt;/strong&gt; Automates many manual tasks, saving you time and resources.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Simplified Management:&lt;/strong&gt; Provides a centralized platform for managing and governing your AWS environment.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reduced Risk:&lt;/strong&gt; Minimizes the risk of security breaches and data loss.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;AWS Control Tower is a powerful tool that simplifies the process of building and managing a secure and compliant AWS environment. By following the steps outlined in this guide, you can establish a robust foundation for your AWS workloads and accelerate your cloud journey.&lt;/p&gt;

&lt;p&gt;I hope this user-friendly guide has provided you with a clear understanding of AWS Control Tower and the process of setting up a secure landing zone.&lt;/p&gt;




</description>
      <category>awssecurity</category>
      <category>awslandingzone</category>
      <category>aws</category>
      <category>awscontroltower</category>
    </item>
    <item>
      <title>Optimizing AWS Costs: Setup Cost &amp; Usage Dashboard in 5 minutes</title>
      <dc:creator>Lingesh B</dc:creator>
      <pubDate>Fri, 27 Sep 2024 15:54:51 +0000</pubDate>
      <link>https://forem.com/aws-builders/optimizing-aws-costs-setup-cost-usage-dashboard-in-5-minutes-2ag7</link>
      <guid>https://forem.com/aws-builders/optimizing-aws-costs-setup-cost-usage-dashboard-in-5-minutes-2ag7</guid>
      <description>&lt;p&gt;In the cloud-native era, managing costs is as critical as leveraging the benefits of cloud services. AWS provides a robust tool, the Cost and Usage Dashboard, to help you track and analyze your cloud spending. It offers a comprehensive view of your costs across different services, regions, and time periods.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Track and analyze your cloud spending:&lt;/strong&gt; Monitor your costs over time and identify areas for optimization.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Understand your usage patterns:&lt;/strong&gt; Gain insights into how different services are being used and identify potential cost-saving opportunities.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Compare costs across different time periods:&lt;/strong&gt; Compare your current spending to past trends and identify areas where costs have increased or decreased.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Export data:&lt;/strong&gt; Export your cost data to CSV format for further analysis in external tools.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;AWS Data Exports:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;AWS Data Exports enables you to create exports of your billing and cost management data, such as cost and usage or cost optimization recommendations, using basic SQL delivered to your designated S3 bucket on a recurring basis for use with your business intelligence or third-party reporting solutions.&lt;/p&gt;

&lt;p&gt;AWS Data Exports also enables you to visualize your billing and cost management data by integrating with Amazon QuickSight, and deploying a pre-built Cost and Usage Dashboard within minutes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Setup Cost and Usage Dashboard powered by QuickSight:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Pre-requisite:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Sign up for QuickSight in your Management account if not already done. Also,select your desired authentication method.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fan2wrp02nmv829sc3m6c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fan2wrp02nmv829sc3m6c.png" width="800" height="589"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjilqh7mteqke587is6ym.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjilqh7mteqke587is6ym.png" width="800" height="409"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj5ykelt3setxk4mcrpz4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj5ykelt3setxk4mcrpz4.png" width="800" height="501"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdigxt2sk7hny2uqid6jg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdigxt2sk7hny2uqid6jg.png" width="800" height="280"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Configuration:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;In AWS Management account, open ‘Billing and Cost Management’ and click on ‘Data Exports’&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkenpgixiyfsg0nfli4u3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkenpgixiyfsg0nfli4u3.png" width="800" height="317"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Click on ‘Cost and Usage Dashboard’&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuo2tx66aqh8pfzt6w0r3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuo2tx66aqh8pfzt6w0r3.png" width="800" height="330"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Choose export type option as ‘Cost and usage dashboard powered by QuickSight’&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv1blwm88huiqjf3iy6zm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv1blwm88huiqjf3iy6zm.png" width="800" height="309"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Enter QuickSight username of already configured QuickSight account&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjhilfy85wc0xpa23wxhf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjhilfy85wc0xpa23wxhf.png" width="800" height="455"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Enter a destination in Amazon S3 where your data export will be stored&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp7iw8rgk7qt814x2a97b.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp7iw8rgk7qt814x2a97b.png" width="800" height="482"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqik51owqpy2j0c1l7uch.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqik51owqpy2j0c1l7uch.png" width="800" height="292"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Choose ‘Create a new service role’ under service access and click ‘Create’&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Few84wuatd1uo50l71xr8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Few84wuatd1uo50l71xr8.png" width="800" height="276"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Data Export has created the dashboard successfully and is ready to be accessed&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn25keozqndm3tq4ce3py.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn25keozqndm3tq4ce3py.png" width="800" height="262"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Click on ‘Cost and usage Dashboard’ link and you will be directed to QuickSight dashboard&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A9uxjWAlTiiFbIyYcuUg_vA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A9uxjWAlTiiFbIyYcuUg_vA.png" width="800" height="342"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Initially, there will be no data as it takes around 24 hours for data to be populated in dashboard&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AZgiw5x2_fKgvM_Bi3LrCNw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AZgiw5x2_fKgvM_Bi3LrCNw.png" width="800" height="321"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;After 24 hours, you will find your billing data for your AWS Organization(accounts) in the dashboard and data under different categories can be explored&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AVVzojYzf8U9AC0a0kY9G3Q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AVVzojYzf8U9AC0a0kY9G3Q.png" width="800" height="298"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Sample dashboard : &lt;a href="https://cid.workshops.aws.dev/demo?dashboard=cudos" rel="noopener noreferrer"&gt;https://cid.workshops.aws.dev/demo?dashboard=cudos&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;AWS Cost and Usage Dashboard (CUR) offers several advantages for managing your cloud spending:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Comprehensive Visibility:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Detailed cost breakdown:&lt;/strong&gt; See your costs broken down by service, region, and time period.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Usage patterns:&lt;/strong&gt; Understand how different services are being used and identify potential cost-saving opportunities.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Historical data:&lt;/strong&gt; Analyze past spending trends to identify areas for improvement.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Cost Optimization:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Identify cost-saving opportunities:&lt;/strong&gt; Find areas where you can reduce costs by optimizing usage or choosing more cost-effective options.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Compare costs across different time periods:&lt;/strong&gt; Compare your current spending to past trends and identify areas where costs have increased or decreased.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Data-Driven Decision Making:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Export data:&lt;/strong&gt; Export your cost data to CSV format for further analysis in external tools.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Create custom reports:&lt;/strong&gt; Create custom reports to analyze your spending based on your specific needs.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Make informed decisions:&lt;/strong&gt; Use data-driven insights to make informed decisions about your cloud spending.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Improved Efficiency:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Avoid overspending:&lt;/strong&gt; Prevent unnecessary costs by understanding your usage patterns and making informed decisions.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Compliance and Governance:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Track spending against budgets:&lt;/strong&gt; Monitor your spending against predefined budgets.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ensure compliance:&lt;/strong&gt; Ensure compliance with internal or external spending guidelines.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Provide evidence:&lt;/strong&gt; Provide evidence of cost management practices to auditors or stakeholders.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;By setting up data exports from the AWS Cost and Usage Dashboard, you can gain deeper insights into your cloud spending and make informed decisions to optimize your costs. With the flexibility to export data to S3 and analyze it using various tools, you can tailor your analysis to your specific needs and achieve significant cost savings.&lt;/p&gt;




</description>
      <category>awscostoptimization</category>
      <category>awsquicksight</category>
      <category>awscostmanagement</category>
      <category>awsfinops</category>
    </item>
    <item>
      <title>Unleash the Power of the Organizational View in AWS Health : Real-Time Alerts to Your Inbox</title>
      <dc:creator>Lingesh B</dc:creator>
      <pubDate>Sat, 24 Aug 2024 09:55:42 +0000</pubDate>
      <link>https://forem.com/aws-builders/unleash-the-power-of-the-organizational-view-in-aws-health-real-time-alerts-to-your-inbox-oa2</link>
      <guid>https://forem.com/aws-builders/unleash-the-power-of-the-organizational-view-in-aws-health-real-time-alerts-to-your-inbox-oa2</guid>
      <description>&lt;p&gt;&lt;strong&gt;Unleash the Power of the Organizational View in AWS Health : Real-Time Alerts to Your Inbox&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;AWS Health is a service that provides real-time visibility into the health of your AWS services, accounts, and resources. It helps you:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;em&gt;Stay informed about service disruptions and maintenance activities.&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Monitor the health of your AWS resources.&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Receive alerts and notifications for potential issues.&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Proactively manage your AWS environment.&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;AWS Health provides an organizational view that allows you to monitor the health of your entire AWS Organization.&lt;/p&gt;

&lt;p&gt;Aggregate your Health events from all member AWS accounts in your AWS organization. This provides a centralized view for all events, such as operational issues, scheduled maintenance, and account notifications.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Key features of the organizational view in AWS Health:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Centralized dashboard:&lt;/strong&gt; Provides a single view of the health status of all accounts and resources within your organization.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Account health:&lt;/strong&gt; Displays the health status of each account in your organization, resources and account activity.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Health events:&lt;/strong&gt; Provides information about service disruptions, maintenance activities, and other relevant events.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Alerts and notifications:&lt;/strong&gt; Allows you to configure alerts and notifications for health events at the organization level.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Enabling Organizational view:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Setup an AWS Organization:&lt;/strong&gt; If you don’t already have one, create an AWS Organization using the AWS Organizations console. Invite or create accounts to join your organization.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Enable organizational view for AWS Health&lt;/strong&gt; : After setting up AWS Organization, sign into the Management account and enable AWS Health to aggregate all events.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6mjonh20grruvyt0yu7y.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6mjonh20grruvyt0yu7y.png" width="800" height="295"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fblsvvsv1r1yr979u694o.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fblsvvsv1r1yr979u694o.png" width="800" height="320"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Delegated Administrator for Organizational view&lt;/strong&gt; (Optional): You can register a member account in your AWS organization, which provides the flexibility for different teams to view and manage health events across your organization.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;To establish a delegated administrator, from the management account in your organization, call the following AWS Command Line Interface (AWS CLI) command. You can use this command from the management account. In the following example command, replace &lt;strong&gt;ACCOUNT_ID&lt;/strong&gt; with the member account ID that you want to register along with the AWS Health service principal “health.amazonaws.com”.&lt;/p&gt;

&lt;p&gt;“aws organizations register-delegated-administrator — account-id ACCOUNT_ID — service-principal health.amazonaws.com”&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0rwjuntxjd7zw1dbe3hz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0rwjuntxjd7zw1dbe3hz.png" width="800" height="323"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Here, I have made one of my member accounts as the Delegated Administrator for the Organizational view of AWS Health dashboard&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fajjy9t6wiy24lci7bbyj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fajjy9t6wiy24lci7bbyj.png" width="800" height="127"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now, you can have a centralized view of all health events across accounts in your Organization&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn2in4g4ctz3mrke96ph8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn2in4g4ctz3mrke96ph8.png" width="800" height="338"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Get mail notification for Health events in your Organization:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Use Management account or Delegated Administrator account where Organizational view for Health is enabled&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create a SNS topic with mail subscription&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4f4yps30qrc05o7g50my.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4f4yps30qrc05o7g50my.png" width="800" height="209"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffe2arzq2b6l4m8d0ox93.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffe2arzq2b6l4m8d0ox93.png" width="800" height="266"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create an EventBridge rule with event pattern as Health and target as SNS topic created in previous step&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr3x1xgjyqkzuzq5lazss.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr3x1xgjyqkzuzq5lazss.png" width="800" height="444"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feelsmdaoydz9ofaf88s9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feelsmdaoydz9ofaf88s9.png" width="800" height="326"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp0vkmvlqh2mhazrs5exv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp0vkmvlqh2mhazrs5exv.png" width="800" height="462"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6pah1oqtifv8xqbgcu93.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6pah1oqtifv8xqbgcu93.png" width="800" height="459"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;With this setup, you will receive mail notification for any health event in your Organization.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Benefits of organizational view in AWS Health:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;em&gt;Proactively monitor the health of your entire AWS Organization.&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Identify and address potential issues across multiple accounts.&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Ensure consistent health standards across your organization.&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Improve service availability and reliability.&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Enhance security and compliance.&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;By effectively using the organizational view in AWS Health, you can ensure the overall health and reliability of your AWS Organization, helping you achieve your business objectives and avoid unnecessary downtime.&lt;/p&gt;




</description>
      <category>awseventbridge</category>
      <category>aws</category>
      <category>awsmonitoring</category>
      <category>awshealth</category>
    </item>
    <item>
      <title>Stop Hackers at the Door: Auto-Remediate Open Ports in AWS</title>
      <dc:creator>Lingesh B</dc:creator>
      <pubDate>Sat, 18 May 2024 14:07:43 +0000</pubDate>
      <link>https://forem.com/aws-builders/stop-hackers-at-the-door-auto-remediate-open-ports-in-aws-177g</link>
      <guid>https://forem.com/aws-builders/stop-hackers-at-the-door-auto-remediate-open-ports-in-aws-177g</guid>
      <description>&lt;p&gt;Let’s face it, managing security in the cloud can be a constant battle. Developers and AWS users, can knowingly/unknowingly leave sensitive ports like SSH (22),RDP (3389) or MySQL (port 3306) open to the public (0.0.0.0/0) in a security group. This creates a security nightmare, leaving your resources vulnerable to attackers.&lt;/p&gt;

&lt;p&gt;Traditionally, we relied on SecurityHub to identify these misconfigurations. The process involved manually reviewing findings and then adjusting ingress rules. But what if there was a way to automate this entire process?&lt;/p&gt;

&lt;p&gt;Enter AWS Config with auto-remediation: a powerful tool to streamline security management and keep your cloud environment safe.&lt;/p&gt;

&lt;h2&gt;
  
  
  AWS Config to the Rescue
&lt;/h2&gt;

&lt;p&gt;Here’s how AWS Config with auto-remediation tackles the challenge of open ports:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Continuous Monitoring:&lt;/strong&gt; The pre-built AWS Managed Config rule “vpc-sg-open-only-to-authorized-ports” constantly monitors your security groups. It acts like a vigilant guard, scanning for any ingress rules allowing unrestricted traffic on sensitive ports.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Non-Compliance Flag:&lt;/strong&gt; If Config identifies a security group with unrestricted access to these ports, it raises a red flag. This flags the security group as “non-compliant,” highlighting a potential security risk.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Auto-Remediation (Optional):&lt;/strong&gt; This is where things get exciting. You can configure auto-remediation to take immediate action. Upon detecting a non-compliant security group, Config can automatically close it, effectively shutting the door on potential attackers. This eliminates the need for manual intervention, ensuring a faster and more efficient response to security threats.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Implementation Steps:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;(a) Enable AWS Config in the respective regions of your AWS accounts&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhljv15z5yshoox1ocodi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhljv15z5yshoox1ocodi.png" width="800" height="296"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;(b) Add AWS Managed Config rule ‘&lt;a href="https://ap-southeast-1.console.aws.amazon.com/config/home?region=ap-southeast-1#/rules/details?configRuleName=vpc-sg-open-only-to-authorized-ports" rel="noopener noreferrer"&gt;vpc-sg-open-only-to-authorized-ports&lt;/a&gt;’&lt;/p&gt;

&lt;p&gt;This rule ‘Checks if security groups allowing unrestricted incoming traffic (‘0.0.0.0/0’ or ‘::/0’) only allow inbound TCP or UDP connections on authorized ports. The rule is NON_COMPLIANT if such security groups do not have ports specified in the rule parameters’&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flfxsotqdosl33z8umj8x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flfxsotqdosl33z8umj8x.png" width="800" height="357"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can also optionally define the list of TCP/UDP ports authorized to be open to public in the ‘Parameters’ section&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcvykkn38e8blq3zsyo3a.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcvykkn38e8blq3zsyo3a.png" width="800" height="223"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;© For the purpose of demo, I created a security group with ports 22,3389 and 443 exposed to public(0.0.0.0/0). Config rule evaluates and identifies non-compliant security groups. As expected, it identified the below security group created for demo purpose because it has sensitive ports SSH(22) and RDP(3389) open to public&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnx0ydsqp4894puvwzh9w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnx0ydsqp4894puvwzh9w.png" width="800" height="206"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;(d) Choose ‘Automatic remediation’ and select ‘AWS-DisablePublicAccessForSecurityGroup’ as the remediation action&lt;/p&gt;

&lt;p&gt;Note: ‘AWS-DisablePublicAccessForSecurityGroup’ remediation action works only for SSH and RDP ports exposed.&lt;/p&gt;

&lt;p&gt;For automated remediation on other sensitive ports, refer step (g)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frzg5uoli0l8txc16ctw7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frzg5uoli0l8txc16ctw7.png" width="800" height="324"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0irtjmn6moz9odqg4k2o.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0irtjmn6moz9odqg4k2o.png" width="800" height="273"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;(e) Select ‘GroupId’ from the dropdown list of Resource ID parameter.&lt;/p&gt;

&lt;p&gt;IpAddressToBlock = 0.0.0.0/0. You can mention other ip addresses as well that you want to block as per your requirement&lt;/p&gt;

&lt;p&gt;For ‘AutomationAssumeRole’ mandatory parameter, create a role with ‘Systems Manager’ as the trusted entity and use below permission policy&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8t9loffcu87cs3oilg0j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8t9loffcu87cs3oilg0j.png" width="800" height="416"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvmn00mh6n2xkeybdxpg9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvmn00mh6n2xkeybdxpg9.png" width="800" height="388"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhgap4li9p2uae4wbgkbd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhgap4li9p2uae4wbgkbd.png" width="800" height="353"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Click ‘Save Changes’ to complete the setup of remediation action&lt;/p&gt;

&lt;p&gt;(f) Auto-remediation kicks in and removes only the ingress rules which allowed SSH(22) and RDP(3389) from the security group leaving the other ingress rule for port https(443) intact.&lt;/p&gt;

&lt;p&gt;Before Auto-remediation:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feeo82jyxhnsphu710gwt.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feeo82jyxhnsphu710gwt.png" width="800" height="258"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After Auto-remediation:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foh1h6qvjkuxat88usb98.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foh1h6qvjkuxat88usb98.png" width="800" height="260"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;(g) Choose ‘AWS-CloseSecurityGroup’ as the remediation action when you want to automate the remediation on any of the sensitive ports including (MySQL,MSSQL,PostgreSQL etc) exposed to public. This remediation action removes all ingress and egress rules from the non-compliant security group.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsj1mpg22t6rsftltl3go.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsj1mpg22t6rsftltl3go.png" width="800" height="461"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Benefits of Auto-Remediation&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Faster Threat Response:&lt;/strong&gt; Auto-remediation acts swiftly, closing the security gap before attackers can exploit it. This proactive approach minimizes potential damage.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reduced Manual Work:&lt;/strong&gt; Gone are the days of manually sifting through SecurityHub findings and meticulously adjusting ingress rules. Config automates the entire process, freeing up your valuable time.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Enhanced Security Posture:&lt;/strong&gt; By proactively identifying and closing vulnerabilities, you create a more robust security environment for your cloud resources. This gives you peace of mind knowing your infrastructure is less susceptible to attacks.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;A Word on Flexibility&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;While auto-remediation offers a powerful solution, it’s important to consider your specific needs. Perhaps some open ports require temporary public access for troubleshooting purposes. In such cases, leveraging Config for identification and then taking manual action for specific security groups might be preferable.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;AWS Config with auto-remediation is a game-changer for cloud security. By automating the identification and remediation of open ports, you can significantly enhance your security posture and free yourself from tedious manual tasks. Remember, security is an ongoing process. Stay vigilant, leverage AWS tools like Config, and keep your cloud environment safe and secure!&lt;/p&gt;




</description>
      <category>awsnetworking</category>
      <category>automatedremediation</category>
      <category>awssecurity</category>
      <category>aws</category>
    </item>
  </channel>
</rss>
