Deep Dive on Serverless Web Applications - AWS May 2016 Webinar Series

Amazon Web Services
Amazon Web ServicesAmazon Web Services
© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Brittany Doncaster, Solutions Architect, AWS
May 24, 2016
Deep Dive on Serverless Web
Applications
Agenda
 Overview of Serverless Architecture
 Anatomy of a Web Application
 Securing the Web Application
 Demo
 Other Options
Overview of Serverless
Architectures
Serverless? What’s that mean?
What is Serverless?
Provisioning
and Utilization
Operations
and Management
Scaling Availability and
Fault Tolerance
Removes the need for….
Benefits of Serverless?
Provisioning
and Utilization
Operations
and Management
Scaling Availability and
Fault Tolerance
Which leads to….
Low Cost Simple Low Latency Scalable Reliable
Platform of Serverless Products
Storage DatabaseCompute
Messaging and QueuesGateways
User Management
Internet of Things
Machine LearningStreaming Analytics
Real-time Processing
Streams
Files
ETL
IoT Backends
Web Application Serverless Architecture
Anatomy of a Web Application
What makes up a web application?
Let’s break it down…
What makes up a web application?
What makes up a web application?
What makes up a web application?
Serverless Web Application
Where did all the servers go?
Static Website Hosting on S3 - refresher
 Specify an index document (i.e. index.html)
 Specify an error document
 Objects publicly readable
 Supports redirects
 All Requests
 Conditional
bucket with
objects
API Gateway - refresher
Create Configure Publish
Maintain Monitor Secure
API Gateway – Stage Variables
 Key/Value pairs used for configuration
 Used for different stages of API
 Specify a Lambda function name
 Pass to backend
Lambda
 Serverless, event-driven compute
 Code is: NodeJS, Python, JVM based
 Specify memory allocated
 Determine what invokes the functions
 API Gateway, S3, DynamoDB, Kinesis, SNS, SES, Cognito,
Cloudwatch Logs, Cloudwatch Events, CloudFormation,
Config, Scheduled Events
Lambda – Versioning and Aliases
Versioning
 ARN for each one (immutable)
 Versions of functions for Dev, Staging, Prod
Aliases
 Point to a version
 Have an ARN also
 Event sources point to Alias ARNs
Lambda – Dynamic Configuration
One option:
 Pull Configs from DDB
 Write values to global vars
 Code uses global vars
Lambda
Function
Amazon
DynamoDB
DynamoDB - refresher
 NoSQL database
 Keys: Hash Key and (optional) Range Key
 Tips:
 Plan your keys
 Think about your queries
Serverless Web Application
…..but what’s missing from this
architecture?
Authentication/Authorization
Securing your Serverless
Web Application
AWS IAM and AWS STS
temporary
security
credential
AWS STS
AWS cloud
client
1
2
permissionsrole
AWS IAM
OR
Amazon API
Gateway
Action: [‘s3:*’,’sts:Get*’]
Effect: Allow
Resource: *
Securing API Gateway
Cognito and STS
Authentication Options with Cognito
Federated Identity Providers
• Amazon
• Facebook
• Google
Custom Developed Authentication System
Cognito Identity User Pools (Preview)
Unauthenticated vs Authenticated roles
 Ability to define both in Cognito
 Start out unauthenticated switch to authenticated!
 browsing a blogging site then log in to post or comment
Example IAM Policy for API Gateway
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"execute-api:Invoke"
],
"Resource": [
"arn:aws:execute-api:us-east-1:acctId:apigatewayID/*/GET/posts",
"arn:aws:execute-api:us-east-1:acctId:apigatewayID/*/GET/posts/*",
"arn:aws:execute-api:us-east-1:acctId:apigatewayID/*/GET/posts/*/comments",
"arn:aws:execute-api:us-east-1:acctId:apigatewayID/*/GET/posts/*/comments/*",
"arn:aws:execute-api:us-east-1:acctId:apigatewayID/*/POST/users",
"arn:aws:execute-api:us-east-1:acctId:apigatewayID/*/POST/login"
]
}
]
}
Cognito – Authentication Flow
Amazon API
Gateway
AWS
Lambda
Other Security Features
 IAM Roles for Lambda Functions
 Client-side Encryption library using KMS for DynamoDB
