Book Image

AWS Security Cookbook

By : Heartin Kanikathottu
Book Image

AWS Security Cookbook

By: Heartin Kanikathottu

Overview of this book

As a security consultant, securing your infrastructure by implementing policies and following best practices is critical. This cookbook discusses practical solutions to the most common problems related to safeguarding infrastructure, covering services and features within AWS that can help you implement security models such as the CIA triad (confidentiality, integrity, and availability), and the AAA triad (authentication, authorization, and availability), along with non-repudiation. The book begins with IAM and S3 policies and later gets you up to speed with data security, application security, monitoring, and compliance. This includes everything from using firewalls and load balancers to secure endpoints, to leveraging Cognito for managing users and authentication. Over the course of this book, you'll learn to use AWS security services such as Config for monitoring, as well as maintain compliance with GuardDuty, Macie, and Inspector. Finally, the book covers cloud security best practices and demonstrates how you can integrate additional security services such as Glacier Vault Lock and Security Hub to further strengthen your infrastructure. By the end of this book, you'll be well versed in the techniques required for securing AWS deployments, along with having the knowledge to prepare for the AWS Certified Security – Specialty certification.
Table of Contents (12 chapters)

Implementing a client-side authentication flow

In this recipe, we will use client-side authentication with the non-admin APIs. We will execute this recipe from the AWS CLI with username- and password-based authentication. In a real-world app based on iOS, Android, or JavaScript, you may use SRP instead of the password.

Getting ready

Create a user pool with a default configuration on the basis of the Creating Amazon Cognito user pools recipe. Steps to create a user pool from the CLI are provided with code files. I have created a user pool with default configurations and its ID is us-east-1_Q1cydt6I0. Replace it with your ID within the recipe.

We need an administrator user and should configure a profile in the AWS CLI for this...