AWS Developer Encyclopedia — Capability-by-Capability Format
This version is built in the style you requested: each service is explained like a developer lesson, not just a short definition. Every service includes meaning, concepts, creation path, IAM role/policy pattern, SDK/CLI starter, integrations, monitoring, security, production scope, business use cases, mistakes, practice path, and official AWS documentation links. A new Explicit AWS Service Directory has been added so the page does not hide items behind shorthand count labels or vague continuation phrases.
How to learn each service
| Level | What to learn | Developer output |
|---|---|---|
| Beginner | What the service is, what resource you create, and the business problem it solves. | Create a demo resource manually and explain every field. |
| Intermediate | IAM, networking, storage, triggers, integrations, logs, metrics, quotas, and pricing. | Create the same resource with CLI/SDK/IaC and connect it to another service. |
| Production | Least privilege, high availability, failure behavior, backup/restore, alarms, CI/CD, and runbooks. | Deploy with IaC, test failure scenarios, and document operations. |
| Expert | Multi-account, multi-region, security governance, cost optimization, and service limits. | Design reusable platform patterns for teams. |
Official AWS links for How to Study AWS
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Account Setup — Beginner to Production
What is an AWS account?
An AWS account is the security, billing, and resource boundary for AWS. Every resource belongs to an account and region. For production, do not keep everything in one account. Use multiple accounts for management, security tooling, shared services, development, staging, and production.
Step-by-step setup
- Create the AWS account with a secure root email.
- Enable MFA on the root user immediately.
- Set alternate contacts for billing, operations, and security.
- Enable billing alerts, AWS Budgets, and Cost Anomaly Detection.
- Create IAM Identity Center for human access; avoid daily IAM users.
- Create admin permission set for initial setup, then create least-privilege permission sets.
- Create baseline CloudTrail, Config, GuardDuty, Security Hub, and centralized logs.
- Use Organizations/Control Tower for multi-account governance.
- Use separate accounts/environments for production workloads.
Developer production checklist
Official study links
Official AWS links for Account Setup Deep
AWS DocsUse these official AWS links while studying or implementing this service.
Initial AWS Free Tier Account Setup — Beginner Safe Path
This is the first practical module a new AWS learner should complete before creating EC2, S3, Lambda, RDS, or any other service. The goal is to create the account safely, protect the root user, configure cost protection, create a developer identity, configure CLI access, and understand what can create charges.
1. What is AWS Free Tier in simple words?
AWS Free Tier is an AWS onboarding program for learning and experimentation. Current AWS documentation describes a Free account plan and a Paid account plan. The Free account plan is designed for proof-of-concept learning with credits and limited service access; the Paid account plan gives full access to AWS services and standard pay-as-you-go charges when usage exceeds credits or uses non-covered services.
| Plan | Best for | Access | Cost behavior | Developer warning |
|---|---|---|---|---|
| Free account plan | Learning, labs, student demos, first cloud practice | Select AWS services and Always Free offers | Designed so charges do not occur until you upgrade; plan ends when credits/plan duration end | Some services/features are unavailable. Do not design production workloads here. |
| Paid account plan | Production apps, full AWS access, serious project deployment | All AWS services and features immediately | Credits can apply, but usage beyond credits or outside credits is charged normally | Must use budgets, alarms, least privilege, and cleanup discipline. |
Beginner recommendation: Use the Free account plan only for learning. Use the Paid plan only when you understand budgets, pricing pages, service quotas, and cleanup.
2. Before creating the account — prepare these items
- Permanent email: Use an email you will not lose. This becomes the root account email and billing/security contact.
- Strong password: Use a password manager and a unique password.
- Phone number: Keep it available for verification and future account recovery.
- Payment/identity details: AWS sign-up may require payment or identity verification depending on country and plan. Keep the billing name/address accurate.
- MFA device: Use an authenticator app or hardware security key. Do not postpone MFA.
- Region choice: Pick one primary learning region, for example
us-east-1,us-west-2, or the nearest supported region. Do not create resources in many regions as a beginner. - Cleanup notebook: Track every resource you create: service, region, name, date, cost risk, cleanup command.
3. Sign-up steps
- Open the official AWS Free Tier page and choose to create a free account.
- Enter root email and account name.
- Verify the email code.
- Enter contact information accurately.
- Complete payment/identity/phone verification if requested.
- Select the appropriate Free Tier plan. For learning, select the Free account plan if available in your region and scenario.
- Choose the free/basic support option unless you intentionally need a paid support plan.
- Sign in as root only for initial security and billing setup.
4. Immediately secure the root user
- Open IAM → Security credentials for the root user.
- Enable MFA for root.
- Delete root access keys if any exist.
- Set alternate contacts: billing, operations, security.
- Store the root email, MFA recovery codes/process, and account ID securely.
# There is no recommended CLI setup for root daily use.
# Root should not be used for CLI development.
# Use IAM Identity Center/federation or an IAM user only for controlled learning labs.
5. Enable billing visibility and safety
Beginner accounts usually fail because resources are left running. Set cost visibility before deploying anything.
| Billing control | What to configure | Why it matters |
|---|---|---|
| AWS Budgets | Create a monthly cost budget such as $1, $5, or your learning limit | Sends alerts before spending grows unexpectedly |
| Free Tier usage alerts | Enable Free Tier alerts in Billing preferences where available | Warns when Free Tier limits are approaching/exceeded |
| Cost Explorer | Review daily cost by service and region | Finds forgotten EC2, NAT Gateway, RDS, snapshots, logs, IPs |
| Cost Anomaly Detection | Create monitor for account/service spend anomalies | Detects unusual spending patterns |
| Billing access for IAM | Enable IAM access to Billing only if needed | Lets non-root billing/admin roles view billing safely |
# Example: create a very small monthly cost budget with AWS CLI.
# Replace account email and amount before using.
aws budgets create-budget \
--account-id 123456789012 \
--budget '{
"BudgetName": "BeginnerMonthlyBudget",
"BudgetLimit": {"Amount": "5", "Unit": "USD"},
"TimeUnit": "MONTHLY",
"BudgetType": "COST"
}' \
--notifications-with-subscribers '[{
"Notification": {
"NotificationType": "ACTUAL",
"ComparisonOperator": "GREATER_THAN",
"Threshold": 80,
"ThresholdType": "PERCENTAGE"
},
"Subscribers": [{"SubscriptionType": "EMAIL", "Address": "you@example.com"}]
}]'
6. Create developer access safely
For professional use, use IAM Identity Center or federation. For a single beginner lab account, an IAM admin user may be used temporarily, but it should have MFA and should not be shared.
| Access type | Use for | Beginner notes |
|---|---|---|
| Root user | Account recovery, billing root-only tasks, closing account | MFA required. No daily use. |
| IAM Identity Center user | Human developer console/CLI access | Best practice for teams and modern AWS access. |
| IAM user | Small personal labs only when Identity Center is not used | Enable MFA. Avoid long-lived access keys where possible. |
| IAM role | Applications, Lambda, EC2, CI/CD, cross-account access | Preferred for workloads. Roles have temporary credentials. |
7. IAM admin setup for first learning account
- Create an administrator identity using IAM Identity Center if possible.
- If using IAM user for a lab, create a user like
student-admin. - Attach
AdministratorAccessonly for initial learning, not production. - Enable MFA for that admin identity.
- Sign out root and sign in with the admin identity for daily work.
- Create least-privilege roles later for Lambda, EC2, S3, DynamoDB, and pipelines.
8. Install and configure AWS CLI
A developer should know both Console and CLI. Console helps you learn fields visually; CLI helps automate and debug.
# Verify AWS CLI version
aws --version
# Configure a named learning profile.
# Use access keys only for controlled labs; prefer IAM Identity Center where possible.
aws configure --profile learning
# Check who you are
aws sts get-caller-identity --profile learning
# Check your default region
aws configure get region --profile learning
9. First safe test commands
# List S3 buckets. This should not create cost.
aws s3 ls --profile learning
# Check enabled regions/account identity.
aws sts get-caller-identity --profile learning
# List Lambda functions in your chosen region. This should not create cost.
aws lambda list-functions --region us-east-1 --profile learning
# List CloudWatch log groups. This should not create cost by itself.
aws logs describe-log-groups --region us-east-1 --profile learning
10. Beginner services to practice first
| Learning order | Service | Why start here | Cost safety note |
|---|---|---|---|
| 1 | IAM | Every AWS call depends on identity and permissions | IAM has no direct resource runtime cost, but wrong permissions cause security risk |
| 2 | S3 | Simple object storage, static website hosting, SDK file upload/download | Delete test objects/buckets; watch storage and requests |
| 3 | Lambda | Serverless function, triggers, logs, IAM role | Keep timeout low and clean up unused functions/logs |
| 4 | DynamoDB | NoSQL database, key design, SDK CRUD | Use on-demand or small provisioned capacity; delete test tables |
| 5 | API Gateway | Expose Lambda/API endpoints | Delete test APIs/stages; monitor request count |
| 6 | CloudWatch | Logs, metrics, alarms, dashboards | Set log retention to avoid long-term log storage |
11. Services beginners should be careful with
| Service/resource | Why it can surprise beginners | Safe behavior |
|---|---|---|
| NAT Gateway | Hourly and data processing charges can accumulate quickly | Avoid for beginner labs unless required; delete immediately after lab |
| RDS/Aurora | Database instances, storage, backups, snapshots can continue billing | Use small test instances only; stop/delete and remove snapshots if not needed |
| EC2 | Instances, EBS volumes, Elastic IPs, snapshots, load balancers may bill | Stop or terminate; delete EBS volumes, snapshots, and unused Elastic IPs |
| OpenSearch | Managed clusters can be expensive if left running | Use only after understanding pricing; delete test domains |
| CloudFront | Global distribution and invalidation behavior has pricing dimensions | Use cautiously; disable/delete test distributions |
| Bedrock/SageMaker | Model invocation, endpoints, notebooks, and training can bill | Use small examples, delete endpoints/notebooks, monitor costs |
12. Required cleanup habit
Every lab should end with cleanup. A professional developer learns to delete resources by service and region.
# Example cleanup checks by region
aws lambda list-functions --region us-east-1 --profile learning
aws apigateway get-rest-apis --region us-east-1 --profile learning
aws dynamodb list-tables --region us-east-1 --profile learning
aws ec2 describe-instances --region us-east-1 --profile learning
aws elbv2 describe-load-balancers --region us-east-1 --profile learning
aws rds describe-db-instances --region us-east-1 --profile learning
aws logs describe-log-groups --region us-east-1 --profile learning
13. Initial Free Tier production mindset
- Never assume “free” means unlimited. Always check service limits and pricing.
- Use one region for beginner labs unless the lesson is explicitly about global/multi-region design.
- Tag every resource:
Project,Owner,Environment,DeleteAfter. - Set CloudWatch log retention to 1–7 days for labs.
- Prefer serverless beginner labs over always-running servers.
- Use Infrastructure as Code once you understand manual creation.
- Delete everything after practice unless you intentionally need it.
Official AWS links for Initial AWS Free Tier Account Setup
AWS DocsUse these official AWS links while studying or implementing this service.
IAM Foundation — Policy, Role, Trust, PassRole
IAM is not optional. Every developer must understand IAM because every SDK/CLI/API request is evaluated by IAM. Most AWS errors in development are either AccessDenied, missing trust policy, wrong resource ARN, missing dependent action, or service control policy restriction.
Policy types
| Type | Where attached | Purpose |
|---|---|---|
| Identity policy | User, group, or role | Allows/denies actions for that identity. |
| Resource policy | Resource such as S3 bucket, Lambda function, KMS key, SQS queue | Controls who can access that resource. |
| Trust policy | IAM role | Controls who can assume the role. |
| Permission boundary | User or role | Maximum permissions the identity can have. |
| SCP | Organization/account/OU | Maximum permissions allowed in an account. |
Sample service role trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "lambda.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
Sample least-privilege policy pattern
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:PutObject"
],
"Resource": "arn:aws:s3:::my-app-bucket/uploads/*"
},
{
"Effect": "Allow",
"Action": [
"logs:CreateLogStream",
"logs:PutLogEvents"
],
"Resource": "arn:aws:logs:us-east-1:123456789012:log-group:/aws/lambda/my-app-*:*"
}
]
}
iam:PassRole
iam:PassRole is required when a developer or pipeline creates a service resource and passes an execution role to that service, for example creating Lambda with a Lambda execution role or EC2 with an instance profile. Restrict it to exact role ARNs and use condition iam:PassedToService.
Official study links
Official AWS links for IAM Foundation Deep
AWS DocsUse these official AWS links while studying or implementing this service.
Explicit AWS Service Directory — No Hidden “More” Items
This section is added because you asked for every listed service name to be shown explicitly. The service lessons included in this HTML are listed by exact name below. Select any service name to jump to that lesson.
Account Setup & Cloud Foundations — 12 named lessons
Security, Identity & Compliance — 22 named lessons
- AWS Identity and Access Management (IAM)
- AWS Key Management Service (KMS)
- AWS Secrets Manager
- AWS Certificate Manager (ACM)
- Amazon Cognito
- AWS Directory Service
- AWS CloudHSM
- AWS WAF
- AWS Shield
- AWS Firewall Manager
- Amazon GuardDuty
- AWS Security Hub
- Amazon Inspector
- Amazon Macie
- Amazon Detective
- AWS Audit Manager
- AWS Artifact
- AWS Network Firewall
- AWS Resource Access Manager (RAM)
- Amazon Verified Permissions
- AWS Private CA
- Amazon Security Lake
Compute — 15 named lessons
Containers — 7 named lessons
Storage — 11 named lessons
Databases — 14 named lessons
Networking & Content Delivery — 13 named lessons
Application Integration & Messaging — 11 named lessons
Developer Tools & DevOps — 14 named lessons
Monitoring, Management & Governance — 16 named lessons
- Amazon CloudWatch
- AWS CloudTrail
- AWS Config
- AWS Systems Manager
- AWS OpsWorks
- AWS Service Catalog
- AWS License Manager
- Amazon Managed Grafana
- Amazon Managed Service for Prometheus
- AWS Distro for OpenTelemetry
- Amazon DevOps Guru
- AWS Well-Architected Tool
- AWS Resilience Hub
- AWS Incident Manager
- AWS Chatbot / AWS User Notifications
- AWS AppConfig
Analytics & Data Lake — 18 named lessons
- Amazon Athena
- AWS Glue
- Amazon EMR
- Amazon Redshift
- Amazon Kinesis Data Streams
- Amazon Data Firehose
- Amazon Kinesis Video Streams
- Amazon Managed Service for Apache Flink
- Amazon MSK
- Amazon OpenSearch Service
- Amazon QuickSight
- AWS Lake Formation
- AWS Data Exchange
- AWS Data Pipeline
- AWS Clean Rooms
- Amazon DataZone
- AWS Entity Resolution
- Amazon FinSpace
Machine Learning & AI — 24 named lessons
- Amazon Bedrock
- Amazon Bedrock AgentCore
- Amazon SageMaker AI
- Amazon Comprehend
- Amazon Comprehend Medical
- Amazon Lex
- Amazon Polly
- Amazon Rekognition
- Amazon Textract
- Amazon Transcribe
- Amazon Translate
- Amazon Kendra
- Amazon Personalize
- Amazon Forecast
- Amazon Fraud Detector
- Amazon Lookout for Metrics
- Amazon Lookout for Equipment
- Amazon Lookout for Vision
- Amazon Monitron
- Amazon HealthLake
- Amazon Augmented AI (A2I)
- AWS DeepRacer
- Amazon Q Developer
- Amazon Q Business
Business Applications & Contact Center — 10 named lessons
End User Computing — 5 named lessons
Front-End Web & Mobile — 5 named lessons
IoT & Edge — 10 named lessons
Migration & Transfer — 9 named lessons
Media Services — 7 named lessons
Specialized, Quantum & Satellite — 6 named lessons
Official AWS links for Explicit AWS Service Directory
AWS DocsUse these official AWS links while studying or implementing this service.
All AWS Service Index
Use this index to jump to any service. Each service follows the same developer learning template.
Account Setup & Cloud Foundations AWS Organizations
Account Setup & Cloud Foundations AWS Control Tower
Account Setup & Cloud Foundations IAM Identity Center
Account Setup & Cloud Foundations AWS Billing
Account Setup & Cloud Foundations AWS Budgets
Account Setup & Cloud Foundations AWS Cost Explorer
Account Setup & Cloud Foundations AWS Cost and Usage Report
Account Setup & Cloud Foundations Savings Plans
Account Setup & Cloud Foundations AWS Compute Optimizer
Account Setup & Cloud Foundations AWS Trusted Advisor
Account Setup & Cloud Foundations AWS Health
Account Setup & Cloud Foundations AWS Identity and Access Management (IAM)
Security, Identity & Compliance AWS Key Management Service (KMS)
Security, Identity & Compliance AWS Secrets Manager
Security, Identity & Compliance AWS Certificate Manager (ACM)
Security, Identity & Compliance Amazon Cognito
Security, Identity & Compliance AWS Directory Service
Security, Identity & Compliance AWS CloudHSM
Security, Identity & Compliance AWS WAF
Security, Identity & Compliance AWS Shield
Security, Identity & Compliance AWS Firewall Manager
Security, Identity & Compliance Amazon GuardDuty
Security, Identity & Compliance AWS Security Hub
Security, Identity & Compliance Amazon Inspector
Security, Identity & Compliance Amazon Macie
Security, Identity & Compliance Amazon Detective
Security, Identity & Compliance AWS Audit Manager
Security, Identity & Compliance AWS Artifact
Security, Identity & Compliance AWS Network Firewall
Security, Identity & Compliance AWS Resource Access Manager (RAM)
Security, Identity & Compliance Amazon Verified Permissions
Security, Identity & Compliance AWS Private CA
Security, Identity & Compliance Amazon Security Lake
Security, Identity & Compliance Amazon EC2
Compute Amazon EC2 Auto Scaling
Compute Elastic Load Balancing
Compute AWS Lambda
Compute AWS Elastic Beanstalk
Compute AWS Batch
Compute Amazon Lightsail
Compute AWS App Runner
Compute AWS Fargate
Compute AWS Outposts
Compute AWS Wavelength
Compute AWS Local Zones
Compute EC2 Image Builder
Compute VMware Cloud on AWS
Compute AWS Serverless Application Repository
Compute Amazon Elastic Container Service (ECS)
Containers Amazon Elastic Kubernetes Service (EKS)
Containers Amazon Elastic Container Registry (ECR)
Containers Amazon ECS Anywhere
Containers Amazon EKS Anywhere
Containers AWS App Mesh
Containers AWS Proton
Containers Amazon S3
Storage Amazon S3 Glacier
Storage Amazon EBS
Storage Amazon EFS
Storage Amazon FSx
Storage AWS Storage Gateway
Storage AWS Backup
Storage AWS DataSync
Storage AWS Transfer Family
Storage AWS Snow Family
Storage Amazon File Cache
Storage Amazon RDS
Databases Amazon Aurora
Databases Amazon Aurora Serverless
Databases Amazon Aurora DSQL
Databases Amazon DynamoDB
Databases Amazon ElastiCache
Databases Amazon MemoryDB
Databases Amazon Neptune
Databases Amazon DocumentDB
Databases Amazon Keyspaces
Databases Amazon Timestream
Databases Amazon Redshift
Databases Amazon QLDB
Databases AWS Database Migration Service (DMS)
Databases Amazon VPC
Networking & Content Delivery Amazon Route 53
Networking & Content Delivery Amazon CloudFront
Networking & Content Delivery Amazon API Gateway
Networking & Content Delivery AWS Direct Connect
Networking & Content Delivery AWS Site-to-Site VPN
Networking & Content Delivery AWS Client VPN
Networking & Content Delivery AWS Transit Gateway
Networking & Content Delivery AWS PrivateLink
Networking & Content Delivery AWS Global Accelerator
Networking & Content Delivery AWS Cloud Map
Networking & Content Delivery Amazon VPC Lattice
Networking & Content Delivery AWS Network Manager
Networking & Content Delivery Amazon SQS
Application Integration & Messaging Amazon SNS
Application Integration & Messaging Amazon EventBridge
Application Integration & Messaging AWS Step Functions
Application Integration & Messaging Amazon MQ
Application Integration & Messaging AWS AppSync
Application Integration & Messaging Amazon AppFlow
Application Integration & Messaging Amazon Simple Workflow Service (SWF)
Application Integration & Messaging Amazon SES
Application Integration & Messaging Amazon Pinpoint
Application Integration & Messaging Amazon Managed Workflows for Apache Airflow (MWAA)
Application Integration & Messaging AWS CodeCommit
Developer Tools & DevOps AWS CodeBuild
Developer Tools & DevOps AWS CodeDeploy
Developer Tools & DevOps AWS CodePipeline
Developer Tools & DevOps AWS CodeArtifact
Developer Tools & DevOps AWS Cloud9
Developer Tools & DevOps AWS X-Ray
Developer Tools & DevOps AWS CloudFormation
Developer Tools & DevOps AWS CDK
Developer Tools & DevOps AWS SAM
Developer Tools & DevOps AWS Copilot
Developer Tools & DevOps AWS Amplify
Developer Tools & DevOps AWS Device Farm
Developer Tools & DevOps Amazon CodeCatalyst
Developer Tools & DevOps Amazon CloudWatch
Monitoring, Management & Governance AWS CloudTrail
Monitoring, Management & Governance AWS Config
Monitoring, Management & Governance AWS Systems Manager
Monitoring, Management & Governance AWS OpsWorks
Monitoring, Management & Governance AWS Service Catalog
Monitoring, Management & Governance AWS License Manager
Monitoring, Management & Governance Amazon Managed Grafana
Monitoring, Management & Governance Amazon Managed Service for Prometheus
Monitoring, Management & Governance AWS Distro for OpenTelemetry
Monitoring, Management & Governance Amazon DevOps Guru
Monitoring, Management & Governance AWS Well-Architected Tool
Monitoring, Management & Governance AWS Resilience Hub
Monitoring, Management & Governance AWS Incident Manager
Monitoring, Management & Governance AWS Chatbot / AWS User Notifications
Monitoring, Management & Governance AWS AppConfig
Monitoring, Management & Governance Amazon Athena
Analytics & Data Lake AWS Glue
Analytics & Data Lake Amazon EMR
Analytics & Data Lake Amazon Redshift
Analytics & Data Lake Amazon Kinesis Data Streams
Analytics & Data Lake Amazon Data Firehose
Analytics & Data Lake Amazon Kinesis Video Streams
Analytics & Data Lake Amazon Managed Service for Apache Flink
Analytics & Data Lake Amazon MSK
Analytics & Data Lake Amazon OpenSearch Service
Analytics & Data Lake Amazon QuickSight
Analytics & Data Lake AWS Lake Formation
Analytics & Data Lake AWS Data Exchange
Analytics & Data Lake AWS Data Pipeline
Analytics & Data Lake AWS Clean Rooms
Analytics & Data Lake Amazon DataZone
Analytics & Data Lake AWS Entity Resolution
Analytics & Data Lake Amazon FinSpace
Analytics & Data Lake Amazon Bedrock
Machine Learning & AI Amazon Bedrock AgentCore
Machine Learning & AI Amazon SageMaker AI
Machine Learning & AI Amazon Comprehend
Machine Learning & AI Amazon Comprehend Medical
Machine Learning & AI Amazon Lex
Machine Learning & AI Amazon Polly
Machine Learning & AI Amazon Rekognition
Machine Learning & AI Amazon Textract
Machine Learning & AI Amazon Transcribe
Machine Learning & AI Amazon Translate
Machine Learning & AI Amazon Kendra
Machine Learning & AI Amazon Personalize
Machine Learning & AI Amazon Forecast
Machine Learning & AI Amazon Fraud Detector
Machine Learning & AI Amazon Lookout for Metrics
Machine Learning & AI Amazon Lookout for Equipment
Machine Learning & AI Amazon Lookout for Vision
Machine Learning & AI Amazon Monitron
Machine Learning & AI Amazon HealthLake
Machine Learning & AI Amazon Augmented AI (A2I)
Machine Learning & AI AWS DeepRacer
Machine Learning & AI Amazon Q Developer
Machine Learning & AI Amazon Q Business
Machine Learning & AI Amazon Connect
Business Applications & Contact Center Amazon Connect Contact Lens
Business Applications & Contact Center Amazon Connect Customer Profiles
Business Applications & Contact Center Amazon Connect Cases
Business Applications & Contact Center Amazon Connect Wisdom / Amazon Q in Connect
Business Applications & Contact Center Amazon WorkMail
Business Applications & Contact Center Amazon Chime
Business Applications & Contact Center Amazon Chime SDK
Business Applications & Contact Center AWS Wickr
Business Applications & Contact Center Alexa for Business
Business Applications & Contact Center Amazon WorkSpaces
End User Computing Amazon WorkSpaces Web
End User Computing Amazon AppStream 2.0
End User Computing Amazon WorkDocs
End User Computing NICE DCV
End User Computing AWS Amplify Hosting
Front-End Web & Mobile AWS AppSync
Front-End Web & Mobile Amazon Cognito for Apps
Front-End Web & Mobile AWS Device Farm
Front-End Web & Mobile Amazon Location Service
Front-End Web & Mobile AWS IoT Core
IoT & Edge AWS IoT Greengrass
IoT & Edge AWS IoT Analytics
IoT & Edge AWS IoT Events
IoT & Edge AWS IoT Device Defender
IoT & Edge AWS IoT Device Management
IoT & Edge AWS IoT FleetWise
IoT & Edge AWS IoT SiteWise
IoT & Edge AWS IoT TwinMaker
IoT & Edge FreeRTOS
IoT & Edge AWS Migration Hub
Migration & Transfer AWS Application Migration Service
Migration & Transfer AWS Database Migration Service
Migration & Transfer AWS DataSync
Migration & Transfer AWS Transfer Family
Migration & Transfer AWS Snow Family
Migration & Transfer Migration Evaluator
Migration & Transfer AWS Application Discovery Service
Migration & Transfer AWS Mainframe Modernization
Migration & Transfer AWS Elemental MediaConnect
Media Services AWS Elemental MediaConvert
Media Services AWS Elemental MediaLive
Media Services AWS Elemental MediaPackage
Media Services AWS Elemental MediaStore
Media Services AWS Elemental MediaTailor
Media Services Amazon Interactive Video Service (IVS)
Media Services Amazon GameLift
Specialized, Quantum & Satellite Amazon Braket
Specialized, Quantum & Satellite AWS Ground Station
Specialized, Quantum & Satellite Amazon Omics
Specialized, Quantum & Satellite AWS RoboMaker
Specialized, Quantum & Satellite Amazon Managed Blockchain
Specialized, Quantum & Satellite
Official AWS links for All AWS Service Index
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Account Management
1. What is AWS Account Management?
Account setup, root user protection, contacts, alternate contacts, account closure, and account-level security/billing controls.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Account Management
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Account Management
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Account Management.
6. Developer code example
// SDK pattern for AWS Account Management
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Account Management. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Account Management resources in target environment. |
| Execution/service role | account.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "account.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"account:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Account Management as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize account setup & cloud foundations capability across development, testing, and production accounts.
- Integrate AWS Account Management with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Account Management
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Organizations
1. What is AWS Organizations?
Multi-account governance, organizational units, consolidated billing, service control policies, and delegated administration.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Organizations
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Organizations
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Organizations.
6. Developer code example
// SDK pattern for AWS Organizations
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Organizations. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Organizations resources in target environment. |
| Execution/service role | organizations.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "organizations.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"organizations:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Organizations as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize account setup & cloud foundations capability across development, testing, and production accounts.
- Integrate AWS Organizations with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Organizations
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Control Tower
1. What is AWS Control Tower?
Landing zone service for governed multi-account AWS environments.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Control Tower
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Control Tower
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Control Tower.
6. Developer code example
// SDK pattern for AWS Control Tower
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Control Tower. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Control Tower resources in target environment. |
| Execution/service role | controltower.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "controltower.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"controltower:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Control Tower as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize account setup & cloud foundations capability across development, testing, and production accounts.
- Integrate AWS Control Tower with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Control Tower
AWS DocsUse these official AWS links while studying or implementing this service.
IAM Identity Center
1. What is IAM Identity Center?
Central workforce access to AWS accounts and applications using permission sets and federated identities.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure IAM Identity Center
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for IAM Identity Center
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for IAM Identity Center.
6. Developer code example
// SDK pattern for IAM Identity Center
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for IAM Identity Center. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged IAM Identity Center resources in target environment. |
| Execution/service role | sso.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "sso.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"sso:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use IAM Identity Center as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize account setup & cloud foundations capability across development, testing, and production accounts.
- Integrate IAM Identity Center with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for IAM Identity Center
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Billing
1. What is AWS Billing?
Billing console, payment methods, invoices, credits, tax settings, and account billing permissions.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Billing
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Billing
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Billing.
6. Developer code example
// SDK pattern for AWS Billing
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Billing. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Billing resources in target environment. |
| Execution/service role | aws-portal.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "aws-portal.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"aws-portal:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Billing as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize account setup & cloud foundations capability across development, testing, and production accounts.
- Integrate AWS Billing with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Billing
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Budgets
1. What is AWS Budgets?
Budget thresholds and alerts for cost, usage, reservation, and savings plans tracking.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Budgets
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Budgets
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Budgets.
6. Developer code example
// SDK pattern for AWS Budgets
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Budgets. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Budgets resources in target environment. |
| Execution/service role | budgets.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "budgets.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"budgets:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Budgets as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize account setup & cloud foundations capability across development, testing, and production accounts.
- Integrate AWS Budgets with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Budgets
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Cost Explorer
1. What is AWS Cost Explorer?
Interactive cost and usage analysis, forecasting, filtering, and reports.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Cost Explorer
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Cost Explorer
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Cost Explorer.
6. Developer code example
// SDK pattern for AWS Cost Explorer
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Cost Explorer. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Cost Explorer resources in target environment. |
| Execution/service role | ce.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ce.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"ce:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Cost Explorer as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize account setup & cloud foundations capability across development, testing, and production accounts.
- Integrate AWS Cost Explorer with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Cost Explorer
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Cost and Usage Report
1. What is AWS Cost and Usage Report?
Detailed billing dataset delivered to S3 for analytics, chargeback, and FinOps.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Cost and Usage Report
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Cost and Usage Report
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Cost and Usage Report.
6. Developer code example
// SDK pattern for AWS Cost and Usage Report
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Cost and Usage Report. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Cost and Usage Report resources in target environment. |
| Execution/service role | cur.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "cur.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"cur:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Cost and Usage Report as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize account setup & cloud foundations capability across development, testing, and production accounts.
- Integrate AWS Cost and Usage Report with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Cost and Usage Report
AWS DocsUse these official AWS links while studying or implementing this service.
Savings Plans
1. What is Savings Plans?
Flexible pricing model for compute usage commitments.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Savings Plans
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Savings Plans
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Savings Plans.
6. Developer code example
// SDK pattern for Savings Plans
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Savings Plans. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Savings Plans resources in target environment. |
| Execution/service role | savingsplans.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "savingsplans.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"savingsplans:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Savings Plans as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize account setup & cloud foundations capability across development, testing, and production accounts.
- Integrate Savings Plans with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Savings Plans
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Compute Optimizer
1. What is AWS Compute Optimizer?
Recommendations for right-sizing compute resources.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Compute Optimizer
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Compute Optimizer
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Compute Optimizer.
6. Developer code example
// SDK pattern for AWS Compute Optimizer
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Compute Optimizer. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Compute Optimizer resources in target environment. |
| Execution/service role | compute-optimizer.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "compute-optimizer.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"compute-optimizer:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Compute Optimizer as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize account setup & cloud foundations capability across development, testing, and production accounts.
- Integrate AWS Compute Optimizer with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Compute Optimizer
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Trusted Advisor
1. What is AWS Trusted Advisor?
Best-practice checks for cost, security, fault tolerance, performance, and quotas.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Trusted Advisor
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Trusted Advisor
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Trusted Advisor.
6. Developer code example
// SDK pattern for AWS Trusted Advisor
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Trusted Advisor. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Trusted Advisor resources in target environment. |
| Execution/service role | trustedadvisor.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "trustedadvisor.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"trustedadvisor:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Trusted Advisor as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize account setup & cloud foundations capability across development, testing, and production accounts.
- Integrate AWS Trusted Advisor with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Trusted Advisor
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Health
1. What is AWS Health?
Personalized AWS service health events for your account and resources.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Health
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Health
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Health.
6. Developer code example
// SDK pattern for AWS Health
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Health. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Health resources in target environment. |
| Execution/service role | health.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "health.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"health:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Health as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize account setup & cloud foundations capability across development, testing, and production accounts.
- Integrate AWS Health with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Health
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Identity and Access Management (IAM)
1. What is AWS Identity and Access Management (IAM)?
IAM is the AWS permission system. It decides who can do what on which AWS resources, under what conditions.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Users | Long-lived identities; avoid for apps, use only when necessary. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Groups | Permission grouping for users. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Roles | Temporary credentials assumed by humans, services, or external identities. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Policies | JSON allow/deny documents with Action, Resource, Condition. | Document owner, environment, tags, failure mode, and runbook before launch. |
| PassRole | Allows a caller to pass a role to a service such as Lambda, EC2, ECS, Glue, or SageMaker. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Identity and Access Management (IAM)
- Create IAM Identity Center for humans where possible.
- Create roles for workloads and services.
- Write policy with exact actions/resources.
- Add trust policy for who can assume the role.
- Test access using policy simulator/Access Analyzer.
- Log all IAM/API activity with CloudTrail.
5. CLI / IaC starter
aws iam create-role --role-name app-readonly-role --assume-role-policy-document file://trust.json
aws iam put-role-policy --role-name app-readonly-role --policy-name readonly --policy-document file://policy.json
aws sts assume-role --role-arn arn:aws:iam::123456789012:role/app-readonly-role --role-session-name test
6. Developer code example
{
"Version": "2012-10-17",
"Statement": [
{"Effect":"Allow","Action":["s3:GetObject"],"Resource":"arn:aws:s3:::my-bucket/reports/*"},
{"Effect":"Deny","Action":"*","Resource":"*","Condition":{"BoolIfExists":{"aws:MultiFactorAuthPresent":"false"}}}
]
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Identity and Access Management (IAM). |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Identity and Access Management (IAM) resources in target environment. |
| Execution/service role | iam.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "iam.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"iam:CreateRole",
"iam:AttachRolePolicy",
"iam:PutRolePolicy",
"iam:PassRole",
"iam:GetRole",
"iam:ListRoles",
"sts:AssumeRole"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Secure developer access across multiple teams.
- Create service execution roles for Lambda, EC2, ECS, Glue, SageMaker, Connect, and CI/CD.
- Implement governance with permissions boundaries, SCPs, and Access Analyzer.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using root account daily | Protect root with MFA and use roles for daily work. |
| Wildcard actions/resources | Replace with exact actions and ARNs. |
| Forgetting iam:PassRole risk | Restrict PassRole to exact role ARNs and passed-to service condition. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Identity and Access Management (IAM)
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Key Management Service (KMS)
1. What is AWS Key Management Service (KMS)?
Managed encryption key service for AWS-integrated cryptography and customer managed keys.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Identity | Define who or what can access AWS. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Permissions | Use policies, boundaries, SCPs, and conditions. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Detection | Find threats, misconfigurations, or sensitive data. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Compliance | Collect evidence and enforce controls. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Key Management Service (KMS)
- Define principals and resources.
- Create least-privilege policies.
- Enable audit trails and findings.
- Test allowed and denied access.
- Automate remediation where safe.
- Review permissions regularly.
5. CLI / IaC starter
# Starter developer workflow for AWS Key Management Service (KMS)
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Key Management Service (KMS).
6. Developer code example
// SDK pattern for AWS Key Management Service (KMS)
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Key Management Service (KMS). |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Key Management Service (KMS) resources in target environment. |
| Execution/service role | kms.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "kms.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"kms:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Key Management Service (KMS) as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize security, identity & compliance capability across development, testing, and production accounts.
- Integrate AWS Key Management Service (KMS) with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Key Management Service (KMS)
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Secrets Manager
1. What is AWS Secrets Manager?
Secure storage, retrieval, and rotation of database credentials, API keys, and secrets.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Identity | Define who or what can access AWS. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Permissions | Use policies, boundaries, SCPs, and conditions. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Detection | Find threats, misconfigurations, or sensitive data. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Compliance | Collect evidence and enforce controls. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Secrets Manager
- Define principals and resources.
- Create least-privilege policies.
- Enable audit trails and findings.
- Test allowed and denied access.
- Automate remediation where safe.
- Review permissions regularly.
5. CLI / IaC starter
# Starter developer workflow for AWS Secrets Manager
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Secrets Manager.
6. Developer code example
// SDK pattern for AWS Secrets Manager
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Secrets Manager. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Secrets Manager resources in target environment. |
| Execution/service role | secretsmanager.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "secretsmanager.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"secretsmanager:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Secrets Manager as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize security, identity & compliance capability across development, testing, and production accounts.
- Integrate AWS Secrets Manager with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Secrets Manager
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Certificate Manager (ACM)
1. What is AWS Certificate Manager (ACM)?
Provision and manage public/private TLS certificates for AWS-integrated services.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Identity | Define who or what can access AWS. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Permissions | Use policies, boundaries, SCPs, and conditions. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Detection | Find threats, misconfigurations, or sensitive data. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Compliance | Collect evidence and enforce controls. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Certificate Manager (ACM)
- Define principals and resources.
- Create least-privilege policies.
- Enable audit trails and findings.
- Test allowed and denied access.
- Automate remediation where safe.
- Review permissions regularly.
5. CLI / IaC starter
# Starter developer workflow for AWS Certificate Manager (ACM)
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Certificate Manager (ACM).
6. Developer code example
// SDK pattern for AWS Certificate Manager (ACM)
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Certificate Manager (ACM). |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Certificate Manager (ACM) resources in target environment. |
| Execution/service role | acm.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "acm.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"acm:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Certificate Manager (ACM) as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize security, identity & compliance capability across development, testing, and production accounts.
- Integrate AWS Certificate Manager (ACM) with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Certificate Manager (ACM)
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Cognito
1. What is Amazon Cognito?
Authentication, authorization, user pools, identity pools, federation, and app user management.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Identity | Define who or what can access AWS. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Permissions | Use policies, boundaries, SCPs, and conditions. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Detection | Find threats, misconfigurations, or sensitive data. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Compliance | Collect evidence and enforce controls. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Cognito
- Define principals and resources.
- Create least-privilege policies.
- Enable audit trails and findings.
- Test allowed and denied access.
- Automate remediation where safe.
- Review permissions regularly.
5. CLI / IaC starter
# Starter developer workflow for Amazon Cognito
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Cognito.
6. Developer code example
// SDK pattern for Amazon Cognito
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Cognito. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Cognito resources in target environment. |
| Execution/service role | cognito-idp.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "cognito-idp.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"cognito-idp:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Cognito as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize security, identity & compliance capability across development, testing, and production accounts.
- Integrate Amazon Cognito with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Cognito
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Directory Service
1. What is AWS Directory Service?
Managed Microsoft AD and directory integrations for AWS workloads.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Identity | Define who or what can access AWS. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Permissions | Use policies, boundaries, SCPs, and conditions. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Detection | Find threats, misconfigurations, or sensitive data. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Compliance | Collect evidence and enforce controls. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Directory Service
- Define principals and resources.
- Create least-privilege policies.
- Enable audit trails and findings.
- Test allowed and denied access.
- Automate remediation where safe.
- Review permissions regularly.
5. CLI / IaC starter
# Starter developer workflow for AWS Directory Service
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Directory Service.
6. Developer code example
// SDK pattern for AWS Directory Service
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Directory Service. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Directory Service resources in target environment. |
| Execution/service role | ds.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ds.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"ds:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Directory Service as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize security, identity & compliance capability across development, testing, and production accounts.
- Integrate AWS Directory Service with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Directory Service
AWS DocsUse these official AWS links while studying or implementing this service.
AWS CloudHSM
1. What is AWS CloudHSM?
Dedicated hardware security modules for cryptographic key control.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Identity | Define who or what can access AWS. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Permissions | Use policies, boundaries, SCPs, and conditions. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Detection | Find threats, misconfigurations, or sensitive data. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Compliance | Collect evidence and enforce controls. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS CloudHSM
- Define principals and resources.
- Create least-privilege policies.
- Enable audit trails and findings.
- Test allowed and denied access.
- Automate remediation where safe.
- Review permissions regularly.
5. CLI / IaC starter
# Starter developer workflow for AWS CloudHSM
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS CloudHSM.
6. Developer code example
// SDK pattern for AWS CloudHSM
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS CloudHSM. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS CloudHSM resources in target environment. |
| Execution/service role | cloudhsm.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "cloudhsm.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"cloudhsm:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS CloudHSM as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize security, identity & compliance capability across development, testing, and production accounts.
- Integrate AWS CloudHSM with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS CloudHSM
AWS DocsUse these official AWS links while studying or implementing this service.
AWS WAF
1. What is AWS WAF?
Web application firewall for HTTP/S request filtering and application-layer protections.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Identity | Define who or what can access AWS. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Permissions | Use policies, boundaries, SCPs, and conditions. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Detection | Find threats, misconfigurations, or sensitive data. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Compliance | Collect evidence and enforce controls. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS WAF
- Define principals and resources.
- Create least-privilege policies.
- Enable audit trails and findings.
- Test allowed and denied access.
- Automate remediation where safe.
- Review permissions regularly.
5. CLI / IaC starter
# Starter developer workflow for AWS WAF
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS WAF.
6. Developer code example
// SDK pattern for AWS WAF
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS WAF. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS WAF resources in target environment. |
| Execution/service role | waf.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "waf.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"waf:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS WAF as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize security, identity & compliance capability across development, testing, and production accounts.
- Integrate AWS WAF with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS WAF
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Shield
1. What is AWS Shield?
DDoS protection for AWS applications.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Identity | Define who or what can access AWS. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Permissions | Use policies, boundaries, SCPs, and conditions. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Detection | Find threats, misconfigurations, or sensitive data. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Compliance | Collect evidence and enforce controls. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Shield
- Define principals and resources.
- Create least-privilege policies.
- Enable audit trails and findings.
- Test allowed and denied access.
- Automate remediation where safe.
- Review permissions regularly.
5. CLI / IaC starter
# Starter developer workflow for AWS Shield
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Shield.
6. Developer code example
// SDK pattern for AWS Shield
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Shield. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Shield resources in target environment. |
| Execution/service role | shield.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "shield.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"shield:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Shield as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize security, identity & compliance capability across development, testing, and production accounts.
- Integrate AWS Shield with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Shield
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Firewall Manager
1. What is AWS Firewall Manager?
Central management for firewall rules across accounts and resources.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Identity | Define who or what can access AWS. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Permissions | Use policies, boundaries, SCPs, and conditions. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Detection | Find threats, misconfigurations, or sensitive data. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Compliance | Collect evidence and enforce controls. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Firewall Manager
- Define principals and resources.
- Create least-privilege policies.
- Enable audit trails and findings.
- Test allowed and denied access.
- Automate remediation where safe.
- Review permissions regularly.
5. CLI / IaC starter
# Starter developer workflow for AWS Firewall Manager
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Firewall Manager.
6. Developer code example
// SDK pattern for AWS Firewall Manager
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Firewall Manager. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Firewall Manager resources in target environment. |
| Execution/service role | fms.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "fms.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"fms:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Firewall Manager as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize security, identity & compliance capability across development, testing, and production accounts.
- Integrate AWS Firewall Manager with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Firewall Manager
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon GuardDuty
1. What is Amazon GuardDuty?
Threat detection service using logs, DNS activity, and ML-based findings.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Identity | Define who or what can access AWS. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Permissions | Use policies, boundaries, SCPs, and conditions. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Detection | Find threats, misconfigurations, or sensitive data. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Compliance | Collect evidence and enforce controls. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon GuardDuty
- Define principals and resources.
- Create least-privilege policies.
- Enable audit trails and findings.
- Test allowed and denied access.
- Automate remediation where safe.
- Review permissions regularly.
5. CLI / IaC starter
# Starter developer workflow for Amazon GuardDuty
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon GuardDuty.
6. Developer code example
// SDK pattern for Amazon GuardDuty
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon GuardDuty. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon GuardDuty resources in target environment. |
| Execution/service role | guardduty.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "guardduty.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"guardduty:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon GuardDuty as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize security, identity & compliance capability across development, testing, and production accounts.
- Integrate Amazon GuardDuty with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon GuardDuty
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Security Hub
1. What is AWS Security Hub?
Central security posture and findings aggregation.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Identity | Define who or what can access AWS. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Permissions | Use policies, boundaries, SCPs, and conditions. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Detection | Find threats, misconfigurations, or sensitive data. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Compliance | Collect evidence and enforce controls. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Security Hub
- Define principals and resources.
- Create least-privilege policies.
- Enable audit trails and findings.
- Test allowed and denied access.
- Automate remediation where safe.
- Review permissions regularly.
5. CLI / IaC starter
# Starter developer workflow for AWS Security Hub
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Security Hub.
6. Developer code example
// SDK pattern for AWS Security Hub
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Security Hub. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Security Hub resources in target environment. |
| Execution/service role | securityhub.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "securityhub.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"securityhub:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Security Hub as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize security, identity & compliance capability across development, testing, and production accounts.
- Integrate AWS Security Hub with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Security Hub
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Inspector
1. What is Amazon Inspector?
Automated vulnerability management for EC2, container images, and Lambda.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Identity | Define who or what can access AWS. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Permissions | Use policies, boundaries, SCPs, and conditions. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Detection | Find threats, misconfigurations, or sensitive data. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Compliance | Collect evidence and enforce controls. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Inspector
- Define principals and resources.
- Create least-privilege policies.
- Enable audit trails and findings.
- Test allowed and denied access.
- Automate remediation where safe.
- Review permissions regularly.
5. CLI / IaC starter
# Starter developer workflow for Amazon Inspector
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Inspector.
6. Developer code example
// SDK pattern for Amazon Inspector
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Inspector. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Inspector resources in target environment. |
| Execution/service role | inspector2.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "inspector2.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"inspector2:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Inspector as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize security, identity & compliance capability across development, testing, and production accounts.
- Integrate Amazon Inspector with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Inspector
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Macie
1. What is Amazon Macie?
Sensitive data discovery and classification for S3.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Identity | Define who or what can access AWS. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Permissions | Use policies, boundaries, SCPs, and conditions. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Detection | Find threats, misconfigurations, or sensitive data. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Compliance | Collect evidence and enforce controls. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Macie
- Define principals and resources.
- Create least-privilege policies.
- Enable audit trails and findings.
- Test allowed and denied access.
- Automate remediation where safe.
- Review permissions regularly.
5. CLI / IaC starter
# Starter developer workflow for Amazon Macie
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Macie.
6. Developer code example
// SDK pattern for Amazon Macie
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Macie. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Macie resources in target environment. |
| Execution/service role | macie2.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "macie2.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"macie2:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Macie as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize security, identity & compliance capability across development, testing, and production accounts.
- Integrate Amazon Macie with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Macie
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Detective
1. What is Amazon Detective?
Security investigation graphs and behavior analysis.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Identity | Define who or what can access AWS. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Permissions | Use policies, boundaries, SCPs, and conditions. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Detection | Find threats, misconfigurations, or sensitive data. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Compliance | Collect evidence and enforce controls. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Detective
- Define principals and resources.
- Create least-privilege policies.
- Enable audit trails and findings.
- Test allowed and denied access.
- Automate remediation where safe.
- Review permissions regularly.
5. CLI / IaC starter
# Starter developer workflow for Amazon Detective
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Detective.
6. Developer code example
// SDK pattern for Amazon Detective
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Detective. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Detective resources in target environment. |
| Execution/service role | detective.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "detective.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"detective:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Detective as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize security, identity & compliance capability across development, testing, and production accounts.
- Integrate Amazon Detective with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Detective
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Audit Manager
1. What is AWS Audit Manager?
Evidence collection and audit assessment automation.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Identity | Define who or what can access AWS. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Permissions | Use policies, boundaries, SCPs, and conditions. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Detection | Find threats, misconfigurations, or sensitive data. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Compliance | Collect evidence and enforce controls. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Audit Manager
- Define principals and resources.
- Create least-privilege policies.
- Enable audit trails and findings.
- Test allowed and denied access.
- Automate remediation where safe.
- Review permissions regularly.
5. CLI / IaC starter
# Starter developer workflow for AWS Audit Manager
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Audit Manager.
6. Developer code example
// SDK pattern for AWS Audit Manager
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Audit Manager. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Audit Manager resources in target environment. |
| Execution/service role | auditmanager.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "auditmanager.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"auditmanager:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Audit Manager as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize security, identity & compliance capability across development, testing, and production accounts.
- Integrate AWS Audit Manager with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Audit Manager
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Artifact
1. What is AWS Artifact?
On-demand access to AWS compliance reports and agreements.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Identity | Define who or what can access AWS. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Permissions | Use policies, boundaries, SCPs, and conditions. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Detection | Find threats, misconfigurations, or sensitive data. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Compliance | Collect evidence and enforce controls. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Artifact
- Define principals and resources.
- Create least-privilege policies.
- Enable audit trails and findings.
- Test allowed and denied access.
- Automate remediation where safe.
- Review permissions regularly.
5. CLI / IaC starter
# Starter developer workflow for AWS Artifact
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Artifact.
6. Developer code example
// SDK pattern for AWS Artifact
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Artifact. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Artifact resources in target environment. |
| Execution/service role | artifact.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "artifact.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"artifact:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Artifact as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize security, identity & compliance capability across development, testing, and production accounts.
- Integrate AWS Artifact with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Artifact
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Network Firewall
1. What is AWS Network Firewall?
Managed network firewall for VPC traffic inspection.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Identity | Define who or what can access AWS. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Permissions | Use policies, boundaries, SCPs, and conditions. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Detection | Find threats, misconfigurations, or sensitive data. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Compliance | Collect evidence and enforce controls. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Network Firewall
- Define principals and resources.
- Create least-privilege policies.
- Enable audit trails and findings.
- Test allowed and denied access.
- Automate remediation where safe.
- Review permissions regularly.
5. CLI / IaC starter
# Starter developer workflow for AWS Network Firewall
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Network Firewall.
6. Developer code example
// SDK pattern for AWS Network Firewall
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Network Firewall. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Network Firewall resources in target environment. |
| Execution/service role | network-firewall.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "network-firewall.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"network-firewall:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Network Firewall as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize security, identity & compliance capability across development, testing, and production accounts.
- Integrate AWS Network Firewall with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Network Firewall
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Resource Access Manager (RAM)
1. What is AWS Resource Access Manager (RAM)?
Share AWS resources across accounts or organizations.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Identity | Define who or what can access AWS. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Permissions | Use policies, boundaries, SCPs, and conditions. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Detection | Find threats, misconfigurations, or sensitive data. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Compliance | Collect evidence and enforce controls. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Resource Access Manager (RAM)
- Define principals and resources.
- Create least-privilege policies.
- Enable audit trails and findings.
- Test allowed and denied access.
- Automate remediation where safe.
- Review permissions regularly.
5. CLI / IaC starter
# Starter developer workflow for AWS Resource Access Manager (RAM)
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Resource Access Manager (RAM).
6. Developer code example
// SDK pattern for AWS Resource Access Manager (RAM)
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Resource Access Manager (RAM). |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Resource Access Manager (RAM) resources in target environment. |
| Execution/service role | ram.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ram.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"ram:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Resource Access Manager (RAM) as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize security, identity & compliance capability across development, testing, and production accounts.
- Integrate AWS Resource Access Manager (RAM) with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Resource Access Manager (RAM)
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Verified Permissions
1. What is Amazon Verified Permissions?
Fine-grained application authorization using Cedar policies.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Identity | Define who or what can access AWS. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Permissions | Use policies, boundaries, SCPs, and conditions. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Detection | Find threats, misconfigurations, or sensitive data. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Compliance | Collect evidence and enforce controls. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Verified Permissions
- Define principals and resources.
- Create least-privilege policies.
- Enable audit trails and findings.
- Test allowed and denied access.
- Automate remediation where safe.
- Review permissions regularly.
5. CLI / IaC starter
# Starter developer workflow for Amazon Verified Permissions
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Verified Permissions.
6. Developer code example
// SDK pattern for Amazon Verified Permissions
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Verified Permissions. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Verified Permissions resources in target environment. |
| Execution/service role | verifiedpermissions.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "verifiedpermissions.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"verifiedpermissions:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Verified Permissions as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize security, identity & compliance capability across development, testing, and production accounts.
- Integrate Amazon Verified Permissions with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Verified Permissions
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Private CA
1. What is AWS Private CA?
Private certificate authority for internal TLS and device identity.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Identity | Define who or what can access AWS. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Permissions | Use policies, boundaries, SCPs, and conditions. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Detection | Find threats, misconfigurations, or sensitive data. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Compliance | Collect evidence and enforce controls. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Private CA
- Define principals and resources.
- Create least-privilege policies.
- Enable audit trails and findings.
- Test allowed and denied access.
- Automate remediation where safe.
- Review permissions regularly.
5. CLI / IaC starter
# Starter developer workflow for AWS Private CA
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Private CA.
6. Developer code example
// SDK pattern for AWS Private CA
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Private CA. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Private CA resources in target environment. |
| Execution/service role | acm-pca.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "acm-pca.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"acm-pca:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Private CA as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize security, identity & compliance capability across development, testing, and production accounts.
- Integrate AWS Private CA with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Private CA
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Security Lake
1. What is Amazon Security Lake?
Centralized security data lake using OCSF format.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Identity | Define who or what can access AWS. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Permissions | Use policies, boundaries, SCPs, and conditions. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Detection | Find threats, misconfigurations, or sensitive data. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Compliance | Collect evidence and enforce controls. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Security Lake
- Define principals and resources.
- Create least-privilege policies.
- Enable audit trails and findings.
- Test allowed and denied access.
- Automate remediation where safe.
- Review permissions regularly.
5. CLI / IaC starter
# Starter developer workflow for Amazon Security Lake
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Security Lake.
6. Developer code example
// SDK pattern for Amazon Security Lake
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Security Lake. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Security Lake resources in target environment. |
| Execution/service role | securitylake.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "securitylake.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"securitylake:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Security Lake as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize security, identity & compliance capability across development, testing, and production accounts.
- Integrate Amazon Security Lake with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Security Lake
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon EC2
1. What is Amazon EC2?
Amazon EC2 gives you virtual machines in AWS. Unlike Lambda, you manage the OS, patching approach, runtime installation, ports, disks, and long-running processes.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls connectivity, isolation, ingress, egress, and private access paths.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Instance types | General purpose, compute optimized, memory optimized, storage optimized, accelerated/GPU, burstable. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Bootstrapping | Use user data or image baking to install packages and start apps. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Networking | Place instances in public/private subnets and restrict with security groups. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Scaling | Use Auto Scaling groups and load balancers for stateless apps. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Access | Prefer SSM Session Manager over SSH key access in production. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon EC2
- EC2 → Launch instance.
- Choose AMI such as Amazon Linux, Ubuntu, Windows, or custom AMI.
- Choose instance type based on CPU/memory/network needs.
- Choose key pair or configure SSM access.
- Choose subnet and security group.
- Attach storage and IAM instance profile.
- Add user data for bootstrap.
- Launch, test, then put behind ALB/ASG for production.
5. CLI / IaC starter
aws ec2 run-instances --image-id ami-xxxxxxxx --instance-type t3.micro --subnet-id subnet-xxxx --security-group-ids sg-xxxx --iam-instance-profile Name=demo-ec2-profile --tag-specifications 'ResourceType=instance,Tags=[{Key=Name,Value=demo-web}]'
aws ec2 describe-instances --filters Name=tag:Name,Values=demo-web
6. Developer code example
# User data example: install and run a simple Node.js app
#!/bin/bash
yum update -y
yum install -y nodejs
cat > /home/ec2-user/server.js <<'JS'
require('http').createServer((req,res)=>res.end('hello from EC2')).listen(3000)
JS
node /home/ec2-user/server.js &
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon EC2. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon EC2 resources in target environment. |
| Execution/service role | ec2.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ec2.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"ec2:DescribeInstances",
"ec2:RunInstances",
"ec2:TerminateInstances",
"ec2:CreateTags",
"ec2:CreateSecurityGroup",
"ec2:AuthorizeSecurityGroupIngress",
"iam:PassRole",
"ssm:StartSession"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Host legacy monoliths needing OS-level access.
- Run GPU training/inference or custom networking tools.
- Build controlled bastion/admin workloads using SSM and private subnets.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Opening port 22 or 3389 to the world | Use SSM Session Manager or restrict source IPs. |
| No patching plan | Use Systems Manager Patch Manager or immutable AMIs. |
| One instance with no backup | Use snapshots, AMIs, ASG, and multi-AZ design. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon EC2
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon EC2 Auto Scaling
1. What is Amazon EC2 Auto Scaling?
Automatically adjusts EC2 capacity based on demand and health.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon EC2 Auto Scaling
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon EC2 Auto Scaling
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon EC2 Auto Scaling.
6. Developer code example
// SDK pattern for Amazon EC2 Auto Scaling
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon EC2 Auto Scaling. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon EC2 Auto Scaling resources in target environment. |
| Execution/service role | autoscaling.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "autoscaling.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"autoscaling:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon EC2 Auto Scaling as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize compute capability across development, testing, and production accounts.
- Integrate Amazon EC2 Auto Scaling with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon EC2 Auto Scaling
AWS DocsUse these official AWS links while studying or implementing this service.
Elastic Load Balancing
1. What is Elastic Load Balancing?
Application, Network, Gateway, and Classic load balancers for distributing traffic.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Elastic Load Balancing
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Elastic Load Balancing
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Elastic Load Balancing.
6. Developer code example
// SDK pattern for Elastic Load Balancing
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Elastic Load Balancing. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Elastic Load Balancing resources in target environment. |
| Execution/service role | elasticloadbalancing.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "elasticloadbalancing.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"elasticloadbalancing:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Elastic Load Balancing as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize compute capability across development, testing, and production accounts.
- Integrate Elastic Load Balancing with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Elastic Load Balancing
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Lambda
1. What is AWS Lambda?
AWS Lambda is a serverless compute service. You upload code and AWS runs it only when an event invokes it. You do not manage servers, operating system patches, or capacity planning for the underlying machines.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A source that starts work. Understand delivery mode, retry behavior, payload shape, and idempotency.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls release history and deployment traffic. Use for rollback and stable production references.
Controls release history and deployment traffic. Use for rollback and stable production references.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A source that starts work. Understand delivery mode, retry behavior, payload shape, and idempotency.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtimes | Managed runtimes include language families such as Node.js, Python, Java, .NET, Ruby, and custom OS-only runtimes. Exact runtime identifiers change, so verify the Lambda runtime page before creating production functions. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Cold start | Cold start happens when Lambda must initialize a new execution environment: download/unpack code or image, start runtime, run static initialization, and then invoke the handler. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Warm start | Warm start reuses an existing execution environment. Code outside the handler, open database clients, and cached values may remain available, but never depend on them for correctness. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Versions and aliases | $LATEST is mutable. A published version is immutable. Aliases such as dev, qa, prod can point to versions and support traffic shifting. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Timeout and memory | Timeout can be up to 15 minutes. Memory can be configured from 128 MB to 10,240 MB; CPU scales with memory. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Packaging | Use inline editor for simple tests, zip files for standard functions, S3 for larger zip uploads, layers for shared dependencies, and container images for large/custom runtimes. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Layers | Up to five layers can be attached to zip-based functions. Layers are extracted under /opt and are good for shared libraries or extensions. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Container images | Use ECR container images when dependencies/custom runtime need Docker. Lambda container images can be much larger than zip packages, but they still follow Lambda runtime API behavior. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Triggers | Common triggers include API Gateway, Lambda Function URL, ALB, EventBridge schedule/rule, S3 events, SQS, SNS, DynamoDB Streams, Kinesis, MSK/Kafka, Cognito triggers, CloudWatch Logs subscriptions, IoT, and Step Functions tasks. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Destinations | Async invocation destinations can send success/failure records to SQS, SNS, Lambda, EventBridge, and S3 for failure records. DLQ is an older/simple failure pattern for async invocations. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Lambda
- Console: Lambda → Create function → Author from scratch → choose runtime → create/choose execution role → create.
- Add handler code and test event.
- Set memory, timeout, environment variables, and log retention.
- Add trigger such as API Gateway, S3, EventBridge, or SQS.
- Publish version and point alias prod to that version.
- Configure alarms, DLQ/destination, X-Ray, reserved/provisioned concurrency if needed.
5. CLI / IaC starter
# 1) Create execution role trust policy for Lambda
cat > trust-lambda.json <<'JSON'
{
"Version":"2012-10-17",
"Statement":[{"Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"},"Action":"sts:AssumeRole"}]
}
JSON
aws iam create-role --role-name demo-lambda-role --assume-role-policy-document file://trust-lambda.json
aws iam attach-role-policy --role-name demo-lambda-role --policy-arn arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole
# 2) Package and create function
zip function.zip index.mjs
aws lambda create-function --function-name demo-hello --runtime nodejs22.x --handler index.handler --role arn:aws:iam::123456789012:role/demo-lambda-role --zip-file fileb://function.zip --timeout 10 --memory-size 256
# 3) Invoke synchronously
aws lambda invoke --function-name demo-hello out.json && cat out.json
# 4) Publish immutable version and alias
aws lambda publish-version --function-name demo-hello
aws lambda create-alias --function-name demo-hello --name prod --function-version 1
6. Developer code example
// index.mjs
export const handler = async (event, context) => {
console.log('requestId:', context.awsRequestId);
const name = event.queryStringParameters?.name ?? event.name ?? 'World';
return {
statusCode: 200,
headers: { 'content-type': 'application/json' },
body: JSON.stringify({ message: `Hello ${name}` })
};
};
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Lambda. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Lambda resources in target environment. |
| Execution/service role | lambda.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "lambda.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"logs:CreateLogGroup",
"logs:CreateLogStream",
"logs:PutLogEvents",
"lambda:InvokeFunction",
"lambda:GetFunction",
"lambda:UpdateFunctionCode",
"lambda:UpdateFunctionConfiguration",
"lambda:PublishVersion",
"lambda:CreateAlias",
"lambda:UpdateAlias",
"sqs:SendMessage",
"sns:Publish",
"events:PutEvents",
"s3:GetObject",
"s3:PutObject",
"dynamodb:GetItem",
"dynamodb:PutItem"
],
"Resource": "arn:aws:lambda:us-east-1:123456789012:function:demo-*"
}
]
}
10. Integrations and triggers
- API Gateway / Function URL / ALB for HTTP
- S3 events for file processing
- SQS/Kinesis/DynamoDB Streams/MSK via event source mapping
- EventBridge schedules/events
- SNS notifications
- Step Functions tasks
- Cognito triggers
- CloudWatch Logs subscriptions
- Connect/Lex/IoT integrations
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Serverless REST API backend behind API Gateway or Function URL.
- File processing pipeline: upload to S3, Lambda validates/transforms, output goes to S3/DynamoDB.
- Event automation: EventBridge schedule or SQS message triggers data sync, notification, cleanup, or report job.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Putting database connections inside the handler every time | Create clients outside the handler so warm starts reuse them, but still handle reconnects. |
| Using Lambda for long-running jobs | Use Step Functions, ECS, Batch, or Glue when work exceeds 15 minutes or needs heavy state. |
| No idempotency on retries | Use idempotency keys, DynamoDB conditional writes, or deduplication queues. |
| Giving the execution role AdministratorAccess | Grant only logs and exact service actions needed. |
| Ignoring cold start | Reduce package size, move init code carefully, use provisioned concurrency/SnapStart when justified. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Lambda
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Elastic Beanstalk
1. What is AWS Elastic Beanstalk?
Platform service for deploying web applications with managed infrastructure.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Elastic Beanstalk
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Elastic Beanstalk
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Elastic Beanstalk.
6. Developer code example
// SDK pattern for AWS Elastic Beanstalk
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Elastic Beanstalk. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Elastic Beanstalk resources in target environment. |
| Execution/service role | elasticbeanstalk.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "elasticbeanstalk.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"elasticbeanstalk:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Elastic Beanstalk as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize compute capability across development, testing, and production accounts.
- Integrate AWS Elastic Beanstalk with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Elastic Beanstalk
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Batch
1. What is AWS Batch?
Managed batch computing jobs, queues, and compute environments.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Batch
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Batch
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Batch.
6. Developer code example
// SDK pattern for AWS Batch
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Batch. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Batch resources in target environment. |
| Execution/service role | batch.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "batch.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"batch:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Batch as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize compute capability across development, testing, and production accounts.
- Integrate AWS Batch with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Batch
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Lightsail
1. What is Amazon Lightsail?
Simplified VPS, containers, databases, and networking for small apps.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Lightsail
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Lightsail
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Lightsail.
6. Developer code example
// SDK pattern for Amazon Lightsail
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Lightsail. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Lightsail resources in target environment. |
| Execution/service role | lightsail.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "lightsail.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"lightsail:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Lightsail as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize compute capability across development, testing, and production accounts.
- Integrate Amazon Lightsail with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Lightsail
AWS DocsUse these official AWS links while studying or implementing this service.
AWS App Runner
1. What is AWS App Runner?
Fully managed service to run containerized web apps and APIs from source or image.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS App Runner
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS App Runner
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS App Runner.
6. Developer code example
// SDK pattern for AWS App Runner
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS App Runner. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS App Runner resources in target environment. |
| Execution/service role | apprunner.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "apprunner.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"apprunner:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS App Runner as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize compute capability across development, testing, and production accounts.
- Integrate AWS App Runner with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS App Runner
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Fargate
1. What is AWS Fargate?
Serverless container compute engine for ECS and EKS.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Fargate
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Fargate
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Fargate.
6. Developer code example
// SDK pattern for AWS Fargate
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Fargate. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Fargate resources in target environment. |
| Execution/service role | ecs.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ecs.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"ecs:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Fargate as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize compute capability across development, testing, and production accounts.
- Integrate AWS Fargate with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Fargate
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Outposts
1. What is AWS Outposts?
AWS infrastructure and services deployed on premises.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Outposts
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Outposts
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Outposts.
6. Developer code example
// SDK pattern for AWS Outposts
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Outposts. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Outposts resources in target environment. |
| Execution/service role | outposts.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "outposts.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"outposts:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Outposts as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize compute capability across development, testing, and production accounts.
- Integrate AWS Outposts with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Outposts
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Wavelength
1. What is AWS Wavelength?
Ultra-low latency AWS compute/storage at 5G network edges.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Wavelength
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Wavelength
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Wavelength.
6. Developer code example
// SDK pattern for AWS Wavelength
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Wavelength. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Wavelength resources in target environment. |
| Execution/service role | wavelength.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "wavelength.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"wavelength:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Wavelength as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize compute capability across development, testing, and production accounts.
- Integrate AWS Wavelength with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Wavelength
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Local Zones
1. What is AWS Local Zones?
AWS infrastructure close to metro areas for low-latency workloads.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Local Zones
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Local Zones
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Local Zones.
6. Developer code example
// SDK pattern for AWS Local Zones
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Local Zones. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Local Zones resources in target environment. |
| Execution/service role | ec2.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ec2.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"ec2:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Local Zones as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize compute capability across development, testing, and production accounts.
- Integrate AWS Local Zones with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Local Zones
AWS DocsUse these official AWS links while studying or implementing this service.
EC2 Image Builder
1. What is EC2 Image Builder?
Automated creation and maintenance of VM/container images.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure EC2 Image Builder
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for EC2 Image Builder
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for EC2 Image Builder.
6. Developer code example
// SDK pattern for EC2 Image Builder
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for EC2 Image Builder. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged EC2 Image Builder resources in target environment. |
| Execution/service role | imagebuilder.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "imagebuilder.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"imagebuilder:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use EC2 Image Builder as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize compute capability across development, testing, and production accounts.
- Integrate EC2 Image Builder with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for EC2 Image Builder
AWS DocsUse these official AWS links while studying or implementing this service.
VMware Cloud on AWS
1. What is VMware Cloud on AWS?
VMware SDDC on AWS infrastructure for hybrid migration.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure VMware Cloud on AWS
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for VMware Cloud on AWS
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for VMware Cloud on AWS.
6. Developer code example
// SDK pattern for VMware Cloud on AWS
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for VMware Cloud on AWS. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged VMware Cloud on AWS resources in target environment. |
| Execution/service role | vmc.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "vmc.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"vmc:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use VMware Cloud on AWS as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize compute capability across development, testing, and production accounts.
- Integrate VMware Cloud on AWS with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for VMware Cloud on AWS
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Serverless Application Repository
1. What is AWS Serverless Application Repository?
Repository for publishing and deploying serverless apps.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Serverless Application Repository
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Serverless Application Repository
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Serverless Application Repository.
6. Developer code example
// SDK pattern for AWS Serverless Application Repository
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Serverless Application Repository. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Serverless Application Repository resources in target environment. |
| Execution/service role | serverlessrepo.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "serverlessrepo.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"serverlessrepo:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Serverless Application Repository as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize compute capability across development, testing, and production accounts.
- Integrate AWS Serverless Application Repository with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Serverless Application Repository
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Elastic Container Service (ECS)
1. What is Amazon Elastic Container Service (ECS)?
Managed container orchestration for Docker containers.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Elastic Container Service (ECS)
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Elastic Container Service (ECS)
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Elastic Container Service (ECS).
6. Developer code example
// SDK pattern for Amazon Elastic Container Service (ECS)
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Elastic Container Service (ECS). |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Elastic Container Service (ECS) resources in target environment. |
| Execution/service role | ecs-tasks.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ecs-tasks.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"ecs:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Elastic Container Service (ECS) as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize containers capability across development, testing, and production accounts.
- Integrate Amazon Elastic Container Service (ECS) with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Elastic Container Service (ECS)
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Elastic Kubernetes Service (EKS)
1. What is Amazon Elastic Kubernetes Service (EKS)?
Managed Kubernetes control plane and integrations.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Elastic Kubernetes Service (EKS)
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Elastic Kubernetes Service (EKS)
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Elastic Kubernetes Service (EKS).
6. Developer code example
// SDK pattern for Amazon Elastic Kubernetes Service (EKS)
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Elastic Kubernetes Service (EKS). |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Elastic Kubernetes Service (EKS) resources in target environment. |
| Execution/service role | eks.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "eks.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"eks:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Elastic Kubernetes Service (EKS) as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize containers capability across development, testing, and production accounts.
- Integrate Amazon Elastic Kubernetes Service (EKS) with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Elastic Kubernetes Service (EKS)
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Elastic Container Registry (ECR)
1. What is Amazon Elastic Container Registry (ECR)?
Managed Docker/OCI container registry.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Elastic Container Registry (ECR)
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Elastic Container Registry (ECR)
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Elastic Container Registry (ECR).
6. Developer code example
// SDK pattern for Amazon Elastic Container Registry (ECR)
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Elastic Container Registry (ECR). |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Elastic Container Registry (ECR) resources in target environment. |
| Execution/service role | ecr.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ecr.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"ecr:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Elastic Container Registry (ECR) as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize containers capability across development, testing, and production accounts.
- Integrate Amazon Elastic Container Registry (ECR) with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Elastic Container Registry (ECR)
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon ECS Anywhere
1. What is Amazon ECS Anywhere?
Run ECS tasks on customer-managed infrastructure.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon ECS Anywhere
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon ECS Anywhere
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon ECS Anywhere.
6. Developer code example
// SDK pattern for Amazon ECS Anywhere
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon ECS Anywhere. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon ECS Anywhere resources in target environment. |
| Execution/service role | ecs.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ecs.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"ecs:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon ECS Anywhere as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize containers capability across development, testing, and production accounts.
- Integrate Amazon ECS Anywhere with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon ECS Anywhere
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon EKS Anywhere
1. What is Amazon EKS Anywhere?
Create and operate Kubernetes clusters on-premises.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon EKS Anywhere
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon EKS Anywhere
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon EKS Anywhere.
6. Developer code example
// SDK pattern for Amazon EKS Anywhere
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon EKS Anywhere. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon EKS Anywhere resources in target environment. |
| Execution/service role | eks.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "eks.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"eks:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon EKS Anywhere as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize containers capability across development, testing, and production accounts.
- Integrate Amazon EKS Anywhere with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon EKS Anywhere
AWS DocsUse these official AWS links while studying or implementing this service.
AWS App Mesh
1. What is AWS App Mesh?
Service mesh for microservice traffic routing, observability, and resilience.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS App Mesh
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS App Mesh
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS App Mesh.
6. Developer code example
// SDK pattern for AWS App Mesh
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS App Mesh. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS App Mesh resources in target environment. |
| Execution/service role | appmesh.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "appmesh.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"appmesh:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS App Mesh as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize containers capability across development, testing, and production accounts.
- Integrate AWS App Mesh with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS App Mesh
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Proton
1. What is AWS Proton?
Platform engineering service for standardized app infrastructure templates.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Proton
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Proton
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Proton.
6. Developer code example
// SDK pattern for AWS Proton
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Proton. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Proton resources in target environment. |
| Execution/service role | proton.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "proton.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"proton:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Proton as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize containers capability across development, testing, and production accounts.
- Integrate AWS Proton with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Proton
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon S3
1. What is Amazon S3?
Amazon S3 is object storage. It stores objects inside buckets. Each object has a key, data, metadata, permissions, encryption, and optional version history.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls release history and deployment traffic. Use for rollback and stable production references.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A source that starts work. Understand delivery mode, retry behavior, payload shape, and idempotency.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Storage classes | Standard, Intelligent-Tiering, Standard-IA, One Zone-IA, Glacier classes; choose based on access frequency and retrieval time. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Security | Block public access by default, use IAM/resource policy, KMS encryption, and access logs. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Automation | S3 events can trigger Lambda, SQS, SNS, or EventBridge. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Data lifecycle | Move, expire, replicate, or lock objects. | Define retention, restore testing, compliance, and cost rules. |
| Developer access | Use SDK put/get/list/copy/delete and presigned URLs for temporary upload/download. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon S3
- S3 → Create bucket.
- Choose globally unique bucket name and region.
- Keep Block Public Access on unless intentionally hosting public content.
- Enable versioning if object recovery is required.
- Choose default encryption, ideally SSE-KMS for sensitive data.
- Add lifecycle, replication, events, and access logs as needed.
5. CLI / IaC starter
aws s3api create-bucket --bucket demo-app-assets-123456 --region us-east-1
aws s3api put-bucket-versioning --bucket demo-app-assets-123456 --versioning-configuration Status=Enabled
aws s3 cp ./logo.png s3://demo-app-assets-123456/images/logo.png
aws s3 presign s3://demo-app-assets-123456/images/logo.png --expires-in 300
6. Developer code example
import { S3Client, PutObjectCommand, GetObjectCommand } from '@aws-sdk/client-s3';
const s3 = new S3Client({ region: 'us-east-1' });
await s3.send(new PutObjectCommand({
Bucket: 'demo-app-assets-123456',
Key: 'uploads/a.txt',
Body: 'hello',
ServerSideEncryption: 'AES256'
}));
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon S3. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon S3 resources in target environment. |
| Execution/service role | s3.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "s3.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"s3:ListBucket",
"s3:GetObject",
"s3:PutObject",
"s3:DeleteObject",
"s3:GetBucketLocation",
"s3:PutBucketPolicy",
"s3:PutBucketVersioning"
],
"Resource": [
"arn:aws:s3:::demo-app-assets-123456",
"arn:aws:s3:::demo-app-assets-123456/*"
]
}
]
}
10. Integrations and triggers
- CloudFront origin
- Lambda/SQS/SNS/EventBridge event notifications
- Athena/Glue/EMR/Redshift Spectrum data lake integrations
- KMS encryption
- IAM and bucket policies
- Replication and lifecycle
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Store user uploads and serve via CloudFront.
- Build raw/curated data lake zones for analytics and ML.
- Backup/archive application data with lifecycle and Object Lock.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Making a bucket public for uploads | Use presigned URLs or CloudFront signed URLs instead. |
| No object versioning | Enable versioning for critical buckets. |
| Listing huge buckets in code | Use prefixes, pagination, and inventory reports. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon S3
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon S3 Glacier
1. What is Amazon S3 Glacier?
Low-cost archive storage classes and vault-style archiving.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
Controls release history and deployment traffic. Use for rollback and stable production references.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A source that starts work. Understand delivery mode, retry behavior, payload shape, and idempotency.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Durability | AWS manages redundant storage; choose replication and backup strategy. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Access control | Combine IAM, resource policies, ACL-free design, and encryption. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Lifecycle | Move data to cheaper tiers or delete it after retention. | Define retention, restore testing, compliance, and cost rules. |
| Events | Trigger automation when data changes. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon S3 Glacier
- Create the storage resource.
- Block unintended public access.
- Enable encryption.
- Attach IAM/resource policy.
- Configure lifecycle/backup if needed.
- Test read/write and audit access.
5. CLI / IaC starter
# Starter developer workflow for Amazon S3 Glacier
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon S3 Glacier.
6. Developer code example
// SDK pattern for Amazon S3 Glacier
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon S3 Glacier. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon S3 Glacier resources in target environment. |
| Execution/service role | glacier.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "glacier.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"glacier:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon S3 Glacier as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize storage capability across development, testing, and production accounts.
- Integrate Amazon S3 Glacier with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon S3 Glacier
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon EBS
1. What is Amazon EBS?
Block storage volumes for EC2 instances.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
Controls release history and deployment traffic. Use for rollback and stable production references.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A source that starts work. Understand delivery mode, retry behavior, payload shape, and idempotency.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Durability | AWS manages redundant storage; choose replication and backup strategy. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Access control | Combine IAM, resource policies, ACL-free design, and encryption. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Lifecycle | Move data to cheaper tiers or delete it after retention. | Define retention, restore testing, compliance, and cost rules. |
| Events | Trigger automation when data changes. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon EBS
- Create the storage resource.
- Block unintended public access.
- Enable encryption.
- Attach IAM/resource policy.
- Configure lifecycle/backup if needed.
- Test read/write and audit access.
5. CLI / IaC starter
# Starter developer workflow for Amazon EBS
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon EBS.
6. Developer code example
// SDK pattern for Amazon EBS
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon EBS. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon EBS resources in target environment. |
| Execution/service role | ec2.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ec2.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"ec2:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon EBS as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize storage capability across development, testing, and production accounts.
- Integrate Amazon EBS with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon EBS
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon EFS
1. What is Amazon EFS?
Managed NFS file system for Linux workloads.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
Controls release history and deployment traffic. Use for rollback and stable production references.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A source that starts work. Understand delivery mode, retry behavior, payload shape, and idempotency.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Durability | AWS manages redundant storage; choose replication and backup strategy. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Access control | Combine IAM, resource policies, ACL-free design, and encryption. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Lifecycle | Move data to cheaper tiers or delete it after retention. | Define retention, restore testing, compliance, and cost rules. |
| Events | Trigger automation when data changes. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon EFS
- Create the storage resource.
- Block unintended public access.
- Enable encryption.
- Attach IAM/resource policy.
- Configure lifecycle/backup if needed.
- Test read/write and audit access.
5. CLI / IaC starter
# Starter developer workflow for Amazon EFS
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon EFS.
6. Developer code example
// SDK pattern for Amazon EFS
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon EFS. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon EFS resources in target environment. |
| Execution/service role | elasticfilesystem.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "elasticfilesystem.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"elasticfilesystem:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon EFS as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize storage capability across development, testing, and production accounts.
- Integrate Amazon EFS with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon EFS
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon FSx
1. What is Amazon FSx?
Managed file systems including Windows File Server, Lustre, NetApp ONTAP, and OpenZFS.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
Controls release history and deployment traffic. Use for rollback and stable production references.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A source that starts work. Understand delivery mode, retry behavior, payload shape, and idempotency.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Durability | AWS manages redundant storage; choose replication and backup strategy. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Access control | Combine IAM, resource policies, ACL-free design, and encryption. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Lifecycle | Move data to cheaper tiers or delete it after retention. | Define retention, restore testing, compliance, and cost rules. |
| Events | Trigger automation when data changes. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon FSx
- Create the storage resource.
- Block unintended public access.
- Enable encryption.
- Attach IAM/resource policy.
- Configure lifecycle/backup if needed.
- Test read/write and audit access.
5. CLI / IaC starter
# Starter developer workflow for Amazon FSx
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon FSx.
6. Developer code example
// SDK pattern for Amazon FSx
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon FSx. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon FSx resources in target environment. |
| Execution/service role | fsx.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "fsx.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"fsx:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon FSx as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize storage capability across development, testing, and production accounts.
- Integrate Amazon FSx with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon FSx
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Storage Gateway
1. What is AWS Storage Gateway?
Hybrid cloud storage gateway for file, volume, and tape workflows.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
Controls release history and deployment traffic. Use for rollback and stable production references.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A source that starts work. Understand delivery mode, retry behavior, payload shape, and idempotency.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Durability | AWS manages redundant storage; choose replication and backup strategy. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Access control | Combine IAM, resource policies, ACL-free design, and encryption. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Lifecycle | Move data to cheaper tiers or delete it after retention. | Define retention, restore testing, compliance, and cost rules. |
| Events | Trigger automation when data changes. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Storage Gateway
- Create the storage resource.
- Block unintended public access.
- Enable encryption.
- Attach IAM/resource policy.
- Configure lifecycle/backup if needed.
- Test read/write and audit access.
5. CLI / IaC starter
# Starter developer workflow for AWS Storage Gateway
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Storage Gateway.
6. Developer code example
// SDK pattern for AWS Storage Gateway
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Storage Gateway. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Storage Gateway resources in target environment. |
| Execution/service role | storagegateway.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "storagegateway.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"storagegateway:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Storage Gateway as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize storage capability across development, testing, and production accounts.
- Integrate AWS Storage Gateway with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Storage Gateway
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Backup
1. What is AWS Backup?
Centralized backup policies across AWS services.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
Controls release history and deployment traffic. Use for rollback and stable production references.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A source that starts work. Understand delivery mode, retry behavior, payload shape, and idempotency.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Durability | AWS manages redundant storage; choose replication and backup strategy. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Access control | Combine IAM, resource policies, ACL-free design, and encryption. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Lifecycle | Move data to cheaper tiers or delete it after retention. | Define retention, restore testing, compliance, and cost rules. |
| Events | Trigger automation when data changes. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Backup
- Create the storage resource.
- Block unintended public access.
- Enable encryption.
- Attach IAM/resource policy.
- Configure lifecycle/backup if needed.
- Test read/write and audit access.
5. CLI / IaC starter
# Starter developer workflow for AWS Backup
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Backup.
6. Developer code example
// SDK pattern for AWS Backup
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Backup. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Backup resources in target environment. |
| Execution/service role | backup.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "backup.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"backup:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Backup as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize storage capability across development, testing, and production accounts.
- Integrate AWS Backup with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Backup
AWS DocsUse these official AWS links while studying or implementing this service.
AWS DataSync
1. What is AWS DataSync?
Online data transfer and sync between storage systems.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
Controls release history and deployment traffic. Use for rollback and stable production references.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A source that starts work. Understand delivery mode, retry behavior, payload shape, and idempotency.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Durability | AWS manages redundant storage; choose replication and backup strategy. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Access control | Combine IAM, resource policies, ACL-free design, and encryption. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Lifecycle | Move data to cheaper tiers or delete it after retention. | Define retention, restore testing, compliance, and cost rules. |
| Events | Trigger automation when data changes. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS DataSync
- Create the storage resource.
- Block unintended public access.
- Enable encryption.
- Attach IAM/resource policy.
- Configure lifecycle/backup if needed.
- Test read/write and audit access.
5. CLI / IaC starter
# Starter developer workflow for AWS DataSync
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS DataSync.
6. Developer code example
// SDK pattern for AWS DataSync
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS DataSync. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS DataSync resources in target environment. |
| Execution/service role | datasync.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "datasync.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"datasync:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS DataSync as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize storage capability across development, testing, and production accounts.
- Integrate AWS DataSync with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS DataSync
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Transfer Family
1. What is AWS Transfer Family?
Managed SFTP/FTPS/FTP endpoints backed by S3 or EFS.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
Controls release history and deployment traffic. Use for rollback and stable production references.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A source that starts work. Understand delivery mode, retry behavior, payload shape, and idempotency.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Durability | AWS manages redundant storage; choose replication and backup strategy. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Access control | Combine IAM, resource policies, ACL-free design, and encryption. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Lifecycle | Move data to cheaper tiers or delete it after retention. | Define retention, restore testing, compliance, and cost rules. |
| Events | Trigger automation when data changes. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Transfer Family
- Create the storage resource.
- Block unintended public access.
- Enable encryption.
- Attach IAM/resource policy.
- Configure lifecycle/backup if needed.
- Test read/write and audit access.
5. CLI / IaC starter
# Starter developer workflow for AWS Transfer Family
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Transfer Family.
6. Developer code example
// SDK pattern for AWS Transfer Family
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Transfer Family. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Transfer Family resources in target environment. |
| Execution/service role | transfer.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "transfer.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"transfer:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Transfer Family as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize storage capability across development, testing, and production accounts.
- Integrate AWS Transfer Family with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Transfer Family
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Snow Family
1. What is AWS Snow Family?
Physical edge devices for offline data transfer and edge compute.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
Controls release history and deployment traffic. Use for rollback and stable production references.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A source that starts work. Understand delivery mode, retry behavior, payload shape, and idempotency.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Durability | AWS manages redundant storage; choose replication and backup strategy. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Access control | Combine IAM, resource policies, ACL-free design, and encryption. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Lifecycle | Move data to cheaper tiers or delete it after retention. | Define retention, restore testing, compliance, and cost rules. |
| Events | Trigger automation when data changes. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Snow Family
- Create the storage resource.
- Block unintended public access.
- Enable encryption.
- Attach IAM/resource policy.
- Configure lifecycle/backup if needed.
- Test read/write and audit access.
5. CLI / IaC starter
# Starter developer workflow for AWS Snow Family
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Snow Family.
6. Developer code example
// SDK pattern for AWS Snow Family
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Snow Family. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Snow Family resources in target environment. |
| Execution/service role | snowball.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "snowball.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"snowball:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Snow Family as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize storage capability across development, testing, and production accounts.
- Integrate AWS Snow Family with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Snow Family
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon File Cache
1. What is Amazon File Cache?
High-speed cache for file data across AWS and on-premises.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
Controls release history and deployment traffic. Use for rollback and stable production references.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A source that starts work. Understand delivery mode, retry behavior, payload shape, and idempotency.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Durability | AWS manages redundant storage; choose replication and backup strategy. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Access control | Combine IAM, resource policies, ACL-free design, and encryption. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Lifecycle | Move data to cheaper tiers or delete it after retention. | Define retention, restore testing, compliance, and cost rules. |
| Events | Trigger automation when data changes. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon File Cache
- Create the storage resource.
- Block unintended public access.
- Enable encryption.
- Attach IAM/resource policy.
- Configure lifecycle/backup if needed.
- Test read/write and audit access.
5. CLI / IaC starter
# Starter developer workflow for Amazon File Cache
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon File Cache.
6. Developer code example
// SDK pattern for Amazon File Cache
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon File Cache. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon File Cache resources in target environment. |
| Execution/service role | filecache.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "filecache.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"filecache:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon File Cache as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize storage capability across development, testing, and production accounts.
- Integrate Amazon File Cache with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon File Cache
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon RDS
1. What is Amazon RDS?
RDS is managed relational database service for engines like MySQL, PostgreSQL, MariaDB, Oracle, SQL Server, and Amazon Aurora.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls connectivity, isolation, ingress, egress, and private access paths.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Engines | Choose engine based on application compatibility. | Document owner, environment, tags, failure mode, and runbook before launch. |
| High availability | Use Multi-AZ for production. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Scaling | Use read replicas, instance class changes, Aurora Serverless where appropriate. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Connections | Use Secrets Manager and RDS Proxy for Lambda/serverless workloads. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon RDS
- Create DB subnet group.
- Create security group allowing app access only.
- Create DB/cluster with encryption/backups.
- Store credentials in Secrets Manager.
- Connect app using private endpoint.
- Enable monitoring/Performance Insights.
5. CLI / IaC starter
# Starter CLI exploration for Amazon RDS
aws --version
# Open the official docs for exact CLI commands and required parameters.
# Then create resources with IaC where possible instead of only console clicks.
6. Developer code example
// Developer SDK pattern for Amazon RDS
// 1. Install the AWS SDK v3 client for the service.
// 2. Create a client with region.
// 3. Send command.
// 4. Catch throttling, validation, and access errors.
try {
// await client.send(new SomeCommand(params));
} catch (err) {
console.error(err.name, err.message);
throw err;
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon RDS. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon RDS resources in target environment. |
| Execution/service role | rds.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "rds.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"rds:CreateDBInstance",
"rds:DescribeDBInstances",
"rds:ModifyDBInstance",
"rds:CreateDBSnapshot",
"rds:RestoreDBInstanceFromDBSnapshot"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- KMS encryption
- Secrets Manager credentials
- VPC/security groups
- CloudWatch metrics/logs
- Backup/restore
- Lambda/ECS/EC2 app clients
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Transactional application database.
- Reporting read replicas.
- Managed replacement for self-hosted MySQL/PostgreSQL.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Skipping IAM/resource planning | Write role and policy before coding. |
| No monitoring | Add logs, metrics, alarms, and audit events. |
| Manual-only setup | Use IaC templates for repeatable environments. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon RDS
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Aurora
1. What is Amazon Aurora?
Cloud-optimized relational database compatible with MySQL and PostgreSQL.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Schema / model | Decide relational, key-value, document, graph, time-series, or ledger style. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Scaling | Choose serverless, provisioned, replicas, shards, or clusters. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Backup | Use PITR, snapshots, and tested restore procedures. | Define retention, restore testing, compliance, and cost rules. |
| Access | Use IAM, VPC, secrets, rotation, and least privilege. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Aurora
- Choose database engine/model.
- Create subnet/security configuration.
- Create database/table/cluster.
- Enable encryption and backups.
- Store credentials in Secrets Manager.
- Test CRUD and failure behavior.
5. CLI / IaC starter
# Starter developer workflow for Amazon Aurora
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Aurora.
6. Developer code example
// SDK pattern for Amazon Aurora
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Aurora. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Aurora resources in target environment. |
| Execution/service role | rds.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "rds.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"rds:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- KMS encryption
- Secrets Manager credentials
- VPC/security groups
- CloudWatch metrics/logs
- Backup/restore
- Lambda/ECS/EC2 app clients
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Aurora as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize databases capability across development, testing, and production accounts.
- Integrate Amazon Aurora with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Aurora
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Aurora Serverless
1. What is Amazon Aurora Serverless?
Auto-scaling Aurora capacity for variable workloads.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Schema / model | Decide relational, key-value, document, graph, time-series, or ledger style. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Scaling | Choose serverless, provisioned, replicas, shards, or clusters. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Backup | Use PITR, snapshots, and tested restore procedures. | Define retention, restore testing, compliance, and cost rules. |
| Access | Use IAM, VPC, secrets, rotation, and least privilege. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Aurora Serverless
- Choose database engine/model.
- Create subnet/security configuration.
- Create database/table/cluster.
- Enable encryption and backups.
- Store credentials in Secrets Manager.
- Test CRUD and failure behavior.
5. CLI / IaC starter
# Starter developer workflow for Amazon Aurora Serverless
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Aurora Serverless.
6. Developer code example
// SDK pattern for Amazon Aurora Serverless
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Aurora Serverless. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Aurora Serverless resources in target environment. |
| Execution/service role | rds.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "rds.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"rds:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- KMS encryption
- Secrets Manager credentials
- VPC/security groups
- CloudWatch metrics/logs
- Backup/restore
- Lambda/ECS/EC2 app clients
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Aurora Serverless as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize databases capability across development, testing, and production accounts.
- Integrate Amazon Aurora Serverless with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Aurora Serverless
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Aurora DSQL
1. What is Amazon Aurora DSQL?
Serverless distributed SQL database for always available applications.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Schema / model | Decide relational, key-value, document, graph, time-series, or ledger style. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Scaling | Choose serverless, provisioned, replicas, shards, or clusters. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Backup | Use PITR, snapshots, and tested restore procedures. | Define retention, restore testing, compliance, and cost rules. |
| Access | Use IAM, VPC, secrets, rotation, and least privilege. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Aurora DSQL
- Choose database engine/model.
- Create subnet/security configuration.
- Create database/table/cluster.
- Enable encryption and backups.
- Store credentials in Secrets Manager.
- Test CRUD and failure behavior.
5. CLI / IaC starter
# Starter developer workflow for Amazon Aurora DSQL
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Aurora DSQL.
6. Developer code example
// SDK pattern for Amazon Aurora DSQL
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Aurora DSQL. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Aurora DSQL resources in target environment. |
| Execution/service role | dsql.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "dsql.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"dsql:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- KMS encryption
- Secrets Manager credentials
- VPC/security groups
- CloudWatch metrics/logs
- Backup/restore
- Lambda/ECS/EC2 app clients
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Aurora DSQL as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize databases capability across development, testing, and production accounts.
- Integrate Amazon Aurora DSQL with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Aurora DSQL
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon DynamoDB
1. What is Amazon DynamoDB?
DynamoDB is a managed NoSQL key-value/document database designed for low-latency access at scale.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Keys | Access patterns depend on partition/sort keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Query vs Scan | Query uses keys and is efficient; scan reads broadly and is expensive. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Capacity | Use on-demand for variable traffic or provisioned/autoscaling for predictable traffic. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Streams | Trigger Lambda/EventBridge patterns from item changes. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon DynamoDB
- Create table with partition key.
- Add sort key if access pattern needs grouping.
- Add GSIs only for real query patterns.
- Enable PITR/backups/encryption.
- Create IAM role for app access.
- Test query, conditional write, pagination, and throttling.
5. CLI / IaC starter
# Starter CLI exploration for Amazon DynamoDB
aws --version
# Open the official docs for exact CLI commands and required parameters.
# Then create resources with IaC where possible instead of only console clicks.
6. Developer code example
// Developer SDK pattern for Amazon DynamoDB
// 1. Install the AWS SDK v3 client for the service.
// 2. Create a client with region.
// 3. Send command.
// 4. Catch throttling, validation, and access errors.
try {
// await client.send(new SomeCommand(params));
} catch (err) {
console.error(err.name, err.message);
throw err;
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon DynamoDB. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon DynamoDB resources in target environment. |
| Execution/service role | dynamodb.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "dynamodb.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"dynamodb:CreateTable",
"dynamodb:PutItem",
"dynamodb:GetItem",
"dynamodb:Query",
"dynamodb:UpdateItem",
"dynamodb:DeleteItem",
"dynamodb:DescribeTable"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- KMS encryption
- Secrets Manager credentials
- VPC/security groups
- CloudWatch metrics/logs
- Backup/restore
- Lambda/ECS/EC2 app clients
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Shopping cart/session/user profile store.
- High-scale order/event metadata table.
- Serverless app database with Lambda/API Gateway.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Skipping IAM/resource planning | Write role and policy before coding. |
| No monitoring | Add logs, metrics, alarms, and audit events. |
| Manual-only setup | Use IaC templates for repeatable environments. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon DynamoDB
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon ElastiCache
1. What is Amazon ElastiCache?
Managed Redis/Valkey and Memcached compatible caching.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Schema / model | Decide relational, key-value, document, graph, time-series, or ledger style. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Scaling | Choose serverless, provisioned, replicas, shards, or clusters. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Backup | Use PITR, snapshots, and tested restore procedures. | Define retention, restore testing, compliance, and cost rules. |
| Access | Use IAM, VPC, secrets, rotation, and least privilege. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon ElastiCache
- Choose database engine/model.
- Create subnet/security configuration.
- Create database/table/cluster.
- Enable encryption and backups.
- Store credentials in Secrets Manager.
- Test CRUD and failure behavior.
5. CLI / IaC starter
# Starter developer workflow for Amazon ElastiCache
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon ElastiCache.
6. Developer code example
// SDK pattern for Amazon ElastiCache
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon ElastiCache. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon ElastiCache resources in target environment. |
| Execution/service role | elasticache.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "elasticache.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"elasticache:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- KMS encryption
- Secrets Manager credentials
- VPC/security groups
- CloudWatch metrics/logs
- Backup/restore
- Lambda/ECS/EC2 app clients
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon ElastiCache as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize databases capability across development, testing, and production accounts.
- Integrate Amazon ElastiCache with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon ElastiCache
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon MemoryDB
1. What is Amazon MemoryDB?
Durable Redis-compatible in-memory database.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Schema / model | Decide relational, key-value, document, graph, time-series, or ledger style. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Scaling | Choose serverless, provisioned, replicas, shards, or clusters. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Backup | Use PITR, snapshots, and tested restore procedures. | Define retention, restore testing, compliance, and cost rules. |
| Access | Use IAM, VPC, secrets, rotation, and least privilege. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon MemoryDB
- Choose database engine/model.
- Create subnet/security configuration.
- Create database/table/cluster.
- Enable encryption and backups.
- Store credentials in Secrets Manager.
- Test CRUD and failure behavior.
5. CLI / IaC starter
# Starter developer workflow for Amazon MemoryDB
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon MemoryDB.
6. Developer code example
// SDK pattern for Amazon MemoryDB
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon MemoryDB. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon MemoryDB resources in target environment. |
| Execution/service role | memorydb.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "memorydb.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"memorydb:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- KMS encryption
- Secrets Manager credentials
- VPC/security groups
- CloudWatch metrics/logs
- Backup/restore
- Lambda/ECS/EC2 app clients
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon MemoryDB as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize databases capability across development, testing, and production accounts.
- Integrate Amazon MemoryDB with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon MemoryDB
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Neptune
1. What is Amazon Neptune?
Managed graph database for highly connected data.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Schema / model | Decide relational, key-value, document, graph, time-series, or ledger style. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Scaling | Choose serverless, provisioned, replicas, shards, or clusters. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Backup | Use PITR, snapshots, and tested restore procedures. | Define retention, restore testing, compliance, and cost rules. |
| Access | Use IAM, VPC, secrets, rotation, and least privilege. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Neptune
- Choose database engine/model.
- Create subnet/security configuration.
- Create database/table/cluster.
- Enable encryption and backups.
- Store credentials in Secrets Manager.
- Test CRUD and failure behavior.
5. CLI / IaC starter
# Starter developer workflow for Amazon Neptune
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Neptune.
6. Developer code example
// SDK pattern for Amazon Neptune
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Neptune. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Neptune resources in target environment. |
| Execution/service role | neptune-db.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "neptune-db.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"neptune-db:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- KMS encryption
- Secrets Manager credentials
- VPC/security groups
- CloudWatch metrics/logs
- Backup/restore
- Lambda/ECS/EC2 app clients
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Neptune as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize databases capability across development, testing, and production accounts.
- Integrate Amazon Neptune with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Neptune
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon DocumentDB
1. What is Amazon DocumentDB?
Managed document database with MongoDB compatibility.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Schema / model | Decide relational, key-value, document, graph, time-series, or ledger style. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Scaling | Choose serverless, provisioned, replicas, shards, or clusters. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Backup | Use PITR, snapshots, and tested restore procedures. | Define retention, restore testing, compliance, and cost rules. |
| Access | Use IAM, VPC, secrets, rotation, and least privilege. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon DocumentDB
- Choose database engine/model.
- Create subnet/security configuration.
- Create database/table/cluster.
- Enable encryption and backups.
- Store credentials in Secrets Manager.
- Test CRUD and failure behavior.
5. CLI / IaC starter
# Starter developer workflow for Amazon DocumentDB
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon DocumentDB.
6. Developer code example
// SDK pattern for Amazon DocumentDB
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon DocumentDB. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon DocumentDB resources in target environment. |
| Execution/service role | docdb.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "docdb.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"docdb:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- KMS encryption
- Secrets Manager credentials
- VPC/security groups
- CloudWatch metrics/logs
- Backup/restore
- Lambda/ECS/EC2 app clients
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon DocumentDB as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize databases capability across development, testing, and production accounts.
- Integrate Amazon DocumentDB with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon DocumentDB
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Keyspaces
1. What is Amazon Keyspaces?
Managed Apache Cassandra-compatible database.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Schema / model | Decide relational, key-value, document, graph, time-series, or ledger style. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Scaling | Choose serverless, provisioned, replicas, shards, or clusters. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Backup | Use PITR, snapshots, and tested restore procedures. | Define retention, restore testing, compliance, and cost rules. |
| Access | Use IAM, VPC, secrets, rotation, and least privilege. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Keyspaces
- Choose database engine/model.
- Create subnet/security configuration.
- Create database/table/cluster.
- Enable encryption and backups.
- Store credentials in Secrets Manager.
- Test CRUD and failure behavior.
5. CLI / IaC starter
# Starter developer workflow for Amazon Keyspaces
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Keyspaces.
6. Developer code example
// SDK pattern for Amazon Keyspaces
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Keyspaces. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Keyspaces resources in target environment. |
| Execution/service role | cassandra.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "cassandra.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"cassandra:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- KMS encryption
- Secrets Manager credentials
- VPC/security groups
- CloudWatch metrics/logs
- Backup/restore
- Lambda/ECS/EC2 app clients
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Keyspaces as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize databases capability across development, testing, and production accounts.
- Integrate Amazon Keyspaces with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Keyspaces
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Timestream
1. What is Amazon Timestream?
Serverless time-series database.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Schema / model | Decide relational, key-value, document, graph, time-series, or ledger style. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Scaling | Choose serverless, provisioned, replicas, shards, or clusters. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Backup | Use PITR, snapshots, and tested restore procedures. | Define retention, restore testing, compliance, and cost rules. |
| Access | Use IAM, VPC, secrets, rotation, and least privilege. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Timestream
- Choose database engine/model.
- Create subnet/security configuration.
- Create database/table/cluster.
- Enable encryption and backups.
- Store credentials in Secrets Manager.
- Test CRUD and failure behavior.
5. CLI / IaC starter
# Starter developer workflow for Amazon Timestream
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Timestream.
6. Developer code example
// SDK pattern for Amazon Timestream
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Timestream. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Timestream resources in target environment. |
| Execution/service role | timestream.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "timestream.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"timestream:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- KMS encryption
- Secrets Manager credentials
- VPC/security groups
- CloudWatch metrics/logs
- Backup/restore
- Lambda/ECS/EC2 app clients
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Timestream as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize databases capability across development, testing, and production accounts.
- Integrate Amazon Timestream with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Timestream
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Redshift
1. What is Amazon Redshift?
Cloud data warehouse and analytics database.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Schema / model | Decide relational, key-value, document, graph, time-series, or ledger style. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Scaling | Choose serverless, provisioned, replicas, shards, or clusters. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Backup | Use PITR, snapshots, and tested restore procedures. | Define retention, restore testing, compliance, and cost rules. |
| Access | Use IAM, VPC, secrets, rotation, and least privilege. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Redshift
- Choose database engine/model.
- Create subnet/security configuration.
- Create database/table/cluster.
- Enable encryption and backups.
- Store credentials in Secrets Manager.
- Test CRUD and failure behavior.
5. CLI / IaC starter
# Starter developer workflow for Amazon Redshift
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Redshift.
6. Developer code example
// SDK pattern for Amazon Redshift
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Redshift. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Redshift resources in target environment. |
| Execution/service role | redshift.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "redshift.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"redshift:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- KMS encryption
- Secrets Manager credentials
- VPC/security groups
- CloudWatch metrics/logs
- Backup/restore
- Lambda/ECS/EC2 app clients
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Redshift as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize databases capability across development, testing, and production accounts.
- Integrate Amazon Redshift with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Redshift
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon QLDB
1. What is Amazon QLDB?
Immutable cryptographically verifiable ledger database.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Schema / model | Decide relational, key-value, document, graph, time-series, or ledger style. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Scaling | Choose serverless, provisioned, replicas, shards, or clusters. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Backup | Use PITR, snapshots, and tested restore procedures. | Define retention, restore testing, compliance, and cost rules. |
| Access | Use IAM, VPC, secrets, rotation, and least privilege. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon QLDB
- Choose database engine/model.
- Create subnet/security configuration.
- Create database/table/cluster.
- Enable encryption and backups.
- Store credentials in Secrets Manager.
- Test CRUD and failure behavior.
5. CLI / IaC starter
# Starter developer workflow for Amazon QLDB
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon QLDB.
6. Developer code example
// SDK pattern for Amazon QLDB
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon QLDB. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon QLDB resources in target environment. |
| Execution/service role | qldb.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "qldb.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"qldb:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- KMS encryption
- Secrets Manager credentials
- VPC/security groups
- CloudWatch metrics/logs
- Backup/restore
- Lambda/ECS/EC2 app clients
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon QLDB as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize databases capability across development, testing, and production accounts.
- Integrate Amazon QLDB with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon QLDB
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Database Migration Service (DMS)
1. What is AWS Database Migration Service (DMS)?
Database migration, replication, and change data capture.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Protects data at rest/in transit. Decide AWS-managed vs customer-managed keys and key policies.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Schema / model | Decide relational, key-value, document, graph, time-series, or ledger style. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Scaling | Choose serverless, provisioned, replicas, shards, or clusters. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Backup | Use PITR, snapshots, and tested restore procedures. | Define retention, restore testing, compliance, and cost rules. |
| Access | Use IAM, VPC, secrets, rotation, and least privilege. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Database Migration Service (DMS)
- Choose database engine/model.
- Create subnet/security configuration.
- Create database/table/cluster.
- Enable encryption and backups.
- Store credentials in Secrets Manager.
- Test CRUD and failure behavior.
5. CLI / IaC starter
# Starter developer workflow for AWS Database Migration Service (DMS)
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Database Migration Service (DMS).
6. Developer code example
// SDK pattern for AWS Database Migration Service (DMS)
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Database Migration Service (DMS). |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Database Migration Service (DMS) resources in target environment. |
| Execution/service role | dms.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "dms.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"dms:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- KMS encryption
- Secrets Manager credentials
- VPC/security groups
- CloudWatch metrics/logs
- Backup/restore
- Lambda/ECS/EC2 app clients
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Database Migration Service (DMS) as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize databases capability across development, testing, and production accounts.
- Integrate AWS Database Migration Service (DMS) with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Database Migration Service (DMS)
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon VPC
1. What is Amazon VPC?
VPC is your isolated network boundary in AWS where you define IP ranges, subnets, routing, gateways, and private connectivity.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls connectivity, isolation, ingress, egress, and private access paths.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls connectivity, isolation, ingress, egress, and private access paths.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
Controls connectivity, isolation, ingress, egress, and private access paths.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Subnets | Public subnets route to IGW; private subnets do not. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Security groups | Stateful instance/service firewall. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| NACLs | Stateless subnet firewall. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Endpoints | Private access to AWS services without public internet. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Flow logs | Network traffic audit/troubleshooting. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon VPC
- Choose CIDR carefully.
- Create public/private subnets across AZs.
- Attach internet gateway for public resources.
- Add NAT gateway/endpoints for private egress.
- Create route tables.
- Enable flow logs.
5. CLI / IaC starter
# Starter CLI exploration for Amazon VPC
aws --version
# Open the official docs for exact CLI commands and required parameters.
# Then create resources with IaC where possible instead of only console clicks.
6. Developer code example
// Developer SDK pattern for Amazon VPC
// 1. Install the AWS SDK v3 client for the service.
// 2. Create a client with region.
// 3. Send command.
// 4. Catch throttling, validation, and access errors.
try {
// await client.send(new SomeCommand(params));
} catch (err) {
console.error(err.name, err.message);
throw err;
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon VPC. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon VPC resources in target environment. |
| Execution/service role | ec2.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ec2.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"ec2:CreateVpc",
"ec2:CreateSubnet",
"ec2:CreateRouteTable",
"ec2:CreateSecurityGroup",
"ec2:CreateNatGateway",
"ec2:CreateVpcEndpoint"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- VPC resources
- Route 53 DNS
- ACM certificates
- WAF/Shield
- CloudWatch logs/metrics
- PrivateLink/endpoints
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Secure 3-tier web app network.
- Private serverless/database architecture.
- Hybrid connectivity hub with VPN/Direct Connect/TGW.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Skipping IAM/resource planning | Write role and policy before coding. |
| No monitoring | Add logs, metrics, alarms, and audit events. |
| Manual-only setup | Use IaC templates for repeatable environments. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon VPC
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Route 53
1. What is Amazon Route 53?
Managed DNS, domain registration, health checks, and routing policies.
2. Concepts you must know
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls connectivity, isolation, ingress, egress, and private access paths.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Connectivity | Control how users, services, and VPCs communicate. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Security boundary | Use security groups, NACLs, private endpoints, WAF, and TLS. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Performance | Use edge locations, caching, routing policy, and low-latency paths. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Observability | Log DNS, CDN, VPC flow, and load balancer activity. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Route 53
- Create the network/distribution/resource.
- Define public/private access.
- Attach TLS/DNS if applicable.
- Enable logs and metrics.
- Test connectivity from each client type.
- Document firewall/routing rules.
5. CLI / IaC starter
# Starter developer workflow for Amazon Route 53
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Route 53.
6. Developer code example
// SDK pattern for Amazon Route 53
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Route 53. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Route 53 resources in target environment. |
| Execution/service role | route53.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "route53.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"route53:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- VPC resources
- Route 53 DNS
- ACM certificates
- WAF/Shield
- CloudWatch logs/metrics
- PrivateLink/endpoints
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Route 53 as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize networking & content delivery capability across development, testing, and production accounts.
- Integrate Amazon Route 53 with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Route 53
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon CloudFront
1. What is Amazon CloudFront?
CloudFront is AWS CDN that caches and delivers content through global edge locations.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Origins | S3, ALB, API Gateway, custom HTTP origins. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Caching | Control TTL, cache keys, query strings, cookies, and headers. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Security | Use HTTPS, WAF, OAC for private S3, signed URLs. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Invalidation | Remove stale content from edge caches. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon CloudFront
- Create distribution.
- Add origin.
- Set cache behavior and HTTPS policy.
- Attach certificate/custom domain if needed.
- Restrict S3 origin with OAC.
- Enable logs/WAF and test cache headers.
5. CLI / IaC starter
# Starter CLI exploration for Amazon CloudFront
aws --version
# Open the official docs for exact CLI commands and required parameters.
# Then create resources with IaC where possible instead of only console clicks.
6. Developer code example
// Developer SDK pattern for Amazon CloudFront
// 1. Install the AWS SDK v3 client for the service.
// 2. Create a client with region.
// 3. Send command.
// 4. Catch throttling, validation, and access errors.
try {
// await client.send(new SomeCommand(params));
} catch (err) {
console.error(err.name, err.message);
throw err;
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon CloudFront. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon CloudFront resources in target environment. |
| Execution/service role | cloudfront.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "cloudfront.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"cloudfront:CreateDistribution",
"cloudfront:GetDistribution",
"cloudfront:UpdateDistribution",
"cloudfront:CreateInvalidation"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- VPC resources
- Route 53 DNS
- ACM certificates
- WAF/Shield
- CloudWatch logs/metrics
- PrivateLink/endpoints
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Serve static site assets globally.
- Accelerate API/downloads.
- Protect web apps with WAF at edge.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Skipping IAM/resource planning | Write role and policy before coding. |
| No monitoring | Add logs, metrics, alarms, and audit events. |
| Manual-only setup | Use IaC templates for repeatable environments. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon CloudFront
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon API Gateway
1. What is Amazon API Gateway?
API Gateway creates REST, HTTP, and WebSocket APIs in front of Lambda, HTTP services, or AWS integrations.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| API types | HTTP API is simpler/lower cost; REST API has advanced features; WebSocket supports bidirectional clients. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Integrations | Connect to Lambda, HTTP endpoint, VPC Link, or AWS service. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Auth | Use IAM, Cognito, Lambda authorizer, JWT authorizer, or custom app auth. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Stages | Deploy versions to dev/test/prod stages with logging/throttling. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon API Gateway
- Create API type.
- Create routes/methods.
- Attach integration.
- Configure authorizer/CORS/throttling/logging.
- Deploy stage.
- Test with curl/Postman and CloudWatch logs.
5. CLI / IaC starter
# Starter CLI exploration for Amazon API Gateway
aws --version
# Open the official docs for exact CLI commands and required parameters.
# Then create resources with IaC where possible instead of only console clicks.
6. Developer code example
// Developer SDK pattern for Amazon API Gateway
// 1. Install the AWS SDK v3 client for the service.
// 2. Create a client with region.
// 3. Send command.
// 4. Catch throttling, validation, and access errors.
try {
// await client.send(new SomeCommand(params));
} catch (err) {
console.error(err.name, err.message);
throw err;
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon API Gateway. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon API Gateway resources in target environment. |
| Execution/service role | apigateway.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "apigateway.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"apigateway:GET",
"apigateway:POST",
"apigateway:PATCH",
"apigateway:DELETE",
"execute-api:Invoke"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- VPC resources
- Route 53 DNS
- ACM certificates
- WAF/Shield
- CloudWatch logs/metrics
- PrivateLink/endpoints
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Public serverless REST API.
- Internal microservice gateway.
- Real-time WebSocket chat/notification API.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Skipping IAM/resource planning | Write role and policy before coding. |
| No monitoring | Add logs, metrics, alarms, and audit events. |
| Manual-only setup | Use IaC templates for repeatable environments. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon API Gateway
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Direct Connect
1. What is AWS Direct Connect?
Dedicated private connectivity from on-premises to AWS.
2. Concepts you must know
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls connectivity, isolation, ingress, egress, and private access paths.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Connectivity | Control how users, services, and VPCs communicate. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Security boundary | Use security groups, NACLs, private endpoints, WAF, and TLS. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Performance | Use edge locations, caching, routing policy, and low-latency paths. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Observability | Log DNS, CDN, VPC flow, and load balancer activity. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Direct Connect
- Create the network/distribution/resource.
- Define public/private access.
- Attach TLS/DNS if applicable.
- Enable logs and metrics.
- Test connectivity from each client type.
- Document firewall/routing rules.
5. CLI / IaC starter
# Starter developer workflow for AWS Direct Connect
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Direct Connect.
6. Developer code example
// SDK pattern for AWS Direct Connect
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Direct Connect. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Direct Connect resources in target environment. |
| Execution/service role | directconnect.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "directconnect.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"directconnect:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- VPC resources
- Route 53 DNS
- ACM certificates
- WAF/Shield
- CloudWatch logs/metrics
- PrivateLink/endpoints
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Direct Connect as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize networking & content delivery capability across development, testing, and production accounts.
- Integrate AWS Direct Connect with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Direct Connect
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Site-to-Site VPN
1. What is AWS Site-to-Site VPN?
IPsec VPN between VPC and customer network.
2. Concepts you must know
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls connectivity, isolation, ingress, egress, and private access paths.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Connectivity | Control how users, services, and VPCs communicate. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Security boundary | Use security groups, NACLs, private endpoints, WAF, and TLS. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Performance | Use edge locations, caching, routing policy, and low-latency paths. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Observability | Log DNS, CDN, VPC flow, and load balancer activity. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Site-to-Site VPN
- Create the network/distribution/resource.
- Define public/private access.
- Attach TLS/DNS if applicable.
- Enable logs and metrics.
- Test connectivity from each client type.
- Document firewall/routing rules.
5. CLI / IaC starter
# Starter developer workflow for AWS Site-to-Site VPN
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Site-to-Site VPN.
6. Developer code example
// SDK pattern for AWS Site-to-Site VPN
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Site-to-Site VPN. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Site-to-Site VPN resources in target environment. |
| Execution/service role | ec2.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ec2.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"ec2:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- VPC resources
- Route 53 DNS
- ACM certificates
- WAF/Shield
- CloudWatch logs/metrics
- PrivateLink/endpoints
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Site-to-Site VPN as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize networking & content delivery capability across development, testing, and production accounts.
- Integrate AWS Site-to-Site VPN with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Site-to-Site VPN
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Client VPN
1. What is AWS Client VPN?
Managed VPN access for remote users.
2. Concepts you must know
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls connectivity, isolation, ingress, egress, and private access paths.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Connectivity | Control how users, services, and VPCs communicate. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Security boundary | Use security groups, NACLs, private endpoints, WAF, and TLS. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Performance | Use edge locations, caching, routing policy, and low-latency paths. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Observability | Log DNS, CDN, VPC flow, and load balancer activity. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Client VPN
- Create the network/distribution/resource.
- Define public/private access.
- Attach TLS/DNS if applicable.
- Enable logs and metrics.
- Test connectivity from each client type.
- Document firewall/routing rules.
5. CLI / IaC starter
# Starter developer workflow for AWS Client VPN
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Client VPN.
6. Developer code example
// SDK pattern for AWS Client VPN
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Client VPN. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Client VPN resources in target environment. |
| Execution/service role | ec2.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ec2.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"ec2:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- VPC resources
- Route 53 DNS
- ACM certificates
- WAF/Shield
- CloudWatch logs/metrics
- PrivateLink/endpoints
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Client VPN as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize networking & content delivery capability across development, testing, and production accounts.
- Integrate AWS Client VPN with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Client VPN
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Transit Gateway
1. What is AWS Transit Gateway?
Network transit hub for VPCs and on-premises networks.
2. Concepts you must know
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls connectivity, isolation, ingress, egress, and private access paths.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Connectivity | Control how users, services, and VPCs communicate. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Security boundary | Use security groups, NACLs, private endpoints, WAF, and TLS. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Performance | Use edge locations, caching, routing policy, and low-latency paths. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Observability | Log DNS, CDN, VPC flow, and load balancer activity. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Transit Gateway
- Create the network/distribution/resource.
- Define public/private access.
- Attach TLS/DNS if applicable.
- Enable logs and metrics.
- Test connectivity from each client type.
- Document firewall/routing rules.
5. CLI / IaC starter
# Starter developer workflow for AWS Transit Gateway
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Transit Gateway.
6. Developer code example
// SDK pattern for AWS Transit Gateway
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Transit Gateway. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Transit Gateway resources in target environment. |
| Execution/service role | ec2.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ec2.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"ec2:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- VPC resources
- Route 53 DNS
- ACM certificates
- WAF/Shield
- CloudWatch logs/metrics
- PrivateLink/endpoints
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Transit Gateway as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize networking & content delivery capability across development, testing, and production accounts.
- Integrate AWS Transit Gateway with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Transit Gateway
AWS DocsUse these official AWS links while studying or implementing this service.
AWS PrivateLink
1. What is AWS PrivateLink?
Private service access through VPC interface endpoints.
2. Concepts you must know
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls connectivity, isolation, ingress, egress, and private access paths.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Connectivity | Control how users, services, and VPCs communicate. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Security boundary | Use security groups, NACLs, private endpoints, WAF, and TLS. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Performance | Use edge locations, caching, routing policy, and low-latency paths. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Observability | Log DNS, CDN, VPC flow, and load balancer activity. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS PrivateLink
- Create the network/distribution/resource.
- Define public/private access.
- Attach TLS/DNS if applicable.
- Enable logs and metrics.
- Test connectivity from each client type.
- Document firewall/routing rules.
5. CLI / IaC starter
# Starter developer workflow for AWS PrivateLink
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS PrivateLink.
6. Developer code example
// SDK pattern for AWS PrivateLink
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS PrivateLink. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS PrivateLink resources in target environment. |
| Execution/service role | ec2.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ec2.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"ec2:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- VPC resources
- Route 53 DNS
- ACM certificates
- WAF/Shield
- CloudWatch logs/metrics
- PrivateLink/endpoints
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS PrivateLink as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize networking & content delivery capability across development, testing, and production accounts.
- Integrate AWS PrivateLink with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS PrivateLink
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Global Accelerator
1. What is AWS Global Accelerator?
Anycast static IPs and global traffic acceleration.
2. Concepts you must know
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls connectivity, isolation, ingress, egress, and private access paths.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Connectivity | Control how users, services, and VPCs communicate. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Security boundary | Use security groups, NACLs, private endpoints, WAF, and TLS. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Performance | Use edge locations, caching, routing policy, and low-latency paths. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Observability | Log DNS, CDN, VPC flow, and load balancer activity. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Global Accelerator
- Create the network/distribution/resource.
- Define public/private access.
- Attach TLS/DNS if applicable.
- Enable logs and metrics.
- Test connectivity from each client type.
- Document firewall/routing rules.
5. CLI / IaC starter
# Starter developer workflow for AWS Global Accelerator
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Global Accelerator.
6. Developer code example
// SDK pattern for AWS Global Accelerator
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Global Accelerator. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Global Accelerator resources in target environment. |
| Execution/service role | globalaccelerator.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "globalaccelerator.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"globalaccelerator:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- VPC resources
- Route 53 DNS
- ACM certificates
- WAF/Shield
- CloudWatch logs/metrics
- PrivateLink/endpoints
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Global Accelerator as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize networking & content delivery capability across development, testing, and production accounts.
- Integrate AWS Global Accelerator with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Global Accelerator
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Cloud Map
1. What is AWS Cloud Map?
Service discovery for cloud resources and microservices.
2. Concepts you must know
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls connectivity, isolation, ingress, egress, and private access paths.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Connectivity | Control how users, services, and VPCs communicate. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Security boundary | Use security groups, NACLs, private endpoints, WAF, and TLS. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Performance | Use edge locations, caching, routing policy, and low-latency paths. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Observability | Log DNS, CDN, VPC flow, and load balancer activity. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Cloud Map
- Create the network/distribution/resource.
- Define public/private access.
- Attach TLS/DNS if applicable.
- Enable logs and metrics.
- Test connectivity from each client type.
- Document firewall/routing rules.
5. CLI / IaC starter
# Starter developer workflow for AWS Cloud Map
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Cloud Map.
6. Developer code example
// SDK pattern for AWS Cloud Map
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Cloud Map. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Cloud Map resources in target environment. |
| Execution/service role | servicediscovery.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "servicediscovery.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"servicediscovery:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- VPC resources
- Route 53 DNS
- ACM certificates
- WAF/Shield
- CloudWatch logs/metrics
- PrivateLink/endpoints
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Cloud Map as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize networking & content delivery capability across development, testing, and production accounts.
- Integrate AWS Cloud Map with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Cloud Map
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon VPC Lattice
1. What is Amazon VPC Lattice?
Service-to-service networking, auth, routing, and observability.
2. Concepts you must know
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls connectivity, isolation, ingress, egress, and private access paths.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Connectivity | Control how users, services, and VPCs communicate. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Security boundary | Use security groups, NACLs, private endpoints, WAF, and TLS. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Performance | Use edge locations, caching, routing policy, and low-latency paths. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Observability | Log DNS, CDN, VPC flow, and load balancer activity. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon VPC Lattice
- Create the network/distribution/resource.
- Define public/private access.
- Attach TLS/DNS if applicable.
- Enable logs and metrics.
- Test connectivity from each client type.
- Document firewall/routing rules.
5. CLI / IaC starter
# Starter developer workflow for Amazon VPC Lattice
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon VPC Lattice.
6. Developer code example
// SDK pattern for Amazon VPC Lattice
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon VPC Lattice. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon VPC Lattice resources in target environment. |
| Execution/service role | vpc-lattice.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "vpc-lattice.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"vpc-lattice:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- VPC resources
- Route 53 DNS
- ACM certificates
- WAF/Shield
- CloudWatch logs/metrics
- PrivateLink/endpoints
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon VPC Lattice as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize networking & content delivery capability across development, testing, and production accounts.
- Integrate Amazon VPC Lattice with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon VPC Lattice
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Network Manager
1. What is AWS Network Manager?
Global network monitoring and management.
2. Concepts you must know
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls connectivity, isolation, ingress, egress, and private access paths.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Connectivity | Control how users, services, and VPCs communicate. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Security boundary | Use security groups, NACLs, private endpoints, WAF, and TLS. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Performance | Use edge locations, caching, routing policy, and low-latency paths. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Observability | Log DNS, CDN, VPC flow, and load balancer activity. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Network Manager
- Create the network/distribution/resource.
- Define public/private access.
- Attach TLS/DNS if applicable.
- Enable logs and metrics.
- Test connectivity from each client type.
- Document firewall/routing rules.
5. CLI / IaC starter
# Starter developer workflow for AWS Network Manager
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Network Manager.
6. Developer code example
// SDK pattern for AWS Network Manager
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Network Manager. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Network Manager resources in target environment. |
| Execution/service role | networkmanager.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "networkmanager.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"networkmanager:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- VPC resources
- Route 53 DNS
- ACM certificates
- WAF/Shield
- CloudWatch logs/metrics
- PrivateLink/endpoints
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Network Manager as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize networking & content delivery capability across development, testing, and production accounts.
- Integrate AWS Network Manager with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Network Manager
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon SQS
1. What is Amazon SQS?
Managed message queues for decoupling producers and consumers.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon SQS
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon SQS
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon SQS.
6. Developer code example
// SDK pattern for Amazon SQS
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon SQS. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon SQS resources in target environment. |
| Execution/service role | sqs.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "sqs.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"sqs:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- Lambda consumers/producers
- EventBridge routing
- SQS DLQ
- SNS fan-out
- CloudWatch metrics
- IAM resource policies where supported
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon SQS as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize application integration & messaging capability across development, testing, and production accounts.
- Integrate Amazon SQS with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon SQS
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon SNS
1. What is Amazon SNS?
Pub/sub messaging and notifications.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon SNS
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon SNS
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon SNS.
6. Developer code example
// SDK pattern for Amazon SNS
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon SNS. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon SNS resources in target environment. |
| Execution/service role | sns.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "sns.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"sns:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- Lambda consumers/producers
- EventBridge routing
- SQS DLQ
- SNS fan-out
- CloudWatch metrics
- IAM resource policies where supported
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon SNS as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize application integration & messaging capability across development, testing, and production accounts.
- Integrate Amazon SNS with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon SNS
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon EventBridge
1. What is Amazon EventBridge?
Event bus, rules, scheduler, and SaaS/AWS event routing.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon EventBridge
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon EventBridge
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon EventBridge.
6. Developer code example
// SDK pattern for Amazon EventBridge
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon EventBridge. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon EventBridge resources in target environment. |
| Execution/service role | events.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "events.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"events:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- Lambda consumers/producers
- EventBridge routing
- SQS DLQ
- SNS fan-out
- CloudWatch metrics
- IAM resource policies where supported
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon EventBridge as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize application integration & messaging capability across development, testing, and production accounts.
- Integrate Amazon EventBridge with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon EventBridge
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Step Functions
1. What is AWS Step Functions?
Workflow orchestration for serverless and distributed systems.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Step Functions
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Step Functions
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Step Functions.
6. Developer code example
// SDK pattern for AWS Step Functions
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Step Functions. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Step Functions resources in target environment. |
| Execution/service role | states.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "states.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"states:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- Lambda consumers/producers
- EventBridge routing
- SQS DLQ
- SNS fan-out
- CloudWatch metrics
- IAM resource policies where supported
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Step Functions as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize application integration & messaging capability across development, testing, and production accounts.
- Integrate AWS Step Functions with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Step Functions
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon MQ
1. What is Amazon MQ?
Managed ActiveMQ and RabbitMQ brokers.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon MQ
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon MQ
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon MQ.
6. Developer code example
// SDK pattern for Amazon MQ
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon MQ. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon MQ resources in target environment. |
| Execution/service role | mq.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "mq.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"mq:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- Lambda consumers/producers
- EventBridge routing
- SQS DLQ
- SNS fan-out
- CloudWatch metrics
- IAM resource policies where supported
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon MQ as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize application integration & messaging capability across development, testing, and production accounts.
- Integrate Amazon MQ with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon MQ
AWS DocsUse these official AWS links while studying or implementing this service.
AWS AppSync
1. What is AWS AppSync?
Managed GraphQL APIs with real-time subscriptions.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS AppSync
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS AppSync
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS AppSync.
6. Developer code example
// SDK pattern for AWS AppSync
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS AppSync. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS AppSync resources in target environment. |
| Execution/service role | appsync.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "appsync.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"appsync:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- Lambda consumers/producers
- EventBridge routing
- SQS DLQ
- SNS fan-out
- CloudWatch metrics
- IAM resource policies where supported
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS AppSync as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize application integration & messaging capability across development, testing, and production accounts.
- Integrate AWS AppSync with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS AppSync
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon AppFlow
1. What is Amazon AppFlow?
No-code/low-code SaaS data integration flows.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon AppFlow
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon AppFlow
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon AppFlow.
6. Developer code example
// SDK pattern for Amazon AppFlow
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon AppFlow. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon AppFlow resources in target environment. |
| Execution/service role | appflow.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "appflow.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"appflow:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- Lambda consumers/producers
- EventBridge routing
- SQS DLQ
- SNS fan-out
- CloudWatch metrics
- IAM resource policies where supported
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon AppFlow as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize application integration & messaging capability across development, testing, and production accounts.
- Integrate Amazon AppFlow with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon AppFlow
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Simple Workflow Service (SWF)
1. What is Amazon Simple Workflow Service (SWF)?
Legacy workflow coordination service.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Simple Workflow Service (SWF)
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Simple Workflow Service (SWF)
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Simple Workflow Service (SWF).
6. Developer code example
// SDK pattern for Amazon Simple Workflow Service (SWF)
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Simple Workflow Service (SWF). |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Simple Workflow Service (SWF) resources in target environment. |
| Execution/service role | swf.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "swf.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"swf:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- Lambda consumers/producers
- EventBridge routing
- SQS DLQ
- SNS fan-out
- CloudWatch metrics
- IAM resource policies where supported
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Simple Workflow Service (SWF) as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize application integration & messaging capability across development, testing, and production accounts.
- Integrate Amazon Simple Workflow Service (SWF) with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Simple Workflow Service (SWF)
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon SES
1. What is Amazon SES?
Email sending and receiving service.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon SES
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon SES
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon SES.
6. Developer code example
// SDK pattern for Amazon SES
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon SES. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon SES resources in target environment. |
| Execution/service role | ses.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ses.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"ses:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- Lambda consumers/producers
- EventBridge routing
- SQS DLQ
- SNS fan-out
- CloudWatch metrics
- IAM resource policies where supported
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon SES as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize application integration & messaging capability across development, testing, and production accounts.
- Integrate Amazon SES with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon SES
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Pinpoint
1. What is Amazon Pinpoint?
Customer engagement campaigns across channels.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Pinpoint
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Pinpoint
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Pinpoint.
6. Developer code example
// SDK pattern for Amazon Pinpoint
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Pinpoint. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Pinpoint resources in target environment. |
| Execution/service role | mobiletargeting.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "mobiletargeting.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"mobiletargeting:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- Lambda consumers/producers
- EventBridge routing
- SQS DLQ
- SNS fan-out
- CloudWatch metrics
- IAM resource policies where supported
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Pinpoint as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize application integration & messaging capability across development, testing, and production accounts.
- Integrate Amazon Pinpoint with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Pinpoint
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Managed Workflows for Apache Airflow (MWAA)
1. What is Amazon Managed Workflows for Apache Airflow (MWAA)?
Managed Apache Airflow orchestration.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Managed Workflows for Apache Airflow (MWAA)
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Managed Workflows for Apache Airflow (MWAA)
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Managed Workflows for Apache Airflow (MWAA).
6. Developer code example
// SDK pattern for Amazon Managed Workflows for Apache Airflow (MWAA)
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Managed Workflows for Apache Airflow (MWAA). |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Managed Workflows for Apache Airflow (MWAA) resources in target environment. |
| Execution/service role | airflow.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "airflow.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"airflow:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- Lambda consumers/producers
- EventBridge routing
- SQS DLQ
- SNS fan-out
- CloudWatch metrics
- IAM resource policies where supported
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Managed Workflows for Apache Airflow (MWAA) as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize application integration & messaging capability across development, testing, and production accounts.
- Integrate Amazon Managed Workflows for Apache Airflow (MWAA) with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Managed Workflows for Apache Airflow (MWAA)
AWS DocsUse these official AWS links while studying or implementing this service.
AWS CodeCommit
1. What is AWS CodeCommit?
Managed Git repositories for source control.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS CodeCommit
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS CodeCommit
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS CodeCommit.
6. Developer code example
// SDK pattern for AWS CodeCommit
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS CodeCommit. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS CodeCommit resources in target environment. |
| Execution/service role | codecommit.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "codecommit.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"codecommit:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS CodeCommit as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize developer tools & devops capability across development, testing, and production accounts.
- Integrate AWS CodeCommit with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS CodeCommit
AWS DocsUse these official AWS links while studying or implementing this service.
AWS CodeBuild
1. What is AWS CodeBuild?
Managed build service for compiling, testing, and packaging code.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS CodeBuild
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS CodeBuild
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS CodeBuild.
6. Developer code example
// SDK pattern for AWS CodeBuild
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS CodeBuild. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS CodeBuild resources in target environment. |
| Execution/service role | codebuild.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "codebuild.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"codebuild:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS CodeBuild as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize developer tools & devops capability across development, testing, and production accounts.
- Integrate AWS CodeBuild with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS CodeBuild
AWS DocsUse these official AWS links while studying or implementing this service.
AWS CodeDeploy
1. What is AWS CodeDeploy?
Automated deployments to EC2, Lambda, ECS, and on-premises.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS CodeDeploy
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS CodeDeploy
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS CodeDeploy.
6. Developer code example
// SDK pattern for AWS CodeDeploy
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS CodeDeploy. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS CodeDeploy resources in target environment. |
| Execution/service role | codedeploy.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "codedeploy.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"codedeploy:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS CodeDeploy as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize developer tools & devops capability across development, testing, and production accounts.
- Integrate AWS CodeDeploy with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS CodeDeploy
AWS DocsUse these official AWS links while studying or implementing this service.
AWS CodePipeline
1. What is AWS CodePipeline?
Continuous delivery pipeline orchestration.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS CodePipeline
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS CodePipeline
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS CodePipeline.
6. Developer code example
// SDK pattern for AWS CodePipeline
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS CodePipeline. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS CodePipeline resources in target environment. |
| Execution/service role | codepipeline.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "codepipeline.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"codepipeline:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS CodePipeline as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize developer tools & devops capability across development, testing, and production accounts.
- Integrate AWS CodePipeline with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS CodePipeline
AWS DocsUse these official AWS links while studying or implementing this service.
AWS CodeArtifact
1. What is AWS CodeArtifact?
Managed package artifact repository.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS CodeArtifact
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS CodeArtifact
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS CodeArtifact.
6. Developer code example
// SDK pattern for AWS CodeArtifact
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS CodeArtifact. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS CodeArtifact resources in target environment. |
| Execution/service role | codeartifact.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "codeartifact.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"codeartifact:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS CodeArtifact as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize developer tools & devops capability across development, testing, and production accounts.
- Integrate AWS CodeArtifact with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS CodeArtifact
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Cloud9
1. What is AWS Cloud9?
Cloud-based IDE environments.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Cloud9
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Cloud9
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Cloud9.
6. Developer code example
// SDK pattern for AWS Cloud9
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Cloud9. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Cloud9 resources in target environment. |
| Execution/service role | cloud9.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "cloud9.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"cloud9:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Cloud9 as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize developer tools & devops capability across development, testing, and production accounts.
- Integrate AWS Cloud9 with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Cloud9
AWS DocsUse these official AWS links while studying or implementing this service.
AWS X-Ray
1. What is AWS X-Ray?
Distributed tracing for applications and services.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS X-Ray
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS X-Ray
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS X-Ray.
6. Developer code example
// SDK pattern for AWS X-Ray
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS X-Ray. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS X-Ray resources in target environment. |
| Execution/service role | xray.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "xray.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"xray:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS X-Ray as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize developer tools & devops capability across development, testing, and production accounts.
- Integrate AWS X-Ray with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS X-Ray
AWS DocsUse these official AWS links while studying or implementing this service.
AWS CloudFormation
1. What is AWS CloudFormation?
Infrastructure as Code templates for AWS resources.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS CloudFormation
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS CloudFormation
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS CloudFormation.
6. Developer code example
// SDK pattern for AWS CloudFormation
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS CloudFormation. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS CloudFormation resources in target environment. |
| Execution/service role | cloudformation.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "cloudformation.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"cloudformation:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS CloudFormation as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize developer tools & devops capability across development, testing, and production accounts.
- Integrate AWS CloudFormation with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS CloudFormation
AWS DocsUse these official AWS links while studying or implementing this service.
AWS CDK
1. What is AWS CDK?
Define cloud infrastructure using programming languages.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS CDK
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS CDK
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS CDK.
6. Developer code example
// SDK pattern for AWS CDK
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS CDK. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS CDK resources in target environment. |
| Execution/service role | cloudformation.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "cloudformation.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"cloudformation:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS CDK as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize developer tools & devops capability across development, testing, and production accounts.
- Integrate AWS CDK with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS CDK
AWS DocsUse these official AWS links while studying or implementing this service.
AWS SAM
1. What is AWS SAM?
Serverless app framework for Lambda/API Gateway apps.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS SAM
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS SAM
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS SAM.
6. Developer code example
// SDK pattern for AWS SAM
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS SAM. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS SAM resources in target environment. |
| Execution/service role | cloudformation.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "cloudformation.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"cloudformation:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS SAM as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize developer tools & devops capability across development, testing, and production accounts.
- Integrate AWS SAM with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS SAM
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Copilot
1. What is AWS Copilot?
CLI for containerized app deployment to ECS/App Runner.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Copilot
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Copilot
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Copilot.
6. Developer code example
// SDK pattern for AWS Copilot
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Copilot. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Copilot resources in target environment. |
| Execution/service role | ecs.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ecs.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"ecs:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Copilot as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize developer tools & devops capability across development, testing, and production accounts.
- Integrate AWS Copilot with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Copilot
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Amplify
1. What is AWS Amplify?
Full-stack frontend and mobile development platform.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Amplify
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Amplify
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Amplify.
6. Developer code example
// SDK pattern for AWS Amplify
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Amplify. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Amplify resources in target environment. |
| Execution/service role | amplify.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "amplify.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"amplify:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Amplify as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize developer tools & devops capability across development, testing, and production accounts.
- Integrate AWS Amplify with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Amplify
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Device Farm
1. What is AWS Device Farm?
App testing on real mobile/browser devices.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Device Farm
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Device Farm
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Device Farm.
6. Developer code example
// SDK pattern for AWS Device Farm
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Device Farm. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Device Farm resources in target environment. |
| Execution/service role | devicefarm.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "devicefarm.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"devicefarm:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Device Farm as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize developer tools & devops capability across development, testing, and production accounts.
- Integrate AWS Device Farm with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Device Farm
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon CodeCatalyst
1. What is Amazon CodeCatalyst?
Integrated software development and CI/CD workspace.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon CodeCatalyst
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon CodeCatalyst
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon CodeCatalyst.
6. Developer code example
// SDK pattern for Amazon CodeCatalyst
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon CodeCatalyst. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon CodeCatalyst resources in target environment. |
| Execution/service role | codecatalyst.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "codecatalyst.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"codecatalyst:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon CodeCatalyst as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize developer tools & devops capability across development, testing, and production accounts.
- Integrate Amazon CodeCatalyst with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon CodeCatalyst
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon CloudWatch
1. What is Amazon CloudWatch?
Metrics, logs, alarms, dashboards, events, and observability.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon CloudWatch
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon CloudWatch
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon CloudWatch.
6. Developer code example
// SDK pattern for Amazon CloudWatch
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon CloudWatch. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon CloudWatch resources in target environment. |
| Execution/service role | cloudwatch.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "cloudwatch.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"cloudwatch:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon CloudWatch as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize monitoring, management & governance capability across development, testing, and production accounts.
- Integrate Amazon CloudWatch with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon CloudWatch
AWS DocsUse these official AWS links while studying or implementing this service.
AWS CloudTrail
1. What is AWS CloudTrail?
Audit logs for AWS API activity and account actions.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS CloudTrail
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS CloudTrail
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS CloudTrail.
6. Developer code example
// SDK pattern for AWS CloudTrail
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS CloudTrail. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS CloudTrail resources in target environment. |
| Execution/service role | cloudtrail.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "cloudtrail.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"cloudtrail:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS CloudTrail as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize monitoring, management & governance capability across development, testing, and production accounts.
- Integrate AWS CloudTrail with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS CloudTrail
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Config
1. What is AWS Config?
Resource inventory, configuration history, and compliance rules.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Config
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Config
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Config.
6. Developer code example
// SDK pattern for AWS Config
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Config. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Config resources in target environment. |
| Execution/service role | config.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "config.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"config:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Config as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize monitoring, management & governance capability across development, testing, and production accounts.
- Integrate AWS Config with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Config
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Systems Manager
1. What is AWS Systems Manager?
Operational management for instances, patching, parameter store, automation, and run command.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Systems Manager
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Systems Manager
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Systems Manager.
6. Developer code example
// SDK pattern for AWS Systems Manager
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Systems Manager. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Systems Manager resources in target environment. |
| Execution/service role | ssm.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ssm.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"ssm:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Systems Manager as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize monitoring, management & governance capability across development, testing, and production accounts.
- Integrate AWS Systems Manager with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Systems Manager
AWS DocsUse these official AWS links while studying or implementing this service.
AWS OpsWorks
1. What is AWS OpsWorks?
Configuration management with Chef/Puppet style stacks.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS OpsWorks
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS OpsWorks
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS OpsWorks.
6. Developer code example
// SDK pattern for AWS OpsWorks
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS OpsWorks. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS OpsWorks resources in target environment. |
| Execution/service role | opsworks.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "opsworks.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"opsworks:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS OpsWorks as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize monitoring, management & governance capability across development, testing, and production accounts.
- Integrate AWS OpsWorks with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS OpsWorks
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Service Catalog
1. What is AWS Service Catalog?
Approved product catalog for governed self-service provisioning.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Service Catalog
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Service Catalog
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Service Catalog.
6. Developer code example
// SDK pattern for AWS Service Catalog
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Service Catalog. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Service Catalog resources in target environment. |
| Execution/service role | servicecatalog.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "servicecatalog.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"servicecatalog:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Service Catalog as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize monitoring, management & governance capability across development, testing, and production accounts.
- Integrate AWS Service Catalog with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Service Catalog
AWS DocsUse these official AWS links while studying or implementing this service.
AWS License Manager
1. What is AWS License Manager?
Software license tracking and controls.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS License Manager
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS License Manager
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS License Manager.
6. Developer code example
// SDK pattern for AWS License Manager
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS License Manager. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS License Manager resources in target environment. |
| Execution/service role | license-manager.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "license-manager.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"license-manager:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS License Manager as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize monitoring, management & governance capability across development, testing, and production accounts.
- Integrate AWS License Manager with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS License Manager
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Managed Grafana
1. What is Amazon Managed Grafana?
Managed Grafana workspaces for dashboards.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Managed Grafana
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Managed Grafana
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Managed Grafana.
6. Developer code example
// SDK pattern for Amazon Managed Grafana
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Managed Grafana. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Managed Grafana resources in target environment. |
| Execution/service role | grafana.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "grafana.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"grafana:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Managed Grafana as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize monitoring, management & governance capability across development, testing, and production accounts.
- Integrate Amazon Managed Grafana with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Managed Grafana
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Managed Service for Prometheus
1. What is Amazon Managed Service for Prometheus?
Managed Prometheus metrics service.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Managed Service for Prometheus
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Managed Service for Prometheus
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Managed Service for Prometheus.
6. Developer code example
// SDK pattern for Amazon Managed Service for Prometheus
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Managed Service for Prometheus. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Managed Service for Prometheus resources in target environment. |
| Execution/service role | aps.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "aps.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"aps:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Managed Service for Prometheus as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize monitoring, management & governance capability across development, testing, and production accounts.
- Integrate Amazon Managed Service for Prometheus with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Managed Service for Prometheus
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Distro for OpenTelemetry
1. What is AWS Distro for OpenTelemetry?
OpenTelemetry collection for metrics/traces/logs.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Distro for OpenTelemetry
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Distro for OpenTelemetry
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Distro for OpenTelemetry.
6. Developer code example
// SDK pattern for AWS Distro for OpenTelemetry
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Distro for OpenTelemetry. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Distro for OpenTelemetry resources in target environment. |
| Execution/service role | observabilityadmin.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "observabilityadmin.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"observabilityadmin:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Distro for OpenTelemetry as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize monitoring, management & governance capability across development, testing, and production accounts.
- Integrate AWS Distro for OpenTelemetry with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Distro for OpenTelemetry
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon DevOps Guru
1. What is Amazon DevOps Guru?
ML-powered operational insights.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon DevOps Guru
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon DevOps Guru
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon DevOps Guru.
6. Developer code example
// SDK pattern for Amazon DevOps Guru
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon DevOps Guru. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon DevOps Guru resources in target environment. |
| Execution/service role | devops-guru.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "devops-guru.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"devops-guru:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon DevOps Guru as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize monitoring, management & governance capability across development, testing, and production accounts.
- Integrate Amazon DevOps Guru with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon DevOps Guru
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Well-Architected Tool
1. What is AWS Well-Architected Tool?
Workload review and best-practice improvement tracking.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Well-Architected Tool
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Well-Architected Tool
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Well-Architected Tool.
6. Developer code example
// SDK pattern for AWS Well-Architected Tool
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Well-Architected Tool. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Well-Architected Tool resources in target environment. |
| Execution/service role | wellarchitected.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "wellarchitected.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"wellarchitected:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Well-Architected Tool as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize monitoring, management & governance capability across development, testing, and production accounts.
- Integrate AWS Well-Architected Tool with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Well-Architected Tool
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Resilience Hub
1. What is AWS Resilience Hub?
Application resilience assessment and recommendations.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Resilience Hub
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Resilience Hub
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Resilience Hub.
6. Developer code example
// SDK pattern for AWS Resilience Hub
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Resilience Hub. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Resilience Hub resources in target environment. |
| Execution/service role | resiliencehub.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "resiliencehub.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"resiliencehub:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Resilience Hub as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize monitoring, management & governance capability across development, testing, and production accounts.
- Integrate AWS Resilience Hub with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Resilience Hub
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Incident Manager
1. What is AWS Incident Manager?
Incident response plans, engagements, and timelines.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Incident Manager
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Incident Manager
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Incident Manager.
6. Developer code example
// SDK pattern for AWS Incident Manager
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Incident Manager. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Incident Manager resources in target environment. |
| Execution/service role | ssm-incidents.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ssm-incidents.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"ssm-incidents:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Incident Manager as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize monitoring, management & governance capability across development, testing, and production accounts.
- Integrate AWS Incident Manager with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Incident Manager
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Chatbot / AWS User Notifications
1. What is AWS Chatbot / AWS User Notifications?
Operational notifications into chat channels and notification centers.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Chatbot / AWS User Notifications
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Chatbot / AWS User Notifications
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Chatbot / AWS User Notifications.
6. Developer code example
// SDK pattern for AWS Chatbot / AWS User Notifications
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Chatbot / AWS User Notifications. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Chatbot / AWS User Notifications resources in target environment. |
| Execution/service role | chatbot.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "chatbot.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"chatbot:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Chatbot / AWS User Notifications as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize monitoring, management & governance capability across development, testing, and production accounts.
- Integrate AWS Chatbot / AWS User Notifications with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Chatbot / AWS User Notifications
AWS DocsUse these official AWS links while studying or implementing this service.
AWS AppConfig
1. What is AWS AppConfig?
Feature flags and runtime configuration deployments.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS AppConfig
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS AppConfig
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS AppConfig.
6. Developer code example
// SDK pattern for AWS AppConfig
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS AppConfig. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS AppConfig resources in target environment. |
| Execution/service role | appconfig.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "appconfig.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"appconfig:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS AppConfig as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize monitoring, management & governance capability across development, testing, and production accounts.
- Integrate AWS AppConfig with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS AppConfig
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Athena
1. What is Amazon Athena?
Serverless SQL queries over S3 data.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Athena
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Athena
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Athena.
6. Developer code example
// SDK pattern for Amazon Athena
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Athena. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Athena resources in target environment. |
| Execution/service role | athena.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "athena.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"athena:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Athena as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize analytics & data lake capability across development, testing, and production accounts.
- Integrate Amazon Athena with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Athena
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Glue
1. What is AWS Glue?
Serverless data integration, ETL, crawlers, and Data Catalog.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Glue
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Glue
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Glue.
6. Developer code example
// SDK pattern for AWS Glue
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Glue. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Glue resources in target environment. |
| Execution/service role | glue.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "glue.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"glue:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Glue as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize analytics & data lake capability across development, testing, and production accounts.
- Integrate AWS Glue with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Glue
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon EMR
1. What is Amazon EMR?
Managed big data frameworks like Spark, Hive, Presto, and Hadoop.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon EMR
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon EMR
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon EMR.
6. Developer code example
// SDK pattern for Amazon EMR
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon EMR. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon EMR resources in target environment. |
| Execution/service role | elasticmapreduce.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "elasticmapreduce.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"elasticmapreduce:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon EMR as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize analytics & data lake capability across development, testing, and production accounts.
- Integrate Amazon EMR with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon EMR
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Redshift
1. What is Amazon Redshift?
Data warehouse for large-scale analytics.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Redshift
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Redshift
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Redshift.
6. Developer code example
// SDK pattern for Amazon Redshift
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Redshift. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Redshift resources in target environment. |
| Execution/service role | redshift.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "redshift.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"redshift:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Redshift as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize analytics & data lake capability across development, testing, and production accounts.
- Integrate Amazon Redshift with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Redshift
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Kinesis Data Streams
1. What is Amazon Kinesis Data Streams?
Real-time streaming data ingestion.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Kinesis Data Streams
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Kinesis Data Streams
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Kinesis Data Streams.
6. Developer code example
// SDK pattern for Amazon Kinesis Data Streams
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Kinesis Data Streams. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Kinesis Data Streams resources in target environment. |
| Execution/service role | kinesis.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "kinesis.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"kinesis:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Kinesis Data Streams as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize analytics & data lake capability across development, testing, and production accounts.
- Integrate Amazon Kinesis Data Streams with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Kinesis Data Streams
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Data Firehose
1. What is Amazon Data Firehose?
Managed streaming delivery to S3, Redshift, OpenSearch, and partners.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Data Firehose
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Data Firehose
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Data Firehose.
6. Developer code example
// SDK pattern for Amazon Data Firehose
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Data Firehose. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Data Firehose resources in target environment. |
| Execution/service role | firehose.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "firehose.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"firehose:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Data Firehose as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize analytics & data lake capability across development, testing, and production accounts.
- Integrate Amazon Data Firehose with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Data Firehose
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Kinesis Video Streams
1. What is Amazon Kinesis Video Streams?
Video streaming capture and processing.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Kinesis Video Streams
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Kinesis Video Streams
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Kinesis Video Streams.
6. Developer code example
// SDK pattern for Amazon Kinesis Video Streams
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Kinesis Video Streams. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Kinesis Video Streams resources in target environment. |
| Execution/service role | kinesisvideo.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "kinesisvideo.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"kinesisvideo:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Kinesis Video Streams as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize analytics & data lake capability across development, testing, and production accounts.
- Integrate Amazon Kinesis Video Streams with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Kinesis Video Streams
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Managed Service for Apache Flink
1. What is Amazon Managed Service for Apache Flink?
Real-time stream processing with Apache Flink.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Managed Service for Apache Flink
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Managed Service for Apache Flink
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Managed Service for Apache Flink.
6. Developer code example
// SDK pattern for Amazon Managed Service for Apache Flink
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Managed Service for Apache Flink. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Managed Service for Apache Flink resources in target environment. |
| Execution/service role | kinesisanalytics.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "kinesisanalytics.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"kinesisanalytics:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Managed Service for Apache Flink as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize analytics & data lake capability across development, testing, and production accounts.
- Integrate Amazon Managed Service for Apache Flink with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Managed Service for Apache Flink
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon MSK
1. What is Amazon MSK?
Managed Apache Kafka clusters.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon MSK
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon MSK
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon MSK.
6. Developer code example
// SDK pattern for Amazon MSK
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon MSK. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon MSK resources in target environment. |
| Execution/service role | kafka.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "kafka.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"kafka:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon MSK as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize analytics & data lake capability across development, testing, and production accounts.
- Integrate Amazon MSK with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon MSK
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon OpenSearch Service
1. What is Amazon OpenSearch Service?
Search, logs analytics, and vector search platform.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon OpenSearch Service
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon OpenSearch Service
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon OpenSearch Service.
6. Developer code example
// SDK pattern for Amazon OpenSearch Service
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon OpenSearch Service. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon OpenSearch Service resources in target environment. |
| Execution/service role | es.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "es.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"es:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon OpenSearch Service as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize analytics & data lake capability across development, testing, and production accounts.
- Integrate Amazon OpenSearch Service with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon OpenSearch Service
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon QuickSight
1. What is Amazon QuickSight?
Business intelligence dashboards and embedded analytics.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon QuickSight
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon QuickSight
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon QuickSight.
6. Developer code example
// SDK pattern for Amazon QuickSight
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon QuickSight. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon QuickSight resources in target environment. |
| Execution/service role | quicksight.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "quicksight.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"quicksight:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon QuickSight as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize analytics & data lake capability across development, testing, and production accounts.
- Integrate Amazon QuickSight with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon QuickSight
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Lake Formation
1. What is AWS Lake Formation?
Data lake permissions, cataloging, and governance.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Lake Formation
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Lake Formation
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Lake Formation.
6. Developer code example
// SDK pattern for AWS Lake Formation
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Lake Formation. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Lake Formation resources in target environment. |
| Execution/service role | lakeformation.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "lakeformation.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"lakeformation:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Lake Formation as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize analytics & data lake capability across development, testing, and production accounts.
- Integrate AWS Lake Formation with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Lake Formation
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Data Exchange
1. What is AWS Data Exchange?
Find and subscribe to third-party data products.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Data Exchange
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Data Exchange
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Data Exchange.
6. Developer code example
// SDK pattern for AWS Data Exchange
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Data Exchange. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Data Exchange resources in target environment. |
| Execution/service role | dataexchange.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "dataexchange.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"dataexchange:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Data Exchange as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize analytics & data lake capability across development, testing, and production accounts.
- Integrate AWS Data Exchange with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Data Exchange
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Data Pipeline
1. What is AWS Data Pipeline?
Legacy data movement and processing workflows.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Data Pipeline
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Data Pipeline
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Data Pipeline.
6. Developer code example
// SDK pattern for AWS Data Pipeline
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Data Pipeline. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Data Pipeline resources in target environment. |
| Execution/service role | datapipeline.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "datapipeline.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"datapipeline:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Data Pipeline as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize analytics & data lake capability across development, testing, and production accounts.
- Integrate AWS Data Pipeline with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Data Pipeline
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Clean Rooms
1. What is AWS Clean Rooms?
Privacy-enhanced collaborative analytics.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Clean Rooms
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Clean Rooms
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Clean Rooms.
6. Developer code example
// SDK pattern for AWS Clean Rooms
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Clean Rooms. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Clean Rooms resources in target environment. |
| Execution/service role | cleanrooms.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "cleanrooms.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"cleanrooms:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Clean Rooms as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize analytics & data lake capability across development, testing, and production accounts.
- Integrate AWS Clean Rooms with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Clean Rooms
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon DataZone
1. What is Amazon DataZone?
Data catalog, governance, and data portal.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon DataZone
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon DataZone
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon DataZone.
6. Developer code example
// SDK pattern for Amazon DataZone
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon DataZone. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon DataZone resources in target environment. |
| Execution/service role | datazone.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "datazone.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"datazone:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon DataZone as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize analytics & data lake capability across development, testing, and production accounts.
- Integrate Amazon DataZone with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon DataZone
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Entity Resolution
1. What is AWS Entity Resolution?
Match, link, and enhance related records.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Entity Resolution
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Entity Resolution
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Entity Resolution.
6. Developer code example
// SDK pattern for AWS Entity Resolution
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Entity Resolution. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Entity Resolution resources in target environment. |
| Execution/service role | entityresolution.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "entityresolution.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"entityresolution:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Entity Resolution as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize analytics & data lake capability across development, testing, and production accounts.
- Integrate AWS Entity Resolution with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Entity Resolution
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon FinSpace
1. What is Amazon FinSpace?
Financial services analytics environment.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon FinSpace
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon FinSpace
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon FinSpace.
6. Developer code example
// SDK pattern for Amazon FinSpace
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon FinSpace. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon FinSpace resources in target environment. |
| Execution/service role | finspace.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "finspace.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"finspace:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon FinSpace as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize analytics & data lake capability across development, testing, and production accounts.
- Integrate Amazon FinSpace with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon FinSpace
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Bedrock
1. What is Amazon Bedrock?
Foundation models and generative AI application development.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Bedrock
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Bedrock
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Bedrock.
6. Developer code example
// SDK pattern for Amazon Bedrock
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Bedrock. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Bedrock resources in target environment. |
| Execution/service role | bedrock.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "bedrock.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"bedrock:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Bedrock as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize machine learning & ai capability across development, testing, and production accounts.
- Integrate Amazon Bedrock with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Bedrock
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Bedrock AgentCore
1. What is Amazon Bedrock AgentCore?
Deploy and operate AI agents at scale.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Bedrock AgentCore
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Bedrock AgentCore
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Bedrock AgentCore.
6. Developer code example
// SDK pattern for Amazon Bedrock AgentCore
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Bedrock AgentCore. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Bedrock AgentCore resources in target environment. |
| Execution/service role | bedrock-agentcore.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "bedrock-agentcore.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"bedrock-agentcore:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Bedrock AgentCore as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize machine learning & ai capability across development, testing, and production accounts.
- Integrate Amazon Bedrock AgentCore with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Bedrock AgentCore
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon SageMaker AI
1. What is Amazon SageMaker AI?
Build, train, tune, deploy, and govern ML models.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon SageMaker AI
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon SageMaker AI
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon SageMaker AI.
6. Developer code example
// SDK pattern for Amazon SageMaker AI
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon SageMaker AI. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon SageMaker AI resources in target environment. |
| Execution/service role | sagemaker.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "sagemaker.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"sagemaker:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon SageMaker AI as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize machine learning & ai capability across development, testing, and production accounts.
- Integrate Amazon SageMaker AI with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon SageMaker AI
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Comprehend
1. What is Amazon Comprehend?
Natural language processing for text insights.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Comprehend
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Comprehend
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Comprehend.
6. Developer code example
// SDK pattern for Amazon Comprehend
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Comprehend. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Comprehend resources in target environment. |
| Execution/service role | comprehend.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "comprehend.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"comprehend:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Comprehend as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize machine learning & ai capability across development, testing, and production accounts.
- Integrate Amazon Comprehend with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Comprehend
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Comprehend Medical
1. What is Amazon Comprehend Medical?
Medical NLP for healthcare text.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Comprehend Medical
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Comprehend Medical
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Comprehend Medical.
6. Developer code example
// SDK pattern for Amazon Comprehend Medical
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Comprehend Medical. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Comprehend Medical resources in target environment. |
| Execution/service role | comprehendmedical.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "comprehendmedical.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"comprehendmedical:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Comprehend Medical as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize machine learning & ai capability across development, testing, and production accounts.
- Integrate Amazon Comprehend Medical with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Comprehend Medical
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Lex
1. What is Amazon Lex?
Conversational interfaces and chatbots.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Lex
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Lex
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Lex.
6. Developer code example
// SDK pattern for Amazon Lex
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Lex. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Lex resources in target environment. |
| Execution/service role | lex.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "lex.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"lex:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Lex as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize machine learning & ai capability across development, testing, and production accounts.
- Integrate Amazon Lex with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Lex
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Polly
1. What is Amazon Polly?
Text-to-speech synthesis.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Polly
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Polly
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Polly.
6. Developer code example
// SDK pattern for Amazon Polly
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Polly. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Polly resources in target environment. |
| Execution/service role | polly.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "polly.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"polly:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Polly as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize machine learning & ai capability across development, testing, and production accounts.
- Integrate Amazon Polly with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Polly
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Rekognition
1. What is Amazon Rekognition?
Image and video analysis.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Rekognition
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Rekognition
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Rekognition.
6. Developer code example
// SDK pattern for Amazon Rekognition
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Rekognition. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Rekognition resources in target environment. |
| Execution/service role | rekognition.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "rekognition.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"rekognition:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Rekognition as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize machine learning & ai capability across development, testing, and production accounts.
- Integrate Amazon Rekognition with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Rekognition
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Textract
1. What is Amazon Textract?
Extract text, tables, forms, and structured data from documents.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Textract
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Textract
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Textract.
6. Developer code example
// SDK pattern for Amazon Textract
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Textract. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Textract resources in target environment. |
| Execution/service role | textract.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "textract.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"textract:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Textract as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize machine learning & ai capability across development, testing, and production accounts.
- Integrate Amazon Textract with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Textract
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Transcribe
1. What is Amazon Transcribe?
Automatic speech recognition and transcription.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Transcribe
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Transcribe
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Transcribe.
6. Developer code example
// SDK pattern for Amazon Transcribe
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Transcribe. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Transcribe resources in target environment. |
| Execution/service role | transcribe.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "transcribe.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"transcribe:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Transcribe as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize machine learning & ai capability across development, testing, and production accounts.
- Integrate Amazon Transcribe with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Transcribe
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Translate
1. What is Amazon Translate?
Machine translation.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Translate
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Translate
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Translate.
6. Developer code example
// SDK pattern for Amazon Translate
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Translate. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Translate resources in target environment. |
| Execution/service role | translate.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "translate.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"translate:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Translate as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize machine learning & ai capability across development, testing, and production accounts.
- Integrate Amazon Translate with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Translate
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Kendra
1. What is Amazon Kendra?
Enterprise search powered by ML.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Kendra
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Kendra
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Kendra.
6. Developer code example
// SDK pattern for Amazon Kendra
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Kendra. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Kendra resources in target environment. |
| Execution/service role | kendra.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "kendra.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"kendra:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Kendra as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize machine learning & ai capability across development, testing, and production accounts.
- Integrate Amazon Kendra with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Kendra
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Personalize
1. What is Amazon Personalize?
Recommendation models for personalization.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Personalize
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Personalize
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Personalize.
6. Developer code example
// SDK pattern for Amazon Personalize
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Personalize. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Personalize resources in target environment. |
| Execution/service role | personalize.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "personalize.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"personalize:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Personalize as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize machine learning & ai capability across development, testing, and production accounts.
- Integrate Amazon Personalize with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Personalize
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Forecast
1. What is Amazon Forecast?
Time-series forecasting service.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Forecast
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Forecast
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Forecast.
6. Developer code example
// SDK pattern for Amazon Forecast
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Forecast. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Forecast resources in target environment. |
| Execution/service role | forecast.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "forecast.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"forecast:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Forecast as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize machine learning & ai capability across development, testing, and production accounts.
- Integrate Amazon Forecast with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Forecast
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Fraud Detector
1. What is Amazon Fraud Detector?
Fraud prediction using ML models.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Fraud Detector
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Fraud Detector
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Fraud Detector.
6. Developer code example
// SDK pattern for Amazon Fraud Detector
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Fraud Detector. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Fraud Detector resources in target environment. |
| Execution/service role | frauddetector.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "frauddetector.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"frauddetector:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Fraud Detector as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize machine learning & ai capability across development, testing, and production accounts.
- Integrate Amazon Fraud Detector with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Fraud Detector
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Lookout for Metrics
1. What is Amazon Lookout for Metrics?
Anomaly detection for metrics.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Lookout for Metrics
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Lookout for Metrics
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Lookout for Metrics.
6. Developer code example
// SDK pattern for Amazon Lookout for Metrics
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Lookout for Metrics. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Lookout for Metrics resources in target environment. |
| Execution/service role | lookoutmetrics.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "lookoutmetrics.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"lookoutmetrics:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Lookout for Metrics as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize machine learning & ai capability across development, testing, and production accounts.
- Integrate Amazon Lookout for Metrics with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Lookout for Metrics
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Lookout for Equipment
1. What is Amazon Lookout for Equipment?
Predictive maintenance for industrial equipment.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Lookout for Equipment
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Lookout for Equipment
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Lookout for Equipment.
6. Developer code example
// SDK pattern for Amazon Lookout for Equipment
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Lookout for Equipment. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Lookout for Equipment resources in target environment. |
| Execution/service role | lookoutequipment.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "lookoutequipment.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"lookoutequipment:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Lookout for Equipment as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize machine learning & ai capability across development, testing, and production accounts.
- Integrate Amazon Lookout for Equipment with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Lookout for Equipment
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Lookout for Vision
1. What is Amazon Lookout for Vision?
Visual anomaly detection.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Lookout for Vision
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Lookout for Vision
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Lookout for Vision.
6. Developer code example
// SDK pattern for Amazon Lookout for Vision
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Lookout for Vision. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Lookout for Vision resources in target environment. |
| Execution/service role | lookoutvision.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "lookoutvision.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"lookoutvision:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Lookout for Vision as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize machine learning & ai capability across development, testing, and production accounts.
- Integrate Amazon Lookout for Vision with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Lookout for Vision
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Monitron
1. What is Amazon Monitron?
Industrial equipment monitoring and predictive maintenance.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Monitron
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Monitron
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Monitron.
6. Developer code example
// SDK pattern for Amazon Monitron
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Monitron. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Monitron resources in target environment. |
| Execution/service role | monitron.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "monitron.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"monitron:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Monitron as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize machine learning & ai capability across development, testing, and production accounts.
- Integrate Amazon Monitron with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Monitron
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon HealthLake
1. What is Amazon HealthLake?
FHIR-based healthcare data lake.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon HealthLake
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon HealthLake
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon HealthLake.
6. Developer code example
// SDK pattern for Amazon HealthLake
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon HealthLake. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon HealthLake resources in target environment. |
| Execution/service role | healthlake.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "healthlake.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"healthlake:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon HealthLake as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize machine learning & ai capability across development, testing, and production accounts.
- Integrate Amazon HealthLake with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon HealthLake
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Augmented AI (A2I)
1. What is Amazon Augmented AI (A2I)?
Human review workflows for ML predictions.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Augmented AI (A2I)
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Augmented AI (A2I)
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Augmented AI (A2I).
6. Developer code example
// SDK pattern for Amazon Augmented AI (A2I)
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Augmented AI (A2I). |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Augmented AI (A2I) resources in target environment. |
| Execution/service role | sagemaker.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "sagemaker.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"sagemaker:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Augmented AI (A2I) as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize machine learning & ai capability across development, testing, and production accounts.
- Integrate Amazon Augmented AI (A2I) with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Augmented AI (A2I)
AWS DocsUse these official AWS links while studying or implementing this service.
AWS DeepRacer
1. What is AWS DeepRacer?
ML reinforcement learning education using autonomous racing.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS DeepRacer
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS DeepRacer
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS DeepRacer.
6. Developer code example
// SDK pattern for AWS DeepRacer
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS DeepRacer. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS DeepRacer resources in target environment. |
| Execution/service role | deepracer.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "deepracer.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"deepracer:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS DeepRacer as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize machine learning & ai capability across development, testing, and production accounts.
- Integrate AWS DeepRacer with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS DeepRacer
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Q Developer
1. What is Amazon Q Developer?
AI assistant for software development and AWS operations.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Q Developer
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Q Developer
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Q Developer.
6. Developer code example
// SDK pattern for Amazon Q Developer
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Q Developer. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Q Developer resources in target environment. |
| Execution/service role | qdeveloper.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "qdeveloper.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"qdeveloper:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Q Developer as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize machine learning & ai capability across development, testing, and production accounts.
- Integrate Amazon Q Developer with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Q Developer
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Q Business
1. What is Amazon Q Business?
Enterprise generative AI assistant connected to company data.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Q Business
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Q Business
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Q Business.
6. Developer code example
// SDK pattern for Amazon Q Business
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Q Business. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Q Business resources in target environment. |
| Execution/service role | qbusiness.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "qbusiness.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"qbusiness:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Q Business as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize machine learning & ai capability across development, testing, and production accounts.
- Integrate Amazon Q Business with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Q Business
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Connect
1. What is Amazon Connect?
Amazon Connect is a cloud contact center service for voice, chat, tasks, email, analytics, agent workspace, routing, and customer service operations.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Flows | Visual workflows that define IVR, prompts, branching, attributes, integrations, routing, and transfers. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Queues and routing | Queues represent work; routing profiles map agents to queues with priorities. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Recording and analytics | Record calls, analyze sentiment/categories, redact sensitive data, and review quality. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Agent workspace | Agent UI for handling contacts, knowledge, cases, profiles, and AI assistance. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Metrics | Real-time and historical metrics for service level, occupancy, contacts handled, abandon rate, queue time, and agent performance. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Connect
- Amazon Connect → Add an instance.
- Choose identity management: Connect directory, SAML, or existing directory.
- Choose telephony options and data storage locations.
- Claim or port a phone number.
- Create users/agents and security profiles.
- Create queues, routing profiles, hours of operation.
- Build flows and set a phone number to route to the flow.
- Enable recording, Contact Lens, metrics, and integrations as needed.
5. CLI / IaC starter
# Connect APIs use instance IDs. Example: list instances and users
aws connect list-instances
aws connect list-users --instance-id <connect-instance-id>
aws connect list-queues --instance-id <connect-instance-id>
6. Developer code example
// Lambda used inside a Connect flow
export const handler = async (event) => {
const phone = event.Details.ContactData.CustomerEndpoint.Address;
return {
customerStatus: 'gold',
nextQueue: 'priority-support'
};
};
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Connect. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Connect resources in target environment. |
| Execution/service role | connect.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "connect.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"connect:ListInstances",
"connect:DescribeInstance",
"connect:ListUsers",
"connect:CreateUser",
"connect:UpdateUserSecurityProfiles",
"connect:ListQueues",
"connect:CreateQueue",
"connect:StartOutboundVoiceContact",
"connect:GetCurrentMetricData",
"connect:GetMetricDataV2",
"lambda:InvokeFunction"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- Lambda in flows
- Lex bots
- Customer Profiles
- Cases
- Contact Lens
- S3 recordings
- Kinesis streams, EventBridge, CloudWatch metrics
- CRM integrations and Amazon Q in Connect
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Customer support center with IVR, skill-based routing, call recording, and supervisor dashboards.
- Banking/insurance helpdesk with compliance recordings, identity checks, CRM screen-pop, and cases.
- Sales/outbound contact center with campaigns, callbacks, analytics, and Amazon Q agent assist.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Creating flows without naming/version discipline | Use naming conventions, modules, documentation, and separate dev/prod instances. |
| No recording/compliance decision | Define which flows/queues record, retain, redact, and who can access recordings. |
| Poor queue/routing design | Design skills, priorities, hours, overflow, callbacks, and metrics before launch. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Connect
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Connect Contact Lens
1. What is Amazon Connect Contact Lens?
Conversation analytics, sentiment, summaries, and quality management for Connect.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Connect Contact Lens
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Connect Contact Lens
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Connect Contact Lens.
6. Developer code example
// SDK pattern for Amazon Connect Contact Lens
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Connect Contact Lens. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Connect Contact Lens resources in target environment. |
| Execution/service role | connect.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "connect.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"connect:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Connect Contact Lens as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize business applications & contact center capability across development, testing, and production accounts.
- Integrate Amazon Connect Contact Lens with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Connect Contact Lens
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Connect Customer Profiles
1. What is Amazon Connect Customer Profiles?
Unified customer profiles for contact center context.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Connect Customer Profiles
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Connect Customer Profiles
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Connect Customer Profiles.
6. Developer code example
// SDK pattern for Amazon Connect Customer Profiles
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Connect Customer Profiles. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Connect Customer Profiles resources in target environment. |
| Execution/service role | profile.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "profile.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"profile:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Connect Customer Profiles as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize business applications & contact center capability across development, testing, and production accounts.
- Integrate Amazon Connect Customer Profiles with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Connect Customer Profiles
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Connect Cases
1. What is Amazon Connect Cases?
Case management integrated with contact center operations.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Connect Cases
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Connect Cases
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Connect Cases.
6. Developer code example
// SDK pattern for Amazon Connect Cases
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Connect Cases. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Connect Cases resources in target environment. |
| Execution/service role | cases.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "cases.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"cases:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Connect Cases as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize business applications & contact center capability across development, testing, and production accounts.
- Integrate Amazon Connect Cases with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Connect Cases
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Connect Wisdom / Amazon Q in Connect
1. What is Amazon Connect Wisdom / Amazon Q in Connect?
Agent assist and knowledge recommendations in Connect.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Connect Wisdom / Amazon Q in Connect
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Connect Wisdom / Amazon Q in Connect
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Connect Wisdom / Amazon Q in Connect.
6. Developer code example
// SDK pattern for Amazon Connect Wisdom / Amazon Q in Connect
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Connect Wisdom / Amazon Q in Connect. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Connect Wisdom / Amazon Q in Connect resources in target environment. |
| Execution/service role | wisdom.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "wisdom.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"wisdom:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Connect Wisdom / Amazon Q in Connect as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize business applications & contact center capability across development, testing, and production accounts.
- Integrate Amazon Connect Wisdom / Amazon Q in Connect with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Connect Wisdom / Amazon Q in Connect
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon WorkMail
1. What is Amazon WorkMail?
Managed business email and calendar service.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon WorkMail
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon WorkMail
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon WorkMail.
6. Developer code example
// SDK pattern for Amazon WorkMail
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon WorkMail. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon WorkMail resources in target environment. |
| Execution/service role | workmail.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "workmail.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"workmail:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon WorkMail as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize business applications & contact center capability across development, testing, and production accounts.
- Integrate Amazon WorkMail with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon WorkMail
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Chime
1. What is Amazon Chime?
Meetings, chat, and communications SDK services.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Chime
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Chime
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Chime.
6. Developer code example
// SDK pattern for Amazon Chime
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Chime. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Chime resources in target environment. |
| Execution/service role | chime.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "chime.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"chime:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Chime as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize business applications & contact center capability across development, testing, and production accounts.
- Integrate Amazon Chime with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Chime
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Chime SDK
1. What is Amazon Chime SDK?
Real-time audio, video, messaging, and PSTN building blocks.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Chime SDK
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Chime SDK
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Chime SDK.
6. Developer code example
// SDK pattern for Amazon Chime SDK
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Chime SDK. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Chime SDK resources in target environment. |
| Execution/service role | chime.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "chime.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"chime:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Chime SDK as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize business applications & contact center capability across development, testing, and production accounts.
- Integrate Amazon Chime SDK with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Chime SDK
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Wickr
1. What is AWS Wickr?
End-to-end encrypted messaging and collaboration.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Wickr
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Wickr
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Wickr.
6. Developer code example
// SDK pattern for AWS Wickr
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Wickr. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Wickr resources in target environment. |
| Execution/service role | wickr.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "wickr.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"wickr:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Wickr as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize business applications & contact center capability across development, testing, and production accounts.
- Integrate AWS Wickr with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Wickr
AWS DocsUse these official AWS links while studying or implementing this service.
Alexa for Business
1. What is Alexa for Business?
Voice-enabled workplace experiences.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Alexa for Business
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Alexa for Business
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Alexa for Business.
6. Developer code example
// SDK pattern for Alexa for Business
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Alexa for Business. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Alexa for Business resources in target environment. |
| Execution/service role | a4b.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "a4b.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"a4b:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Alexa for Business as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize business applications & contact center capability across development, testing, and production accounts.
- Integrate Alexa for Business with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Alexa for Business
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon WorkSpaces
1. What is Amazon WorkSpaces?
Managed virtual desktops.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon WorkSpaces
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon WorkSpaces
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon WorkSpaces.
6. Developer code example
// SDK pattern for Amazon WorkSpaces
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon WorkSpaces. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon WorkSpaces resources in target environment. |
| Execution/service role | workspaces.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "workspaces.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"workspaces:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon WorkSpaces as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize end user computing capability across development, testing, and production accounts.
- Integrate Amazon WorkSpaces with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon WorkSpaces
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon WorkSpaces Web
1. What is Amazon WorkSpaces Web?
Secure browser access for internal websites and SaaS.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon WorkSpaces Web
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon WorkSpaces Web
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon WorkSpaces Web.
6. Developer code example
// SDK pattern for Amazon WorkSpaces Web
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon WorkSpaces Web. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon WorkSpaces Web resources in target environment. |
| Execution/service role | workspaces-web.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "workspaces-web.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"workspaces-web:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon WorkSpaces Web as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize end user computing capability across development, testing, and production accounts.
- Integrate Amazon WorkSpaces Web with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon WorkSpaces Web
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon AppStream 2.0
1. What is Amazon AppStream 2.0?
Stream desktop applications to browsers.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon AppStream 2.0
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon AppStream 2.0
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon AppStream 2.0.
6. Developer code example
// SDK pattern for Amazon AppStream 2.0
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon AppStream 2.0. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon AppStream 2.0 resources in target environment. |
| Execution/service role | appstream.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "appstream.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"appstream:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon AppStream 2.0 as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize end user computing capability across development, testing, and production accounts.
- Integrate Amazon AppStream 2.0 with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon AppStream 2.0
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon WorkDocs
1. What is Amazon WorkDocs?
Managed document collaboration.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon WorkDocs
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon WorkDocs
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon WorkDocs.
6. Developer code example
// SDK pattern for Amazon WorkDocs
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon WorkDocs. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon WorkDocs resources in target environment. |
| Execution/service role | workdocs.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "workdocs.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"workdocs:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon WorkDocs as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize end user computing capability across development, testing, and production accounts.
- Integrate Amazon WorkDocs with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon WorkDocs
AWS DocsUse these official AWS links while studying or implementing this service.
NICE DCV
1. What is NICE DCV?
High-performance remote display protocol.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure NICE DCV
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for NICE DCV
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for NICE DCV.
6. Developer code example
// SDK pattern for NICE DCV
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for NICE DCV. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged NICE DCV resources in target environment. |
| Execution/service role | dcv.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "dcv.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"dcv:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use NICE DCV as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize end user computing capability across development, testing, and production accounts.
- Integrate NICE DCV with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for NICE DCV
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Amplify Hosting
1. What is AWS Amplify Hosting?
Managed hosting and CI/CD for frontend web apps.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Amplify Hosting
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Amplify Hosting
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Amplify Hosting.
6. Developer code example
// SDK pattern for AWS Amplify Hosting
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Amplify Hosting. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Amplify Hosting resources in target environment. |
| Execution/service role | amplify.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "amplify.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"amplify:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Amplify Hosting as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize front-end web & mobile capability across development, testing, and production accounts.
- Integrate AWS Amplify Hosting with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Amplify Hosting
AWS DocsUse these official AWS links while studying or implementing this service.
AWS AppSync
1. What is AWS AppSync?
GraphQL APIs, subscriptions, offline sync patterns.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS AppSync
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS AppSync
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS AppSync.
6. Developer code example
// SDK pattern for AWS AppSync
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS AppSync. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS AppSync resources in target environment. |
| Execution/service role | appsync.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "appsync.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"appsync:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS AppSync as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize front-end web & mobile capability across development, testing, and production accounts.
- Integrate AWS AppSync with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS AppSync
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Cognito for Apps
1. What is Amazon Cognito for Apps?
Authentication and authorization for mobile/web users.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Cognito for Apps
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Cognito for Apps
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Cognito for Apps.
6. Developer code example
// SDK pattern for Amazon Cognito for Apps
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Cognito for Apps. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Cognito for Apps resources in target environment. |
| Execution/service role | cognito-idp.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "cognito-idp.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"cognito-idp:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Cognito for Apps as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize front-end web & mobile capability across development, testing, and production accounts.
- Integrate Amazon Cognito for Apps with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Cognito for Apps
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Device Farm
1. What is AWS Device Farm?
Mobile and browser testing.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Device Farm
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Device Farm
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Device Farm.
6. Developer code example
// SDK pattern for AWS Device Farm
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Device Farm. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Device Farm resources in target environment. |
| Execution/service role | devicefarm.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "devicefarm.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"devicefarm:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Device Farm as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize front-end web & mobile capability across development, testing, and production accounts.
- Integrate AWS Device Farm with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Device Farm
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Location Service
1. What is Amazon Location Service?
Maps, places, geocoding, routing, tracking, and geofencing.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Location Service
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Location Service
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Location Service.
6. Developer code example
// SDK pattern for Amazon Location Service
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Location Service. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Location Service resources in target environment. |
| Execution/service role | geo.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "geo.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"geo:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Location Service as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize front-end web & mobile capability across development, testing, and production accounts.
- Integrate Amazon Location Service with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Location Service
AWS DocsUse these official AWS links while studying or implementing this service.
AWS IoT Core
1. What is AWS IoT Core?
Secure device connectivity, MQTT messaging, and device shadows.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS IoT Core
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS IoT Core
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS IoT Core.
6. Developer code example
// SDK pattern for AWS IoT Core
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS IoT Core. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS IoT Core resources in target environment. |
| Execution/service role | iot.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "iot.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"iot:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS IoT Core as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize iot & edge capability across development, testing, and production accounts.
- Integrate AWS IoT Core with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS IoT Core
AWS DocsUse these official AWS links while studying or implementing this service.
AWS IoT Greengrass
1. What is AWS IoT Greengrass?
Run local compute, messaging, and ML at the edge.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS IoT Greengrass
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS IoT Greengrass
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS IoT Greengrass.
6. Developer code example
// SDK pattern for AWS IoT Greengrass
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS IoT Greengrass. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS IoT Greengrass resources in target environment. |
| Execution/service role | greengrass.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "greengrass.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"greengrass:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS IoT Greengrass as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize iot & edge capability across development, testing, and production accounts.
- Integrate AWS IoT Greengrass with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS IoT Greengrass
AWS DocsUse these official AWS links while studying or implementing this service.
AWS IoT Analytics
1. What is AWS IoT Analytics?
IoT data processing and analytics.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS IoT Analytics
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS IoT Analytics
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS IoT Analytics.
6. Developer code example
// SDK pattern for AWS IoT Analytics
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS IoT Analytics. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS IoT Analytics resources in target environment. |
| Execution/service role | iotanalytics.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "iotanalytics.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"iotanalytics:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS IoT Analytics as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize iot & edge capability across development, testing, and production accounts.
- Integrate AWS IoT Analytics with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS IoT Analytics
AWS DocsUse these official AWS links while studying or implementing this service.
AWS IoT Events
1. What is AWS IoT Events?
Detect and respond to IoT events and conditions.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS IoT Events
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS IoT Events
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS IoT Events.
6. Developer code example
// SDK pattern for AWS IoT Events
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS IoT Events. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS IoT Events resources in target environment. |
| Execution/service role | iotevents.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "iotevents.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"iotevents:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS IoT Events as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize iot & edge capability across development, testing, and production accounts.
- Integrate AWS IoT Events with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS IoT Events
AWS DocsUse these official AWS links while studying or implementing this service.
AWS IoT Device Defender
1. What is AWS IoT Device Defender?
IoT security auditing and monitoring.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS IoT Device Defender
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS IoT Device Defender
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS IoT Device Defender.
6. Developer code example
// SDK pattern for AWS IoT Device Defender
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS IoT Device Defender. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS IoT Device Defender resources in target environment. |
| Execution/service role | iotdeviceadvisor.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "iotdeviceadvisor.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"iotdeviceadvisor:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS IoT Device Defender as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize iot & edge capability across development, testing, and production accounts.
- Integrate AWS IoT Device Defender with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS IoT Device Defender
AWS DocsUse these official AWS links while studying or implementing this service.
AWS IoT Device Management
1. What is AWS IoT Device Management?
Fleet onboarding, indexing, jobs, and device management.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS IoT Device Management
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS IoT Device Management
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS IoT Device Management.
6. Developer code example
// SDK pattern for AWS IoT Device Management
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS IoT Device Management. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS IoT Device Management resources in target environment. |
| Execution/service role | iot.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "iot.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"iot:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS IoT Device Management as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize iot & edge capability across development, testing, and production accounts.
- Integrate AWS IoT Device Management with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS IoT Device Management
AWS DocsUse these official AWS links while studying or implementing this service.
AWS IoT FleetWise
1. What is AWS IoT FleetWise?
Vehicle data collection and transformation.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS IoT FleetWise
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS IoT FleetWise
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS IoT FleetWise.
6. Developer code example
// SDK pattern for AWS IoT FleetWise
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS IoT FleetWise. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS IoT FleetWise resources in target environment. |
| Execution/service role | iotfleetwise.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "iotfleetwise.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"iotfleetwise:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS IoT FleetWise as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize iot & edge capability across development, testing, and production accounts.
- Integrate AWS IoT FleetWise with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS IoT FleetWise
AWS DocsUse these official AWS links while studying or implementing this service.
AWS IoT SiteWise
1. What is AWS IoT SiteWise?
Industrial asset data collection and monitoring.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS IoT SiteWise
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS IoT SiteWise
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS IoT SiteWise.
6. Developer code example
// SDK pattern for AWS IoT SiteWise
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS IoT SiteWise. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS IoT SiteWise resources in target environment. |
| Execution/service role | iotsitewise.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "iotsitewise.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"iotsitewise:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS IoT SiteWise as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize iot & edge capability across development, testing, and production accounts.
- Integrate AWS IoT SiteWise with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS IoT SiteWise
AWS DocsUse these official AWS links while studying or implementing this service.
AWS IoT TwinMaker
1. What is AWS IoT TwinMaker?
Digital twins for physical systems.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS IoT TwinMaker
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS IoT TwinMaker
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS IoT TwinMaker.
6. Developer code example
// SDK pattern for AWS IoT TwinMaker
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS IoT TwinMaker. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS IoT TwinMaker resources in target environment. |
| Execution/service role | iottwinmaker.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "iottwinmaker.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"iottwinmaker:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS IoT TwinMaker as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize iot & edge capability across development, testing, and production accounts.
- Integrate AWS IoT TwinMaker with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS IoT TwinMaker
AWS DocsUse these official AWS links while studying or implementing this service.
FreeRTOS
1. What is FreeRTOS?
Microcontroller OS and AWS IoT integration.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure FreeRTOS
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for FreeRTOS
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for FreeRTOS.
6. Developer code example
// SDK pattern for FreeRTOS
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for FreeRTOS. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged FreeRTOS resources in target environment. |
| Execution/service role | iot.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "iot.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"iot:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use FreeRTOS as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize iot & edge capability across development, testing, and production accounts.
- Integrate FreeRTOS with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for FreeRTOS
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Migration Hub
1. What is AWS Migration Hub?
Central migration tracking and discovery.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Migration Hub
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Migration Hub
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Migration Hub.
6. Developer code example
// SDK pattern for AWS Migration Hub
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Migration Hub. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Migration Hub resources in target environment. |
| Execution/service role | mgh.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "mgh.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"mgh:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Migration Hub as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize migration & transfer capability across development, testing, and production accounts.
- Integrate AWS Migration Hub with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Migration Hub
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Application Migration Service
1. What is AWS Application Migration Service?
Lift-and-shift server migration.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Application Migration Service
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Application Migration Service
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Application Migration Service.
6. Developer code example
// SDK pattern for AWS Application Migration Service
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Application Migration Service. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Application Migration Service resources in target environment. |
| Execution/service role | mgn.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "mgn.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"mgn:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Application Migration Service as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize migration & transfer capability across development, testing, and production accounts.
- Integrate AWS Application Migration Service with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Application Migration Service
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Database Migration Service
1. What is AWS Database Migration Service?
Database migration and replication.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Database Migration Service
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Database Migration Service
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Database Migration Service.
6. Developer code example
// SDK pattern for AWS Database Migration Service
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Database Migration Service. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Database Migration Service resources in target environment. |
| Execution/service role | dms.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "dms.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"dms:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Database Migration Service as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize migration & transfer capability across development, testing, and production accounts.
- Integrate AWS Database Migration Service with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Database Migration Service
AWS DocsUse these official AWS links while studying or implementing this service.
AWS DataSync
1. What is AWS DataSync?
Data migration and sync.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS DataSync
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS DataSync
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS DataSync.
6. Developer code example
// SDK pattern for AWS DataSync
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS DataSync. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS DataSync resources in target environment. |
| Execution/service role | datasync.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "datasync.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"datasync:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS DataSync as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize migration & transfer capability across development, testing, and production accounts.
- Integrate AWS DataSync with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS DataSync
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Transfer Family
1. What is AWS Transfer Family?
Managed file transfer.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Transfer Family
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Transfer Family
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Transfer Family.
6. Developer code example
// SDK pattern for AWS Transfer Family
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Transfer Family. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Transfer Family resources in target environment. |
| Execution/service role | transfer.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "transfer.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"transfer:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Transfer Family as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize migration & transfer capability across development, testing, and production accounts.
- Integrate AWS Transfer Family with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Transfer Family
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Snow Family
1. What is AWS Snow Family?
Offline data transfer and edge compute.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Snow Family
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Snow Family
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Snow Family.
6. Developer code example
// SDK pattern for AWS Snow Family
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Snow Family. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Snow Family resources in target environment. |
| Execution/service role | snowball.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "snowball.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"snowball:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Snow Family as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize migration & transfer capability across development, testing, and production accounts.
- Integrate AWS Snow Family with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Snow Family
AWS DocsUse these official AWS links while studying or implementing this service.
Migration Evaluator
1. What is Migration Evaluator?
Business case and migration assessment.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Migration Evaluator
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Migration Evaluator
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Migration Evaluator.
6. Developer code example
// SDK pattern for Migration Evaluator
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Migration Evaluator. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Migration Evaluator resources in target environment. |
| Execution/service role | migrationhub.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "migrationhub.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"migrationhub:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Migration Evaluator as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize migration & transfer capability across development, testing, and production accounts.
- Integrate Migration Evaluator with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Migration Evaluator
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Application Discovery Service
1. What is AWS Application Discovery Service?
Discover on-premises servers and dependencies.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Application Discovery Service
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Application Discovery Service
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Application Discovery Service.
6. Developer code example
// SDK pattern for AWS Application Discovery Service
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Application Discovery Service. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Application Discovery Service resources in target environment. |
| Execution/service role | discovery.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "discovery.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"discovery:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Application Discovery Service as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize migration & transfer capability across development, testing, and production accounts.
- Integrate AWS Application Discovery Service with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Application Discovery Service
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Mainframe Modernization
1. What is AWS Mainframe Modernization?
Modernize and migrate mainframe workloads.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Mainframe Modernization
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Mainframe Modernization
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Mainframe Modernization.
6. Developer code example
// SDK pattern for AWS Mainframe Modernization
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Mainframe Modernization. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Mainframe Modernization resources in target environment. |
| Execution/service role | m2.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "m2.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"m2:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Mainframe Modernization as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize migration & transfer capability across development, testing, and production accounts.
- Integrate AWS Mainframe Modernization with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Mainframe Modernization
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Elemental MediaConnect
1. What is AWS Elemental MediaConnect?
Live video transport service.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Elemental MediaConnect
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Elemental MediaConnect
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Elemental MediaConnect.
6. Developer code example
// SDK pattern for AWS Elemental MediaConnect
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Elemental MediaConnect. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Elemental MediaConnect resources in target environment. |
| Execution/service role | mediaconnect.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "mediaconnect.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"mediaconnect:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Elemental MediaConnect as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize media services capability across development, testing, and production accounts.
- Integrate AWS Elemental MediaConnect with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Elemental MediaConnect
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Elemental MediaConvert
1. What is AWS Elemental MediaConvert?
File-based video transcoding.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Elemental MediaConvert
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Elemental MediaConvert
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Elemental MediaConvert.
6. Developer code example
// SDK pattern for AWS Elemental MediaConvert
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Elemental MediaConvert. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Elemental MediaConvert resources in target environment. |
| Execution/service role | mediaconvert.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "mediaconvert.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"mediaconvert:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Elemental MediaConvert as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize media services capability across development, testing, and production accounts.
- Integrate AWS Elemental MediaConvert with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Elemental MediaConvert
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Elemental MediaLive
1. What is AWS Elemental MediaLive?
Live video encoding.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Elemental MediaLive
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Elemental MediaLive
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Elemental MediaLive.
6. Developer code example
// SDK pattern for AWS Elemental MediaLive
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Elemental MediaLive. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Elemental MediaLive resources in target environment. |
| Execution/service role | medialive.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "medialive.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"medialive:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Elemental MediaLive as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize media services capability across development, testing, and production accounts.
- Integrate AWS Elemental MediaLive with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Elemental MediaLive
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Elemental MediaPackage
1. What is AWS Elemental MediaPackage?
Video origination and packaging.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Elemental MediaPackage
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Elemental MediaPackage
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Elemental MediaPackage.
6. Developer code example
// SDK pattern for AWS Elemental MediaPackage
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Elemental MediaPackage. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Elemental MediaPackage resources in target environment. |
| Execution/service role | mediapackage.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "mediapackage.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"mediapackage:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Elemental MediaPackage as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize media services capability across development, testing, and production accounts.
- Integrate AWS Elemental MediaPackage with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Elemental MediaPackage
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Elemental MediaStore
1. What is AWS Elemental MediaStore?
Low-latency media storage.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Elemental MediaStore
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Elemental MediaStore
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Elemental MediaStore.
6. Developer code example
// SDK pattern for AWS Elemental MediaStore
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Elemental MediaStore. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Elemental MediaStore resources in target environment. |
| Execution/service role | mediastore.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "mediastore.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"mediastore:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Elemental MediaStore as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize media services capability across development, testing, and production accounts.
- Integrate AWS Elemental MediaStore with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Elemental MediaStore
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Elemental MediaTailor
1. What is AWS Elemental MediaTailor?
Server-side ad insertion and channel assembly.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Elemental MediaTailor
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Elemental MediaTailor
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Elemental MediaTailor.
6. Developer code example
// SDK pattern for AWS Elemental MediaTailor
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Elemental MediaTailor. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Elemental MediaTailor resources in target environment. |
| Execution/service role | mediatailor.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "mediatailor.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"mediatailor:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Elemental MediaTailor as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize media services capability across development, testing, and production accounts.
- Integrate AWS Elemental MediaTailor with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Elemental MediaTailor
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Interactive Video Service (IVS)
1. What is Amazon Interactive Video Service (IVS)?
Managed low-latency live streaming.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Interactive Video Service (IVS)
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Interactive Video Service (IVS)
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Interactive Video Service (IVS).
6. Developer code example
// SDK pattern for Amazon Interactive Video Service (IVS)
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Interactive Video Service (IVS). |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Interactive Video Service (IVS) resources in target environment. |
| Execution/service role | ivs.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ivs.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"ivs:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Interactive Video Service (IVS) as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize media services capability across development, testing, and production accounts.
- Integrate Amazon Interactive Video Service (IVS) with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Interactive Video Service (IVS)
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon GameLift
1. What is Amazon GameLift?
Managed game server hosting.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon GameLift
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon GameLift
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon GameLift.
6. Developer code example
// SDK pattern for Amazon GameLift
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon GameLift. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon GameLift resources in target environment. |
| Execution/service role | gamelift.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "gamelift.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"gamelift:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon GameLift as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize specialized, quantum & satellite capability across development, testing, and production accounts.
- Integrate Amazon GameLift with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon GameLift
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Braket
1. What is Amazon Braket?
Quantum computing service for experimenting with quantum hardware/simulators.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Braket
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Braket
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Braket.
6. Developer code example
// SDK pattern for Amazon Braket
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Braket. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Braket resources in target environment. |
| Execution/service role | braket.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "braket.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"braket:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Braket as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize specialized, quantum & satellite capability across development, testing, and production accounts.
- Integrate Amazon Braket with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Braket
AWS DocsUse these official AWS links while studying or implementing this service.
AWS Ground Station
1. What is AWS Ground Station?
Satellite ground station as a service.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS Ground Station
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS Ground Station
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS Ground Station.
6. Developer code example
// SDK pattern for AWS Ground Station
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS Ground Station. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS Ground Station resources in target environment. |
| Execution/service role | groundstation.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "groundstation.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"groundstation:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS Ground Station as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize specialized, quantum & satellite capability across development, testing, and production accounts.
- Integrate AWS Ground Station with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS Ground Station
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Omics
1. What is Amazon Omics?
Bioinformatics and genomics workflow/storage/analytics.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Omics
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Omics
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Omics.
6. Developer code example
// SDK pattern for Amazon Omics
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Omics. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Omics resources in target environment. |
| Execution/service role | omics.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "omics.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"omics:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Omics as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize specialized, quantum & satellite capability across development, testing, and production accounts.
- Integrate Amazon Omics with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Omics
AWS DocsUse these official AWS links while studying or implementing this service.
AWS RoboMaker
1. What is AWS RoboMaker?
Robotics simulation and application development service.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure AWS RoboMaker
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for AWS RoboMaker
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for AWS RoboMaker.
6. Developer code example
// SDK pattern for AWS RoboMaker
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for AWS RoboMaker. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged AWS RoboMaker resources in target environment. |
| Execution/service role | robomaker.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "robomaker.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"robomaker:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use AWS RoboMaker as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize specialized, quantum & satellite capability across development, testing, and production accounts.
- Integrate AWS RoboMaker with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for AWS RoboMaker
AWS DocsUse these official AWS links while studying or implementing this service.
Amazon Managed Blockchain
1. What is Amazon Managed Blockchain?
Managed blockchain networks and node access.
2. Concepts you must know
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
The execution environment or engine that runs code. Pick based on language, dependencies, and support lifecycle.
Controls connectivity, isolation, ingress, egress, and private access paths.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
AWS guardrails that affect scale. Check before launch and request increases if needed.
Controls access. Learn who assumes the role, what actions are allowed, and which resource ARNs are valid.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
A core building block for using this service correctly as a developer. Understand what it does, when to use it, and how it fails.
Used to observe production behavior, errors, latency, usage, cost, and operational health.
AWS guardrails that affect scale. Check before launch and request increases if needed.
3. Capabilities and when to use them
| Capability | Explanation | Production scope |
|---|---|---|
| Runtime / OS | Choose what environment the code runs in. | Pin/deploy reproducibly with CI/CD and verify support lifecycle. |
| Scaling | Scale vertically, horizontally, or by events depending on the service. | Test with expected peak traffic and configure quotas/autoscaling/alarms. |
| Networking | Decide public/private access, VPC, security groups, and load balancing. | Document owner, environment, tags, failure mode, and runbook before launch. |
| Identity | Use roles, instance profiles, or service roles instead of static keys. | Document owner, environment, tags, failure mode, and runbook before launch. |
| IAM | Use least-privilege permissions; verify exact actions/resources in AWS Service Authorization Reference. | Must be reviewed before production; misconfiguration can expose data or allow privilege escalation. |
| Operations | Add tags, monitoring, audit trail, quota checks, and cost alerts. | Document owner, environment, tags, failure mode, and runbook before launch. |
4. How to create/configure Amazon Managed Blockchain
- Open the AWS service console.
- Choose the region.
- Create the compute resource with a minimal test configuration.
- Attach a least-privilege role.
- Configure networking, logging, and tags.
- Test with a small workload before production.
5. CLI / IaC starter
# Starter developer workflow for Amazon Managed Blockchain
aws configure sso # recommended for human access
aws sts get-caller-identity
# Use the service console or CloudFormation/CDK first.
# Check official docs for the exact CLI create command and required parameters for Amazon Managed Blockchain.
6. Developer code example
// SDK pattern for Amazon Managed Blockchain
// Replace ServiceClient and Command with the specific AWS SDK v3 client/command.
// Always catch AccessDenied, Throttling, ValidationException, and networking errors.
async function callAwsService(client, command) {
try {
const result = await client.send(command);
return result;
} catch (err) {
console.error('AWS error:', err.name, err.message);
throw err;
}
}
7. IAM role design
Create separate permissions for: human developers, CI/CD deployment pipelines, and runtime/service execution. Use IAM Identity Center or federation for humans. Use roles for workloads. Avoid long-lived access keys.
| Role | Who assumes it? | What it should allow |
|---|---|---|
| Developer read/debug role | Federated engineer | List, describe, get logs/metrics, read safe configuration for Amazon Managed Blockchain. |
| Deployment role | CI/CD pipeline | Create/update/delete only tagged Amazon Managed Blockchain resources in target environment. |
| Execution/service role | managedblockchain.amazonaws.com | Only permissions the service needs at runtime, for example logs, KMS, S3, DynamoDB, SQS, or service-specific actions. |
8. Sample trust policy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "managedblockchain.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
9. Sample permission policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ServiceDeveloperAccess",
"Effect": "Allow",
"Action": [
"managedblockchain:*"
],
"Resource": "*"
}
]
}
10. Integrations and triggers
- IAM
- CloudTrail
- CloudWatch
- KMS where supported
- AWS CLI/SDK
- CloudFormation/CDK/Terraform
11. Monitoring, metrics, logs, and audit
- CloudTrail: audit who called create/update/delete/list APIs.
- CloudWatch metrics: track service health, errors, throttling, latency, utilization, and custom KPIs.
- CloudWatch Logs or service logs: enable where supported and set retention.
- Alarms: create alarms for errors, throttles, rejected requests, unhealthy resources, and cost anomalies.
- Dashboards: create service-specific views for developers and operations.
12. Security and production design
- Use least privilege IAM and deny risky actions in production.
- Use KMS encryption where the service stores sensitive data.
- Use private networking/VPC endpoints where supported.
- Separate dev/test/prod accounts or environments.
- Use tags for cost, owner, environment, application, and data classification.
- Define backup, restore, retry, DLQ, failover, and incident response procedures.
13. Business use cases
- Use Amazon Managed Blockchain as a managed service instead of building and operating equivalent infrastructure yourself.
- Standardize specialized, quantum & satellite capability across development, testing, and production accounts.
- Integrate Amazon Managed Blockchain with IAM, CloudTrail, CloudWatch, KMS, and IaC to meet production governance requirements.
14. Common mistakes and fixes
| Mistake | Fix |
|---|---|
| Using broad permissions | Start read-only, then add exact create/update/delete actions. |
| No environment separation | Separate dev/test/prod accounts or resources. |
| Ignoring quotas/cost | Check Service Quotas and pricing before production rollout. |
15. Beginner-to-expert practice path
- Beginner: create a demo resource manually and understand every field.
- Junior developer: repeat the same setup using AWS CLI.
- Developer: build a small app that uses the service through SDK/API.
- Production developer: move setup to IaC, add IAM least privilege, logs, metrics, alarms, retries, and runbooks.
- Expert: design multi-account, multi-region, cost-optimized, compliant architecture with failure testing.
Official AWS links for Amazon Managed Blockchain
AWS DocsUse these official AWS links while studying or implementing this service.