Demo
Demo App Architecture
AWS Lambda
Functions
web browser
Amazon S3
Call Unauthenticated
APIs methods
StaticContent
Amazon
DynamoDB
Amazon
Cognito
Obtain
User Credentials
Amazon API
Gateway
encrypted
user data
AWS Lambda
Functions
Amazon
DynamoDB
Amazon API
Gateway
Authentication APIs
Obtain Authenticated
User Credentials
AWS STS
AWS Lambda
Functions –
Logic for POST
Functions
Amazon
DynamoDB
Amazon API
Gateway –
POST Functions
Call Authenticated
APIs methods
3
2
4
5
6
1
AWS KMS
Other Options
Authentication Options
Cognito:
• Federated Identity Providers (Amazon, Facebook, Google)
• Cognito Identity User Pools
Federated Web Identities
• Interact directly with STS and 3rd party identity providers
Authorization Options with API Gateway
API Gateway
Lambda Auth
function
Client
Request w/ a
bearer token
Policy is cached
Policy is
evaluated
AWS Lambda
functions
Endpoints on
Amazon EC2
Context + Token
Principal + Policy
403 Denied
Allowed
Any other publicly
accessible endpoint
Some Tidbits
 Authorization failures to API Gateway get returned as a
CORS error
 Lambda Functions as stage variable values = manual
permissions configuration
Architect to be Serverless
Fully Managed
 No provisioning
 Zero administration
 High availability
Developer Productivity
 Focus on the code that
matters
 Innovate rapidly
 Reduce time to market
Continuous Scaling
 Automatically
 Scale up and scale down
Q&A
1 of 44

Recommended

