AWS Shared Responsibility Model
AWS Shared Responsibility Model
### "AWS has the responsibilty OF the cloud. Customer has the responsibility IN the cloud."
As a customer of AWS - you are not responsible for the hardware, software, networking, and facilities
that run AWS Cloud services across its regions, AZs, data centers and edge locations.
Depending on the Cloud Model - AWS and it's customer share responsibilities for different layers.
However, the customer is Never responsible for the virtualization or the underlying physical
infrastructure.
* Patch Management
* Configuration Management
* Zone Security
* which may require a customer to route or zone data within specific security environments.
AWS is responsible for protecting and securing their infrastructure like whatever is in their data centers.
Physical security of AWS data center. AWS maintains UPS, CRAC, fire suppression systems and more.
AWS is responsible for any managed service and underlying software, operating system.
You are responsible for your data and applications. Application Data including encryption options.
Security configuration - rotating credentials, APIs, VPC access etc. Patching guest operating system of
EC2 instances. IAM - application security, identity and access management for systems. Network traffice
- you are responsible for it including group firewall configuration.
Rotate your keys and change your password, then contact the AWS Trust & Safety team using the
Report Amazon AWS abuse form.
# AWS Security Best Practices
## Root User
* Change your account settings. This includes the account name, email address, root user password,
and root user access keys.
* Restore IAM user permissions. If the only IAM administrator accidentally revokes their own
permissions, you can sign in as the root user to edit policies and restore those permissions.
View Billing permission can view and download VAT invoices from AWS Europe, but not AWS Inc. or
Amazon Internet Services Private Limited (AISPL).
* Edit or delete an Amazon Simple Storage Service (Amazon S3) bucket policy that includes an invalid
virtual private cloud (VPC) ID or VPC endpoint ID
* Request AWS GovCloud (US) account root user access keys from AWS Support.
VPC - Vitual Private Cloud. Default VPC will always be created for you.
# Concepts
1. Authentication
1. Authorization
* Determines which services and resources the idenitity has access to.
1. Least Privilege
* Give a user the minimum access required to get the job done.
# IAM
1. [IAM] * A web service that allows you securely control access to AWS resources.
1. Users * Entities in IAM to represent a person or application that can be given access to your AWS
resources.
* Can you nest groups? Can you have group inheritance? Are there unlimited groups that can be
created?
1. Roles
* Roles define access permissions and are temporarily assumed by an IAM user or service.
* You grant users in one AWS account access to resources in another AWS acccount using roles.
* Attach a role to an EC2 instance for access to S3. Applications running on that instance will have
access to S3 via roles. This is useful because the application will not need credentials or access keys. This
is most secure.
1. Policies
* You manage persmissions for IAM users, groups, and roles by creating a policy document in JSON
format and attaching it. The policy itself is decoupled from IAM identitieis.
* Role - {Policy:Allow-S3-Access} - S3
* How to limit access to an Amazeon S3 to specific users only? You can add a bucket access policy
directly to an Amazon S3 bucket to grant IAM users accesss. I wonder if there is another way, create a
special bucket access group with policy to the group, and then add users to the group. Or add users to
the policy directly.
* Assistance with compliance and auditing by offering a downloadable report that lists all your IAM
users in this account and the status of their various credentials including MFA devices in your account.
## Security Services
1. [WAFXSS SQL-Injection
* WAF is a Web Application Firewall that can protect against common attacks such as XSS or SQL
injection.
1. [Shield] DDOS
* AWS Shielf is a managed DDOS protection service. Sheild standard is free but Sheild Advanced
provides access to AWS experts for a fee.
* DDOS protections from CloudFront, Route53, Elastic Load Balancing, and AWS Global Accelerator.
* Receive real-time notifications of suspected DDoS incidents via CloudWatch metrics and assistance
from AWS during the attack.
* Automatically scrub bad traffic at specific layers: layer 3,4 and 7. Minimize application downtime
and latency. Monitor and protect up to 1000 resource types.
* Helps you discover and protect sensitive data. Uses maching learning, evaluates S3 environment,
uncovers PII information.
* Use cases: discover passport numbers stored on S3 using Macie. Find SSNs in S3 files.
* Use cases: Streamline operational troubleshooting and change management. Deploy a complicant-
as-code framework. Continually audit security monitoring and analysis.
* Continuously monitors workload for malicious activity and delivers detailed security findings for
visibility and remediation. Network and API calls.
* Use cases: Improve security operations visibility. Assist security analysts in investigations. Identify
files containing malware. Route insightful information on security findings.
* Automate vulnerability management at scale in EC2, Lambda and ECR container images and network
exposure.
* Automated vulnerability management service that continually scans workloads for software
vulnerabilities and unintended network exposure. EC2.
* Use cases: Quickly discover vulnerabilities in compute workloads. Prioritize patch remediation. Meet
compliance requirements. Identify zero-day vulnerabilities sooner.
1. [Artifact]Compliance Report
* Use artifact to SOC and PCI compliance reports. You can generate the report. Access to the report
can be provided. Self-service portal.
1. [Cognito]CIAM
* Delivery frictionless CIAM. Adaptive authentication, support compliance, and data residency
requirements. Scale to millions of users with a fully managed, high-performantm and reliable identity
store. Federate sign-in using OIDC or SAML 2.0 connect to a broad group of AWS services and products.
* Create and control encryption keys managed by AWS used to encrypt or digitally sign your data.
* Centrally manage keys and define policies across integrated services and application from a single
point.
* Encrypt data within your applications with the AWS Encryption SDK data encryption library.
* Use case: Generate and use cryptographic keys on dedicated FIPS 140-2 Level 3 single-tenant HSM
instances. Deploy workloads with high reliability and low latency, and help meet regulatory compliance.
Pay by the hour, and backup and shut down HSMS when they're not needed. Manage HSM capacity and
control your costs by adding and removing HSMs from your cluster.
* Use cases: Store secrets securely, manage acess with fine-grained policies, automate secrets
rotation, audit and monitor secrets usage.
* Database credentials, API keys, encrypt secrets at rest, integreates with RDS, DOcumentDB,
Redshift.
* Retrieve database credentials needed for your application code. Secrets Manager allows you to
retrieve database credentials with a call to Secrets Manager APIs, removing the need to hardcode
sensitive information in plain text within your application code.
* Use key management for certs and get managed certificate renewal.
* Use case: Applications are under development, workloads are not expected to run for more than a
year, no upfront payment or long-term committment, unpredictable workloads but don't want to be
interrupted.
* Pay the least but no guarantee of runtimes or interruptions. A 2-minute warning is provided via
instance meta-data that your application should check for and prepare for shutdown.
* Use case: Start and stop time of the workload does not matter. 90% savings over On-Demand.
When your workload is feasable only at the lowest price points.
* Use case: Save 75% versus On-Demand and willing to pay upfront for 1 or 3 year reservation.
* Flexibility: All upfront, partial upfront or no upfront is possible. A contract is required. Provides
convertible types at 54% discount - change tenancy, OS or region.
* [Dedicated Host](: Dedicated bare metal rental and host exclusively for you to install software
that have licensing tied to host size.
* Use Case: Save 70% off of On-Demand. Software that is licensed based on per-core, per-socket or
per-VM. Regulations that require tenancy exclusivity.
* Savings Plan: Compute usage committment for 1 or 3 years applicable across multiple compute
services.
* Use Case: For flexibility across various services like Lambda, Fargate, and EC2.
* Free Tier - the free tier includes 1 million free requests each month
* S3 Pricing
* Storage Class
* RDS Pricing
Compute, storage and outbound data transfer is where the costs are for AWS. Data in flight moving
between system. Data movement within the AWS region are usually not charged. Data out of AWS to
end user is where the data transfer costs are.
1. [TCO] * Total Cost of Ownership. Direct and indirect cost of running AWS workloads. How can I
reduce my TCO using AWS?
1. [AWS Price List API * Query the price of AWS Services using JSON or CSV. Bulk price or
individual APIs.
* You can view the discovered servers, group them into applications, and then track the migration
status of each application from the Migration Hub console in your home Region.
1. [Budgets] * Set custom budgets for cost and usage tracking. Alerts.
* You can choose to be notified through email and Amazon SNS topics when your utilization drops
below 80 percent for a given day.
1. [Cost and Usage Reports * Break down costs by the hour, day, or month, by product or product
resource, or by tags that you define yourself.
* If you get a huge bill - this is where you need to find the needle in the haystack.
* Downloadable detailed and comprehensive report, list usage for each service category and
aggregate usage data on a daily, hourly or monthly level.
1. [Cost Explorer * Visualize, understand, and manage your AWS costs and usage over time.
* Forecast, build custom apps that use it's apis, and use granular filtering offered by it's analytical
engine.
1. [Organizations
* Centrally manage your environment as you scale your AWS resources. Consolidate billing, save
costs via volume discounts + reserved instance sharing and govern accounts centrally.
* Centrally secure and audit. Manage and optimize costs centrally. Group accounts and apply
policies across.
* Root Organization is the master payer account that pays for all the accounts.
* You can apply Service Control Policies (SCPs) across all member accounts within the organization.
1. [Control Tower * Set up well-architected multi-account environments with pre-configured
controls to ensure best practices.
* Example, if you want to disallow public write access to all S3 buckets across your accounts - you
can use Control Tower to enforce this.
1. [Systems Manager](https://aws.amazon.com/systems-manager/)
* Operation insights into AWS resources, other cloud resources and on-prem resources.
* Visibility and control. Group resources to take action. Patch and run commands on multiple EC2
and RDS.
* Usecase: Deploy operating system and software patchs automatically across a large group of
instances.
1. [Trusted Advisor * Cost, Performance, Security, Fault Tolerance, and Service Limits.
* Checks IAM password policy (not free). RDS public snapshot, service usage greater than 80%
(available to business or enterprise). Check for exposed access keys (business support) and various other
checks.
* Use case: check read and write capacity service limits for DynamoDB.
1. [Marketplace]
1. [AWS Partner Network (APN)] * Global community of approved partners that offer solutions
and consulting services
1. [Managed Services]
1. [Professional Services]
* Propose solutions.
* Architect soutions.
## [Support Plans])
1. Basic - free.
1. Developer - $29 pm :
* 1 contact.
1. Business - $100 pm :
* Production workloads.
* Unlimited contact.
* Email, phone and chat 24/7. Production system down - less than one hour.
1. Enterprise - $15k pm
* Exclusive: Technical Account Manager, Concierge support team, infrastructure event support.
AWS is faster, cheaper, durable and more reliable than most internally managed data centers.
1. Fast Global Deployment in Minutes * AWS has regions globally and deployments can be done in
minutes.
1. Speed to Market with Agility * Faster innovation with AWS allows for faster delivery to customers.
1. Discounts from economies of scale * Costs are shared across users and cheap due to economies of
scale.
1. No upfront cost to running and maintaining data centers * Quickly get an application deployed
without thinking about IT infrastructure.
1. OpEx in favor of CapEx * Capital Expenditures - are big upfront costs. Operating Expenses are funds
to run day-to-day operations. The accounting department will care.
### Non-functional requirements can be met with ease when hosting on public cloud
1. High Availability * Redundancy, and Failovers allow for a system to have longer uptimes.
1. Elasticity * Demand based capacity provisioning allows for optimal usage of resources that
minimizes waste.
1. Agility * AWS Services can help customers innovate faster allowing for reduced time to market.
1. Durability * AWS provides data services that offer long-term data protection and storage.
1. Latency * Time elapsed between a user request and reponse. Low latency is a good thing.
1. Private Cloud: On-prem virtualization as well as off-prem fully managed private cloud, also with
Amazone Outpost
1. Hybrid Cloud: AWS Direct Connect service connects customer's data center with Amazon.
Amazon EC2 is hosted in multiple locations world-wide. These locations are composed of AWS
Regions, Availability Zones, Local Zones, AWS Outposts, and Wavelength Zones.
1. [Region] * Is a separate geographic area. Therefore if one is impacted by a natural disaster, chances
are that another will not.
1. [Availability Zone] * An Availability Zone (AZ) is one or more discrete data centers with redundant
power, networking, and connectivity in an AWS Region.
* AZs give customers the ability to operate production applications and databases that are more
highly available, fault tolerant, and scalable than would be possible from a single data center.
* All AZs in an AWS Region are interconnected with high-bandwidth, low-latency networking, over
fully redundant, dedicated metro fiber providing high-throughput, low-latency networking between AZs.
1. [Data Center] * Two or more data centers together are part of an AZ.
1. [Local Zones] * A Local Zone is an extension of an AWS Region in geographic proximity to your users.
* Local Zones have their own connections to the internet and support AWS Direct Connect, so that
resources created in a Local Zone can serve local users with low-latency communications.
* Local Zones provide you the ability to place resources, such as compute and storage, in multiple
locations closer to your end users.
* Use case: Run latency sensitive applications closer to the end users.
1. [Wavelength Zone] * A Wavelength Zone is an isolated zone in the carrier location where the
Wavelength infrastructure is deployed. Wavelength Zones are tied to a Region.
* A Wavelength Zone is a logical extension of a Region, and is managed by the control plane in the
Region.
1. [Global Edge Network] * Amazon CloudFront peers with thousands of Tier 1/2/3 telecom carriers
globally.
* CloudFront is well connected with all major access networks for optimal performance, and has
hundreds of terabits of deployed capacity.
* CloudFront edge locations are connected to the AWS Regions through the AWS network backbone -
fully redundant, multiple 100GbE parallel fiber that circles the globe and links with tens of thousands of
networks for improved origin fetches and dynamic content acceleration.these are cached closest to
audience.
* Mini-data centers created for low latency between applications and users.
[AWS Well Architected] helps cloud architects build secure, high-performing, resilient, and efficient
infrastructure for a variety of aplications and workloads.
* Use case: S3 Intelligent Tiering to automatically move your data between access tiers based on
usage patterns.
* Maximize utilization.
The following concepts and list of AWS Core Services are essential to understand various layers of an
architecture.
* Benefits: cost optimization, performance, security, fault tolerance and service quotas.
For example, a web-based enterprise application will utilize most if no all the layers and select
technologies.
## Architecture
1. [Scalability]: Scalability is the ability to handle increased workload by repeatedly applying a cost-
effective strategy for extending a system’s capacity
1. [Fault Tolerance]: Is the property that enables a system to continue operating properly in the event of
a failure of one or more faults withing some if its components.
1. [High Availability]: Property of a system to serve the business without failure over a given period of
time.
1. [Principle of least priviledge]: Every program and every user of the system should operate using the
least set of privileges necessary to complete the job. Primarily, this principle limits the damage that can
result from an accident or error.
## Billing
1. [AWS Organization]
* Account management services that enables you to consolidate multiple AWS Accounts into an
organization that you create and centrally manage.
1. [Consolidated billing)
* AWS Organizations has a management account that pays the charges of all the member accounts.
1. [Firewall] * AWS Network Firewall automatically scales your network firewall to protect your
managed infrastructure.
* Open source rule formats and underlying rules engine easily implements policies.
1. [IAM] * Identity and Access Managment (IAM) sets and manages guardrails and fine-grained access
controls for your workforce and workloads.
* Grant temporary security credentials for workloads that access your AWS resources.
* Usecase: "Who can access what" Who=users and workloads. Can access= Permissions with IAM
policy. What=Resources within your AWS organization.
1. [Security Group (SG) * Is a virtual firewall for EC2 instances to control incomcing and outgoing
traffic.
* Identity types: Account Root User, AWS Identity and Access Management user, AWS IAM Identity
Center user and Federated identity.
* ACL can grant basic read/write permissions to other AWS accounts to buckets and objects.
1. [AWS Global Accelerator] : Global Traffic * Improve application availability, performance, and
security using the AWS global network.
* Usecases: global traffic manager, API acceleration, Global static IP, low-latency gaming and media
workloads.
* Global accelerator sends your users through the AWS global network when accessing your content,
speeding up delivery.
1. [AWS Transit Gateway] : No more peering * AWS Transit Gateway connects your Amazon Virtual
Private Clouds (VPCs) and on-premises networks through a central hub.
* Highly scalable cloud router where each new connection is made only once.
1. [Virtual Private Cloud (VPC)]: Slice of the cloud * Foundational service that creates a private virtual
network to launch resources.
* The default VPC always exists in every region. But all new VPCs are region specific.
1. [Subnet] : One per AZ * A subnet is a range of IP address in the VPC. This is a sub-network which
allows you to split the network inside the VPC - it is where resources such as EC2 can be launched.
* A private subnet is a good choice for hosting a Database - it will not be accessible directly from the
Internet
* A public subnet is a good choice for hosting a WebServer - however it requires a NACL, Router and
IG to ensure Internet connectivity
* Each subnet must reside entirely within one Availability Zone and cannot span zones. For HA, launch
EC2 instances into subnets of separate AZs
* Public subnet: The subnet has a direct route to an internet gateway. Resources in a public subnet
can access the public internet.
* Private subnet: The subnet does not have a direct route to an internet gateway. Resources in a
private subnet require a NAT device to access the public internet.
* VPN-only subnet: The subnet has a route to a Site-to-Site VPN connection through a virtual private
gateway. The subnet does not have a route to an internet gateway.
* A subnet CIDR reservation is a range of IPv4 or IPv6 addresses that you set aside so that AWS can't
assign them to your network interfaces.
1. [NACL versus Security Group] Subnet and Instance traffic rules. * NACL is `stateless` and allow one-
way traffic i.e. separatly specific inbound and outbound traffic to the subnet.
* NACL allow and deny rules are supported. NACLs have an implicit `deny`. NACL rules are processed
in order.
* Security Group is stateful i.e. rules for inbound and outbound to EC2 instances are same. They allow
return traffic.
1. [AWS Direct Connect]: VLAN * Dedicated physical network connection from your on-premises data
center to AWS
* Data travels over a private network - virtual LAN from on-prem data center over ethernet fiber optic
cable.
* Supports hybrid cloud architecture e.g. host database in the private cloud and the application on the
public cloud, direct connect ensures the two talk and allows for data sovereignity
* Use case: Transfer internal data directly to AWS bypassing your ISP, or, build hybrid models or
transfer large data sets to AWS.
1. [AWS VPN]VPN * Site-to-site VPN creates a secure connection between your internal network and
your AWS VPCs.
* Similar to Direct Connect - but the data travels through the public internet
* Customer Gateway hosted on-prem connects with a virtual private gateway to establish a site-to-
site VPN over the Internet via an ISP.
1. [API Gateway]: API Management * Build, manage, secure, and scale APIs.
## Compute
1. [Lambda]: Serverless Compute * Serverless: write functions and deploy. AWS manages the servers
but no direct access.
* Use case: Real-time file processing, sending email notifications, Backend business logic
* Supports Java, Go, PoweShell, Node.Js, C#, Python, and Ruby. Executes code in response to events,
timers or other triggers. Lambda has ’re actively hiring engineers as we respond to changing market
conditr - deploy a db or web server whatever you need
* SSH securly connects with a key pair. SSH Client uses private key, the EC2 instance uses a public key
* EIC is EC2 Instance Connect - uses IAM polices to control SSH access to your instances
* AWS Systems Manager- use a web browser, or AWS CLI to manage EC2 instances directly
* Automatically distribute load across servers - classic, application, gateway and network load
balancers.
1. [Lightsail]: IAC * Quickly lauch all resources you need for small projects.
1. [Outpost] Hybrid Cloud * Run AWS Infrastructure and services on premises for a consistent hybrid
cloud architecture.
* Allows cloud services in the internal data ’re actively hiring engineers as we respond to changing
market conditcenter
* Example - send high volume email 1000 emails at a time or process ML.
1. [Relational Database Service (RDS)] * Launch, manage and scale relational databases on the cloud.
Supports Aurora, PostgreSQL, MySQL, MariaDB, Oracle, SQLServer.
* Launch read-repliccas across Regions in order to provide enhanced performance and durability.
1. [Aurora] * AWS build Aurora for the cloud compatible with MySQL and PostgreSQL - created by
AWS.
* Supported MySQL and PostgreSQL database enginges. 5x and 3x faster that native.
* Scales automatically by adding capacity and storage while providing durability and high availability.
* Serverless, scales enterprise workloads using a fully managed native JSON document database.
* Usecases: Customer360, Detect fraud patterns, machine learning predictions, IT security detection
and investigation.
* Usecases: Application performance, ease backend database load, low latency data retrieval needs.
* [Feature rich tool] that helps you migrate databases to or within AWS.
1. [Server Migration Service): Deprecated in favor of AWS MGN (AWS Application Migration Services)
* AWS Server Migration Service will automatically replicate live server volumes to AWS and create
Amazon Machine Images (AMI) as needed.
* Migrate applications from any source infrastructure that runs supported operating systems.
1. [Snow Family] * Move large amounts of data to and from AWS physically or process data at the
edge.
* Snowball: 80TB. Cheaper And Snowball Edge used for petabyte scale data migration and has local
processing when in a remote environment - supports EC2 and lambda.
* Snowmobile: 100PB. Multi-perabyte or exabyte scale. Data loaded to S3 - securely transported with
escort vehicle.
## Data Analytics
1. [RedShift : Data warehouse * Data warehouse: data storage solution with historical data from
disparate sources.
* Use case: Data consolidation. Run a database when it doesn't require CRUD.
1. [Glue : ETL * Discover, prepare, and integrate all your data at any scale.
* ETL Service.
1. [Lake Formation: Data Lake * Build, manage, and secure data lakes in days.
* Create, administer, and protect data lakes using familiar database-like features quickly.
1. [QuickSight] BI * Business Analytics visualization of data with interactive dashboards that can be
embedded in your applications
1. [Athena]: SQL for S3 * Analyze petabyte-scale data where it lives with ease and flexibility.
* Use cases: run federated queries across relational, nonrelational, object, and custom data sources
running on premises or in the cloud. Use ML models in SQL queries or Python. Build distributed big data
reconciliation engines. Analyze google analytics data by using AppFlow to store in S3 to query it.
1. [Data Pipeline](https://aws.amazon.com/datapipeline/) :
* Helps you move data between compute and storage services running either AWS or on-premises
1. [EMR] Map Reduce * Process large amounts of data via map reduce.
* Usecase: Perform big data analytics, build scalable data piplelines, process real-time data streams,
accelerate data science and ML adoption.
## Streams
1. [Kinesis proecessor * Easily collect, process, and analyze video and data streams in real time.
* Usecase: Real-time video and data streams, IoT Data, Click Log, Web Stream logs are good use-cases.
* Usecase: Ingest and process log and event streams, run centralized state or data buses, power your
event-driven systems
1. [Comprehend]: NLP
1. [Polly] Speech-to-text
* Customize Text to speech output with Speech Synthesis Markup Language tags.
1. [SageMaker]: ML
* Helps you build, train and deploy machine learning models quickly.
* Prepare data for models, train and deploy models, provides deep learning AMIs.
1. [Translate]: Translate
* Provides language tanslation and support many languages and content formats.
1. [Lex]chatbot
* Usecases: Build virtual agents and voice assistants, automate informational responses, improve
productivity with application bots, maxminize the information trapped in transcripts.
## Storage
1. [Simple Storage Service S3] - Regional Service with global namespace and bucket policies
* Unique name across all buckets in AWS
* 4 9s of availability
* Usecase: Host static websites, data archivale, analytics such as redshift and athena. Upload with S3
transfer acceleration for file uploads from mobile applications.
1. S3 Storage Class
* Intelligent Tiering: Unknown or changing access. Standard durability with 3-9s availability
* Infrequent Access: For Long-Lived, Infrequently Accessed, Millisecond access when needed.
Durable with 3 9s availability.
* One-Zone Infrequent Access: Cost 20% less than IA. Use if data is recreatable, infrequent
millisecond access, availability is 99.5%.
* Glacier: Data retrieval options 1-5 minutes, 3-5 hours, 5-12 hours. Multiple AZs. Standard
durability. Cheap storage options.
* Glacier Deep Archieve: 12hrs or 48hr retrieval options. Cheapest. Long-term data archivale
accessed once or twice a year. No availability - but standard durability.
* Outposts: Data that needs to be kept local. Demanding application performance needs.
* Folder
* Object Durability
* Object Availability
* Object Lifecycle
* Object sharing
* Object versioning
* S3TA improves uploads and downloads to and from S3 buckets between 50% and 500%.
* Use cases: Build SAn in the cloud for I/O intensive applications, Run relational or NoSQL databases,
reight-size your big-data analytic engine.
* EFS file system as a common data source for workloads and applications running on multiple
instances
* Some on the cloud, some local. File directory - some hosted locally some on the cloud.
* Reduce costs by being selective, opt for low latency local files.
1. [SQS]: Queue
* Fully managed message queuing for microservices, distributed systems, and servlerless applications.
* Sends messages on a queue between publisher and a single subscriber.
* Securely send sensitive data between applications and centrally manage your keys using AWS Key
Management.
* Reliably deliver large volumes of data, at any level of throughput, without losing messages or
needing other services to be available.
* Usecase: architect a loosely coupled system architecture such as money transfer application.
Improve performance and scalability. Requests are processed in FIFO.
1. [SNS]: Topic * Simple Notification Service - Fully managed Pub/Sub service for A2A and A2P
messaging.
* A2P with SMS, texts, push notifactions and email (plain text).
1. [SES]: Email * Sends rich text HTML Emails from your applications.
* Get reliable, scalable email to communicate with customers at the lowest industry prices.
## Developer Tools
1. [Cloud9]: IDE
1. [CodeCommit] : Git
* Enables CI-CD
1. [CodeDeploy]Delivery Server
* Use prepackaged build environments or your own, and encrypt artifacts with your own keys.
1. [CodeStar]: Pre-configured CI-CD with CodeCommit, CodeBuild, CodeDeploy and CodePipeline out of
the box.
* X-Ray uses trace data from the AWS resources that power your cloud applications to generate a
detailed service map. Typically, applications use nested diagnostic context (NDC) for distributed tracing
for microservices.
* The service map shows the client, your front-end service, and backend services that your front-end
service calls to process requests and persist data.
* Use the service map to identify bottlenecks, latency spikes, and other issues to solve to improve the
performance of your applications.
1. [CloudFormation]: IaC
* A CloudFormation template describes your desired resources and their dependencies so you can
launch and configure them together as a stack.
* Deploy your web applications and services to AWS and not on-prem.
* Automatically handles deployments, handles capacity provisioning, load balancing and auto-scaling.
1. [OpsWorks]): DevSecOps
* Log and retain account activity as well as unusual activity - enable operational and risk auditing,
governance, and compliance of your AWS account
* Actions taken by a user, role, or an AWS service are recorded as events in CloudTrail.
* Events include actions taken in the AWS Management Console, AWS Command Line Interface, and
AWS SDKs and APIs.
* If a user terminates an EC2 instance via an API. Cloudtrail will be able to tell which user took that
action.
* Username, event time and name, IP address, access key, region, and error code can be tracked.
1. [CloudWatch]: Logs
* Observe and monitor resources and applications on AWS, on premises, and on other clouds e.g. EC2
on AWS can be watched.
* Amazon CloudWatch is a monitoring and management service for AWS, hybrid, and on-premises
applications and infrastructure resources.
* Use cases: Monitor full stack (applications, infrastructure, network, and services) and use alarms,
logs, and events data to take automated actions and reduce mean time to resolution (MTTR).
* Enables employees to work from Home with no data stored on local devices.
* Use cases: omnichannel self-service experience, agent productivity with AI, optimize from insights.