Sharing notes from my ongoing learning journey — what I build, break and understand along the way.
Mastering AWS Security: IAM, Cognito, GuardDuty, KMS & More Explained
The Complete Guide to AWS Security: IAM, Encryption, and Threat Protection Tools
I’m continuing my AWS learning journey. In this post, I’ll cover security topics on AWS in detail — from IAM and access control to encryption and threat detection services — all explained simply but technically accurate.
1. Introduction to Security
Security in AWS isn’t just about passwords — it’s a layered and shared responsibility model. In this section, I learned:
- Data permissions: Who can access what?
- Access controls: How are those permissions enforced?
- Layers of security: Network, system, application, user — each needs its own security.
- Shared Responsibility Model: AWS secures the infrastructure, while we are responsible for what’s inside (apps, data, access policies).
2. Introduction to IAM (Identity and Access Management)
IAM is the foundation of access control in AWS. Here’s what I learned:
- IAM Users: Individual identities to access AWS services
- IAM Use Cases: Developers, DevOps, app-level access, automation, etc.
- IAM Pricing: The service is free, but misconfigurations can be costly.
3. Using IAM
This section focused on practical usage:
- Root User: The first user created; has full access and should be used with caution.
- IAM Policies: JSON-based permission rules that define access rights to AWS resources.
- Groups and Roles: Manage users in bulk and provide cross-service access using roles.
- Access Manager: Centralized tool to view and manage access across your AWS account.
4. Additional AWS Security Services (In-Depth)
Beyond IAM, AWS provides powerful services for identity, encryption, compliance, and threat protection. These aren’t just extras — they’re essential for building secure systems.
Amazon Cognito – User Authentication Service
Manages user sign-up, sign-in, and access control for web/mobile apps. Supports OAuth, SAML, social login (Google, Facebook), etc.
Use Cases:
- Add a login/signup system to your app
- Enable Multi-Factor Authentication (MFA)
AWS KMS (Key Management Service)
Handles creation and management of encryption keys across AWS services like S3, EBS, and RDS.
Use Cases:
- Encrypt stored data automatically
- Set key rotation policies
- Control key usage with IAM policies
AWS Secrets Manager
Securely stores and manages secrets like database credentials, API keys, and tokens.
Benefits:
- Centralized secret storage
- Automatic secret rotation
- Remove hardcoded secrets in code
AWS Shield – DDoS Protection
Protects AWS apps from Distributed Denial-of-Service attacks.
- Shield Standard: Automatically enabled for all customers
- Shield Advanced: Extra detection, cost protection, and expert support
Use Cases: Websites, gaming backends, critical APIs
Amazon Inspector – Security Vulnerability Scanner
Automatically scans EC2 instances and Lambda functions for vulnerabilities.
Example:
- Scan installed packages and OS for CVEs
- Prioritize findings based on severity
Amazon GuardDuty – Threat Detection
Uses machine learning to identify suspicious behavior across your AWS account.
What It Detects:
- Unexpected access from unfamiliar IPs
- IAM role changes at odd hours
- Unusual S3 data access patterns
How It Works:
- Analyzes CloudTrail logs, VPC Flow logs, and DNS queries
- Provides real-time threat alerts
In Short
Here’s what I learned from this AWS Security training, organized into key sections:
- Security fundamentals and the Shared Responsibility Model
- IAM principles and how to structure access
- IAM users, groups, roles, and policies
- Identity, encryption, and advanced security tools like GuardDuty and Inspector
In AWS, spinning up services is just the beginning — keeping them secure, auditable, and manageable is where the real engineering starts.
This post is both my personal notebook and a helpful guide for others learning AWS.
If you’re on a similar journey, I hope it saves you some time and confusion.