AWS re:Invent 2016: All Your Chats are Belong to Bots: Building a Serverless ... by
AWS re:Invent 2016: All Your Chats are Belong to Bots: Building a Serverless ...AWS re:Invent 2016: All Your Chats are Belong to Bots: Building a Serverless ...
AWS re:Invent 2016: All Your Chats are Belong to Bots: Building a Serverless ...Amazon Web Services
1K views22 slides
Serverless architecture by
Serverless architectureServerless architecture
Serverless architectureAmazon Web Services
3.2K views32 slides
A Brief Look at Serverless Architecture by
A Brief Look at Serverless ArchitectureA Brief Look at Serverless Architecture
A Brief Look at Serverless ArchitectureAmazon Web Services
2.4K views40 slides
Deep dive on Serverless application development by
Deep dive on Serverless application developmentDeep dive on Serverless application development
Deep dive on Serverless application developmentAmazon Web Services
2.2K views46 slides
AWS re:Invent 2016: Serverless Architectural Patterns and Best Practices (ARC... by
AWS re:Invent 2016: Serverless Architectural Patterns and Best Practices (ARC...AWS re:Invent 2016: Serverless Architectural Patterns and Best Practices (ARC...
AWS re:Invent 2016: Serverless Architectural Patterns and Best Practices (ARC...Amazon Web Services
10.4K views52 slides
Getting Started with Serverless Architectures | AWS Public Sector Summit 2016 by
Getting Started with Serverless Architectures | AWS Public Sector Summit 2016Getting Started with Serverless Architectures | AWS Public Sector Summit 2016
Getting Started with Serverless Architectures | AWS Public Sector Summit 2016Amazon Web Services
1.1K views37 slides

More Related Content

What's hot

Serverless Applications on AWS by
Serverless Applications on AWSServerless Applications on AWS
Serverless Applications on AWSDean Bryen
322 views74 slides
Peeling the Onion - Monoliths to Serverless Microservices on Amazon Web Services by
Peeling the Onion - Monoliths to Serverless Microservices on Amazon Web ServicesPeeling the Onion - Monoliths to Serverless Microservices on Amazon Web Services
Peeling the Onion - Monoliths to Serverless Microservices on Amazon Web ServicesAmazon Web Services
1.3K views26 slides
Building Serverless Web Applications - May 2017 AWS Online Tech Talks by
Building Serverless Web Applications  - May 2017 AWS Online Tech TalksBuilding Serverless Web Applications  - May 2017 AWS Online Tech Talks
Building Serverless Web Applications - May 2017 AWS Online Tech TalksAmazon Web Services
1.3K views36 slides
Getting Started with Serverless Architectures by
Getting Started with Serverless ArchitecturesGetting Started with Serverless Architectures
Getting Started with Serverless ArchitecturesAmazon Web Services
9.3K views52 slides
AWS Serverless concepts and solutions by
AWS Serverless concepts and solutionsAWS Serverless concepts and solutions
AWS Serverless concepts and solutionsElenaIvannikova3
67 views52 slides
Getting Started with Serverless Architectures with Microservices_AWSPSSummit_... by
Getting Started with Serverless Architectures with Microservices_AWSPSSummit_...Getting Started with Serverless Architectures with Microservices_AWSPSSummit_...
Getting Started with Serverless Architectures with Microservices_AWSPSSummit_...Amazon Web Services
885 views32 slides

What's hot(20)

Serverless Applications on AWS by Dean Bryen
Serverless Applications on AWSServerless Applications on AWS
Serverless Applications on AWS
Dean Bryen322 views
Peeling the Onion - Monoliths to Serverless Microservices on Amazon Web Services by Amazon Web Services
Peeling the Onion - Monoliths to Serverless Microservices on Amazon Web ServicesPeeling the Onion - Monoliths to Serverless Microservices on Amazon Web Services
Peeling the Onion - Monoliths to Serverless Microservices on Amazon Web Services
Amazon Web Services1.3K views
Building Serverless Web Applications - May 2017 AWS Online Tech Talks by Amazon Web Services
Building Serverless Web Applications  - May 2017 AWS Online Tech TalksBuilding Serverless Web Applications  - May 2017 AWS Online Tech Talks
Building Serverless Web Applications - May 2017 AWS Online Tech Talks
Amazon Web Services1.3K views
Getting Started with Serverless Architectures by Amazon Web Services
Getting Started with Serverless ArchitecturesGetting Started with Serverless Architectures
Getting Started with Serverless Architectures
Amazon Web Services9.3K views
Getting Started with Serverless Architectures with Microservices_AWSPSSummit_... by Amazon Web Services
Getting Started with Serverless Architectures with Microservices_AWSPSSummit_...Getting Started with Serverless Architectures with Microservices_AWSPSSummit_...
Getting Started with Serverless Architectures with Microservices_AWSPSSummit_...
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S... by Amazon Web Services
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...
Amazon Web Services1.2K views
Migrate your Existing Express Apps to AWS Lambda and Amazon API Gateway by Amazon Web Services
Migrate your Existing Express Apps to AWS Lambda and Amazon API GatewayMigrate your Existing Express Apps to AWS Lambda and Amazon API Gateway
Migrate your Existing Express Apps to AWS Lambda and Amazon API Gateway
Amazon Web Services4.2K views
AWS re:Invent 2016: Building Complex Serverless Applications (GPST404) by Amazon Web Services
AWS re:Invent 2016: Building Complex Serverless Applications (GPST404)AWS re:Invent 2016: Building Complex Serverless Applications (GPST404)
AWS re:Invent 2016: Building Complex Serverless Applications (GPST404)
Amazon Web Services1.8K views
Migrating your .NET Applications to the AWS Serverless Platform by Amazon Web Services
Migrating your .NET Applications to the AWS Serverless PlatformMigrating your .NET Applications to the AWS Serverless Platform
Migrating your .NET Applications to the AWS Serverless Platform
Amazon Web Services4.5K views
Getting Started with AWS Lambda and Serverless Computing by Kristana Kane
Getting Started with AWS Lambda and Serverless ComputingGetting Started with AWS Lambda and Serverless Computing
Getting Started with AWS Lambda and Serverless Computing
Kristana Kane350 views
AWS re:Invent 2016: Building SaaS Offerings for Desktop Apps with Amazon AppS... by Amazon Web Services
AWS re:Invent 2016: Building SaaS Offerings for Desktop Apps with Amazon AppS...AWS re:Invent 2016: Building SaaS Offerings for Desktop Apps with Amazon AppS...
AWS re:Invent 2016: Building SaaS Offerings for Desktop Apps with Amazon AppS...
Amazon Web Services1.5K views
SRV203 Getting Started with AWS Lambda and the Serverless Cloud by Amazon Web Services
SRV203 Getting Started with AWS Lambda and the Serverless CloudSRV203 Getting Started with AWS Lambda and the Serverless Cloud
SRV203 Getting Started with AWS Lambda and the Serverless Cloud
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211) by Amazon Web Services
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)
Amazon Web Services2.1K views
Building Serverless Backends with AWS Lambda and Amazon API Gateway by Amazon Web Services
Building Serverless Backends with AWS Lambda and Amazon API GatewayBuilding Serverless Backends with AWS Lambda and Amazon API Gateway
Building Serverless Backends with AWS Lambda and Amazon API Gateway
Amazon Web Services5.6K views

Similar to Deep Dive on Serverless Web Applications - AWS May 2016 Webinar Series

Como construir suas aplicações escaláveis sem servidores by
Como construir suas aplicações escaláveis sem servidoresComo construir suas aplicações escaláveis sem servidores
Como construir suas aplicações escaláveis sem servidoresAlexandre Santos
96 views44 slides
Primeros pasos con arquitecturas serverless by
Primeros pasos con arquitecturas serverlessPrimeros pasos con arquitecturas serverless
Primeros pasos con arquitecturas serverlessAmazon Web Services
564 views53 slides
Getting Started with Serverless Architectures - August 2016 Monthly Webinar S... by
Getting Started with Serverless Architectures - August 2016 Monthly Webinar S...Getting Started with Serverless Architectures - August 2016 Monthly Webinar S...
Getting Started with Serverless Architectures - August 2016 Monthly Webinar S...Amazon Web Services
2.2K views40 slides
AWS March 2016 Webinar Series Getting Started with Serverless Architectures by
AWS March 2016 Webinar Series   Getting Started with Serverless ArchitecturesAWS March 2016 Webinar Series   Getting Started with Serverless Architectures
AWS March 2016 Webinar Series Getting Started with Serverless ArchitecturesAmazon Web Services
2.2K views40 slides
Getting Started with Serverless Architectures by
Getting Started with Serverless ArchitecturesGetting Started with Serverless Architectures
Getting Started with Serverless ArchitecturesAmazon Web Services
3.9K views41 slides
Cloud Security-how to create serverless applications by
Cloud Security-how to create serverless applicationsCloud Security-how to create serverless applications
Cloud Security-how to create serverless applicationsAmazon Web Services
515 views84 slides

Similar to Deep Dive on Serverless Web Applications - AWS May 2016 Webinar Series(20)

Como construir suas aplicações escaláveis sem servidores by Alexandre Santos
Como construir suas aplicações escaláveis sem servidoresComo construir suas aplicações escaláveis sem servidores
Como construir suas aplicações escaláveis sem servidores
Alexandre Santos96 views
Getting Started with Serverless Architectures - August 2016 Monthly Webinar S... by Amazon Web Services
Getting Started with Serverless Architectures - August 2016 Monthly Webinar S...Getting Started with Serverless Architectures - August 2016 Monthly Webinar S...
Getting Started with Serverless Architectures - August 2016 Monthly Webinar S...
Amazon Web Services2.2K views
AWS March 2016 Webinar Series Getting Started with Serverless Architectures by Amazon Web Services
AWS March 2016 Webinar Series   Getting Started with Serverless ArchitecturesAWS March 2016 Webinar Series   Getting Started with Serverless Architectures
AWS March 2016 Webinar Series Getting Started with Serverless Architectures
Amazon Web Services2.2K views
Getting Started with Serverless Architectures by Amazon Web Services
Getting Started with Serverless ArchitecturesGetting Started with Serverless Architectures
Getting Started with Serverless Architectures
Amazon Web Services3.9K views
Cloud Security-how to create serverless applications by Amazon Web Services
Cloud Security-how to create serverless applicationsCloud Security-how to create serverless applications
Cloud Security-how to create serverless applications
Raleigh DevDay 2017: Building serverless web applications by Amazon Web Services
Raleigh DevDay 2017: Building serverless web applicationsRaleigh DevDay 2017: Building serverless web applications
Raleigh DevDay 2017: Building serverless web applications
CTU June 2011 - Windows Azure App Fabric by Spiffy
CTU June 2011 - Windows Azure App FabricCTU June 2011 - Windows Azure App Fabric
CTU June 2011 - Windows Azure App Fabric
Spiffy1.5K views
Build and run applications without thinking about servers by Amazon Web Services
Build and run applications without thinking about serversBuild and run applications without thinking about servers
Build and run applications without thinking about servers
Building and Deploying .Net Applications on AWS by Amazon Web Services
Building and Deploying .Net Applications on AWSBuilding and Deploying .Net Applications on AWS
Building and Deploying .Net Applications on AWS
Amazon Web Services3.4K views
Security Best Practices for Serverless Applications - July 2017 AWS Online T... by Amazon Web Services
Security Best Practices for Serverless Applications  - July 2017 AWS Online T...Security Best Practices for Serverless Applications  - July 2017 AWS Online T...
Security Best Practices for Serverless Applications - July 2017 AWS Online T...
Building API-Driven Microservices with Amazon API Gateway - AWS Online Tech T... by Amazon Web Services
Building API-Driven Microservices with Amazon API Gateway - AWS Online Tech T...Building API-Driven Microservices with Amazon API Gateway - AWS Online Tech T...
Building API-Driven Microservices with Amazon API Gateway - AWS Online Tech T...
Amazon Web Services6.4K views
Getting Started with AWS Lambda and Serverless Computing by Amazon Web Services
Getting Started with AWS Lambda and Serverless ComputingGetting Started with AWS Lambda and Serverless Computing
Getting Started with AWS Lambda and Serverless Computing
Amazon Web Services6.8K views
Raleigh DevDay 2017: Build a serverless web application in one day workshop by Amazon Web Services
Raleigh DevDay 2017: Build a serverless web application in one day workshopRaleigh DevDay 2017: Build a serverless web application in one day workshop
Raleigh DevDay 2017: Build a serverless web application in one day workshop
Building Serverless Microservices with AWS by Donnie Prakoso
Building Serverless Microservices with AWSBuilding Serverless Microservices with AWS
Building Serverless Microservices with AWS
Donnie Prakoso503 views
Serverless Architectures on AWS - Pop-up Loft Tel Aviv by Amazon Web Services
Serverless Architectures on AWS - Pop-up Loft Tel AvivServerless Architectures on AWS - Pop-up Loft Tel Aviv
Serverless Architectures on AWS - Pop-up Loft Tel Aviv
Build an App on AWS for Your First 10 Million Users by Amazon Web Services
Build an App on AWS for Your First 10 Million UsersBuild an App on AWS for Your First 10 Million Users
Build an App on AWS for Your First 10 Million Users
AWSome Day 2016 - Module 1: AWS Introduction and History by Amazon Web Services
AWSome Day 2016 - Module 1: AWS Introduction and HistoryAWSome Day 2016 - Module 1: AWS Introduction and History
AWSome Day 2016 - Module 1: AWS Introduction and History
Amazon Web Services14.5K views

More from Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn... by
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Amazon Web Services
26.5K views46 slides
Big Data per le Startup: come creare applicazioni Big Data in modalità Server... by
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Amazon Web Services
5.6K views44 slides
Esegui pod serverless con Amazon EKS e AWS Fargate by
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateAmazon Web Services
4.1K views62 slides
Costruire Applicazioni Moderne con AWS by
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
2.8K views61 slides
Come spendere fino al 90% in meno con i container e le istanze spot by
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Amazon Web Services
1.8K views21 slides
Open banking as a service by
Open banking as a serviceOpen banking as a service
Open banking as a serviceAmazon Web Services
7K views14 slides

More from Amazon Web Services(20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn... by Amazon Web Services
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Amazon Web Services26.5K views
Big Data per le Startup: come creare applicazioni Big Data in modalità Server... by Amazon Web Services
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Amazon Web Services5.6K views
Esegui pod serverless con Amazon EKS e AWS Fargate by Amazon Web Services
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
Amazon Web Services4.1K views
Come spendere fino al 90% in meno con i container e le istanze spot by Amazon Web Services
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
Amazon Web Services1.8K views
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea... by Amazon Web Services
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Amazon Web Services3.3K views
OpsWorks Configuration Management: automatizza la gestione e i deployment del... by Amazon Web Services
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
Amazon Web Services2.6K views
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads by Amazon Web Services
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Amazon Web Services1.7K views
Database Oracle e VMware Cloud on AWS i miti da sfatare by Amazon Web Services
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
Amazon Web Services1.3K views
Crea la tua prima serverless ledger-based app con QLDB e NodeJS by Amazon Web Services
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Amazon Web Services1.9K views
API moderne real-time per applicazioni mobili e web by Amazon Web Services
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
Amazon Web Services1.5K views
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare by Amazon Web Services
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Amazon Web Services1.5K views
AWS_HK_StartupDay_Building Interactive websites while automating for efficien... by Amazon Web Services
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
Introduzione a Amazon Elastic Container Service by Amazon Web Services
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
Amazon Web Services2.7K views

Recently uploaded

Webinar : Competing for tomorrow’s leaders – How MENA insurers can win the wa... by
Webinar : Competing for tomorrow’s leaders – How MENA insurers can win the wa...Webinar : Competing for tomorrow’s leaders – How MENA insurers can win the wa...
Webinar : Competing for tomorrow’s leaders – How MENA insurers can win the wa...The Digital Insurer
28 views18 slides
Throughput by
ThroughputThroughput
ThroughputMoisés Armani Ramírez
32 views11 slides
Liqid: Composable CXL Preview by
Liqid: Composable CXL PreviewLiqid: Composable CXL Preview
Liqid: Composable CXL PreviewCXL Forum
121 views8 slides
The Research Portal of Catalonia: Growing more (information) & more (services) by
The Research Portal of Catalonia: Growing more (information) & more (services)The Research Portal of Catalonia: Growing more (information) & more (services)
The Research Portal of Catalonia: Growing more (information) & more (services)CSUC - Consorci de Serveis Universitaris de Catalunya
66 views25 slides
Empathic Computing: Delivering the Potential of the Metaverse by
Empathic Computing: Delivering  the Potential of the MetaverseEmpathic Computing: Delivering  the Potential of the Metaverse
Empathic Computing: Delivering the Potential of the MetaverseMark Billinghurst
449 views80 slides
AMD: 4th Generation EPYC CXL Demo by
AMD: 4th Generation EPYC CXL DemoAMD: 4th Generation EPYC CXL Demo
AMD: 4th Generation EPYC CXL DemoCXL Forum
126 views6 slides

Recently uploaded(20)

Webinar : Competing for tomorrow’s leaders – How MENA insurers can win the wa... by The Digital Insurer
Webinar : Competing for tomorrow’s leaders – How MENA insurers can win the wa...Webinar : Competing for tomorrow’s leaders – How MENA insurers can win the wa...
Webinar : Competing for tomorrow’s leaders – How MENA insurers can win the wa...
Liqid: Composable CXL Preview by CXL Forum
Liqid: Composable CXL PreviewLiqid: Composable CXL Preview
Liqid: Composable CXL Preview
CXL Forum121 views
Empathic Computing: Delivering the Potential of the Metaverse by Mark Billinghurst
Empathic Computing: Delivering  the Potential of the MetaverseEmpathic Computing: Delivering  the Potential of the Metaverse
Empathic Computing: Delivering the Potential of the Metaverse
Mark Billinghurst449 views
AMD: 4th Generation EPYC CXL Demo by CXL Forum
AMD: 4th Generation EPYC CXL DemoAMD: 4th Generation EPYC CXL Demo
AMD: 4th Generation EPYC CXL Demo
CXL Forum126 views
MemVerge: Gismo (Global IO-free Shared Memory Objects) by CXL Forum
MemVerge: Gismo (Global IO-free Shared Memory Objects)MemVerge: Gismo (Global IO-free Shared Memory Objects)
MemVerge: Gismo (Global IO-free Shared Memory Objects)
CXL Forum112 views
JCon Live 2023 - Lice coding some integration problems by Bernd Ruecker
JCon Live 2023 - Lice coding some integration problemsJCon Live 2023 - Lice coding some integration problems
JCon Live 2023 - Lice coding some integration problems
Bernd Ruecker67 views
Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen... by NUS-ISS
Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...
Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...
NUS-ISS23 views
MemVerge: Past Present and Future of CXL by CXL Forum
MemVerge: Past Present and Future of CXLMemVerge: Past Present and Future of CXL
MemVerge: Past Present and Future of CXL
CXL Forum110 views
"Thriving Culture in a Product Company — Practical Story", Volodymyr Tsukur by Fwdays
"Thriving Culture in a Product Company — Practical Story", Volodymyr Tsukur"Thriving Culture in a Product Company — Practical Story", Volodymyr Tsukur
"Thriving Culture in a Product Company — Practical Story", Volodymyr Tsukur
Fwdays40 views
PharoJS - Zürich Smalltalk Group Meetup November 2023 by Noury Bouraqadi
PharoJS - Zürich Smalltalk Group Meetup November 2023PharoJS - Zürich Smalltalk Group Meetup November 2023
PharoJS - Zürich Smalltalk Group Meetup November 2023
Noury Bouraqadi113 views
Data-centric AI and the convergence of data and model engineering: opportunit... by Paolo Missier
Data-centric AI and the convergence of data and model engineering:opportunit...Data-centric AI and the convergence of data and model engineering:opportunit...
Data-centric AI and the convergence of data and model engineering: opportunit...
Paolo Missier29 views
Future of Learning - Khoong Chan Meng by NUS-ISS
Future of Learning - Khoong Chan MengFuture of Learning - Khoong Chan Meng
Future of Learning - Khoong Chan Meng
NUS-ISS31 views
Web Dev - 1 PPT.pdf by gdsczhcet
Web Dev - 1 PPT.pdfWeb Dev - 1 PPT.pdf
Web Dev - 1 PPT.pdf
gdsczhcet52 views
"How we switched to Kanban and how it integrates with product planning", Vady... by Fwdays
"How we switched to Kanban and how it integrates with product planning", Vady..."How we switched to Kanban and how it integrates with product planning", Vady...
"How we switched to Kanban and how it integrates with product planning", Vady...
Fwdays61 views
Architecting CX Measurement Frameworks and Ensuring CX Metrics are fit for Pu... by NUS-ISS
Architecting CX Measurement Frameworks and Ensuring CX Metrics are fit for Pu...Architecting CX Measurement Frameworks and Ensuring CX Metrics are fit for Pu...
Architecting CX Measurement Frameworks and Ensuring CX Metrics are fit for Pu...
NUS-ISS32 views
CXL at OCP by CXL Forum
CXL at OCPCXL at OCP
CXL at OCP
CXL Forum208 views
.conf Go 2023 - Data analysis as a routine by Splunk
.conf Go 2023 - Data analysis as a routine.conf Go 2023 - Data analysis as a routine
.conf Go 2023 - Data analysis as a routine
Splunk90 views
TE Connectivity: Card Edge Interconnects by CXL Forum
TE Connectivity: Card Edge InterconnectsTE Connectivity: Card Edge Interconnects
TE Connectivity: Card Edge Interconnects
CXL Forum96 views

Deep Dive on Serverless Web Applications - AWS May 2016 Webinar Series

  • 1. © 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Brittany Doncaster, Solutions Architect, AWS May 24, 2016 Deep Dive on Serverless Web Applications
  • 2. Agenda  Overview of Serverless Architecture  Anatomy of a Web Application  Securing the Web Application  Demo  Other Options
  • 4. What is Serverless? Provisioning and Utilization Operations and Management Scaling Availability and Fault Tolerance Removes the need for….
  • 5. Benefits of Serverless? Provisioning and Utilization Operations and Management Scaling Availability and Fault Tolerance Which leads to…. Low Cost Simple Low Latency Scalable Reliable
  • 6. Platform of Serverless Products Storage DatabaseCompute Messaging and QueuesGateways User Management Internet of Things Machine LearningStreaming Analytics
  • 8. ETL
  • 11. Anatomy of a Web Application
  • 12. What makes up a web application? Let’s break it down…
  • 13. What makes up a web application?
  • 14. What makes up a web application?
  • 15. What makes up a web application?
  • 17. Where did all the servers go?
  • 18. Static Website Hosting on S3 - refresher  Specify an index document (i.e. index.html)  Specify an error document  Objects publicly readable  Supports redirects  All Requests  Conditional bucket with objects
  • 19. API Gateway - refresher Create Configure Publish Maintain Monitor Secure
  • 20. API Gateway – Stage Variables  Key/Value pairs used for configuration  Used for different stages of API  Specify a Lambda function name  Pass to backend
  • 21. Lambda  Serverless, event-driven compute  Code is: NodeJS, Python, JVM based  Specify memory allocated  Determine what invokes the functions  API Gateway, S3, DynamoDB, Kinesis, SNS, SES, Cognito, Cloudwatch Logs, Cloudwatch Events, CloudFormation, Config, Scheduled Events
  • 22. Lambda – Versioning and Aliases Versioning  ARN for each one (immutable)  Versions of functions for Dev, Staging, Prod Aliases  Point to a version  Have an ARN also  Event sources point to Alias ARNs
  • 23. Lambda – Dynamic Configuration One option:  Pull Configs from DDB  Write values to global vars  Code uses global vars Lambda Function Amazon DynamoDB
  • 24. DynamoDB - refresher  NoSQL database  Keys: Hash Key and (optional) Range Key  Tips:  Plan your keys  Think about your queries
  • 26. …..but what’s missing from this architecture?
  • 29. AWS IAM and AWS STS temporary security credential AWS STS AWS cloud client 1 2 permissionsrole AWS IAM OR Amazon API Gateway Action: [‘s3:*’,’sts:Get*’] Effect: Allow Resource: *
  • 32. Authentication Options with Cognito Federated Identity Providers • Amazon • Facebook • Google Custom Developed Authentication System Cognito Identity User Pools (Preview)
  • 33. Unauthenticated vs Authenticated roles  Ability to define both in Cognito  Start out unauthenticated switch to authenticated!  browsing a blogging site then log in to post or comment
  • 34. Example IAM Policy for API Gateway { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "execute-api:Invoke" ], "Resource": [ "arn:aws:execute-api:us-east-1:acctId:apigatewayID/*/GET/posts", "arn:aws:execute-api:us-east-1:acctId:apigatewayID/*/GET/posts/*", "arn:aws:execute-api:us-east-1:acctId:apigatewayID/*/GET/posts/*/comments", "arn:aws:execute-api:us-east-1:acctId:apigatewayID/*/GET/posts/*/comments/*", "arn:aws:execute-api:us-east-1:acctId:apigatewayID/*/POST/users", "arn:aws:execute-api:us-east-1:acctId:apigatewayID/*/POST/login" ] } ] }
  • 35. Cognito – Authentication Flow Amazon API Gateway AWS Lambda
  • 36. Other Security Features  IAM Roles for Lambda Functions  Client-side Encryption library using KMS for DynamoDB
  • 37. Demo
  • 38. Demo App Architecture AWS Lambda Functions web browser Amazon S3 Call Unauthenticated APIs methods StaticContent Amazon DynamoDB Amazon Cognito Obtain User Credentials Amazon API Gateway encrypted user data AWS Lambda Functions Amazon DynamoDB Amazon API Gateway Authentication APIs Obtain Authenticated User Credentials AWS STS AWS Lambda Functions – Logic for POST Functions Amazon DynamoDB Amazon API Gateway – POST Functions Call Authenticated APIs methods 3 2 4 5 6 1 AWS KMS
  • 40. Authentication Options Cognito: • Federated Identity Providers (Amazon, Facebook, Google) • Cognito Identity User Pools Federated Web Identities • Interact directly with STS and 3rd party identity providers
  • 41. Authorization Options with API Gateway API Gateway Lambda Auth function Client Request w/ a bearer token Policy is cached Policy is evaluated AWS Lambda functions Endpoints on Amazon EC2 Context + Token Principal + Policy 403 Denied Allowed Any other publicly accessible endpoint
  • 42. Some Tidbits  Authorization failures to API Gateway get returned as a CORS error  Lambda Functions as stage variable values = manual permissions configuration
  • 43. Architect to be Serverless Fully Managed  No provisioning  Zero administration  High availability Developer Productivity  Focus on the code that matters  Innovate rapidly  Reduce time to market Continuous Scaling  Automatically  Scale up and scale down
  • 44. Q&A