Book Image

Learn AWS Serverless Computing

By : Scott Patterson
Book Image

Learn AWS Serverless Computing

By: Scott Patterson

Overview of this book

Serverless computing is a way to run your code without having to provision or manage servers. Amazon Web Services provides serverless services that you can use to build and deploy cloud-native applications. Starting with the basics of AWS Lambda, this book takes you through combining Lambda with other services from AWS, such as Amazon API Gateway, Amazon DynamoDB, and Amazon Step Functions. You’ll learn how to write, run, and test Lambda functions using examples in Node.js, Java, Python, and C# before you move on to developing and deploying serverless APIs efficiently using the Serverless Framework. In the concluding chapters, you’ll discover tips and best practices for leveraging Serverless Framework to increase your development productivity. By the end of this book, you’ll have become well-versed in building, securing, and running serverless applications using Amazon API Gateway and AWS Lambda without having to manage any servers.
Table of Contents (20 chapters)
Free Chapter
1
Section 1: Why We're Here
4
Section 2: Getting Started with AWS Lambda Functions
9
Section 3: Development Patterns
12
Section 4: Architectures and Use Cases

Securing an API

Security of the resources you are trying to protect is an important topic, and that's why we are covering it before getting into explaining how to build and deploy APIs. API Gateway is often used as a security appliance as a front door for client connections. This is a good idea, so it pays to familiarize ourselves with our options.

In this section, we will cover IAM permissions, authentication with Amazon Cognito, Lambda authorizers, and certificate management.

IAM permissions and policies

The first option to cover is the IAM authentication method for securing APIs. To clarify, there are two main ways to use IAM:

  • The first is to provide administrative access to create, update, maintain, and delete APIs...