Five-Project Series

AWS Security: Compliance and Observability you own this product

prerequisites
intermediate Python • basic CloudFormation • basic AWS CLI • basic Bash • intermediate knowledge of AWS accounts/Organizations
skills learned
AWS Config rules • Athena • Organizations SCP • CloudWatchEvents • CodeBuild • AWS Lambda • AWS CodeCommit
Eric Kascic
5 weeks · 6-8 hours per week average · INTERMEDIATE

pro $24.99 per month

  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose one free eBook per month to keep
  • exclusive 50% discount on all purchases

lite $19.99 per month

  • access to all Manning books, including MEAPs!

team

5, 10 or 20 seats+ for your team - learn more


QryptoTremolo is an up-and-coming startup that develops next-generation financial services. The company chose to develop and operate in AWS to take advantage of its pay-as-you-go model for infrastructure. QryptoTremolo’s development teams have had unrestricted access to the AWS accounts, and ad hoc development has evolved organically, increasing the risk for security breaches. You’ve been hired to lower this risk and bring security controls to these accounts so the company doesn’t end up on the front-page news… because there is such a thing as bad publicity.

In these liveProjects, you’ll learn to automate configuration of security controls for AWS accounts, focusing on compliance and forensics. You’ll set up AWS Config with rules, deploy custom Config rules, build a CI/CD CodeBuild pipeline to automate change control, create forensic SQL queries, and automate the configuration of organizational service control policies (SCP) to prevent resource tampering. When you’re done with these liveProjects, you’ll have gained important skills for bringing compliance and observability to AWS accounts, and the peace of mind that comes with knowing your AWS accounts are secure.

For more on AWS security, please see AWS Security: Audit and Intrusion Detection Automation.

These projects are designed for learning purposes and are not complete, production-ready applications or solutions.

This is one of the most thoroughly created courses on these topics that I’ve ever taken. Every topic provided a specific and important use case, ample resources, well-defined expectations for deliverables, and a complete and repeatable solution to the problem.

Chad Yantorno, Lead Systems Security Engineer, Salesforce

here's what's included

Project 1 AWS Config

You’ve been hired to bring security controls to QryptoTremolo’s AWS accounts. The startup, which develops next-generation financial services, chose to develop and operate in AWS. QryptoTremolo’s development teams have had unfettered access to the AWS accounts, and ad hoc development has evolved organically, increasing the risk for security breaches. It’s up to you to lower this risk so that the company doesn’t end up on the front-page news…for the wrong reasons. Using CloudFormation, stack sets, and the AWS CLI, you’ll set up AWS Config with rules to preemptively discover resources that aren’t configured according to security best practices.

Project 2 Custom Rule Development

Enter course descriptionA string of high-profile security breaches has been featured recently on the news, and QryptoTremolo doesn’t want to be the next headline. You’ve been hired by the startup, which is developing a set of next-generation financial services, to lower the risk of breaches and bring security controls to its AWS accounts. Leveraging pytest and Boto, you’ll develop and deploy a custom Config rule to look for peculiar misconfigurations or conditions that aren’t covered by AWS’s off-the-self managed rules.

Project 3 CI/CD and Change Control

You’ve been hired by QryptoTremolo, a startup that’s been developing a set of next-generation financial services, to lower the risk of security breaches. The company has chosen to develop and operate in AWS. Its development teams have had unrestricted access to the AWS accounts, and ad hoc development has evolved organically, increasing the risk for security breaches. To uplevel security in these accounts, you’ll deploy CloudFormation templates and develop a suite of automated pytest tests to verify their configuration. Next, you’ll build a CI/CD CodeBuild pipeline that triggers on infrastructure changes and deploys and tests the changes across the organization. This change control automation will enable you to respond quickly—and confidently—to changing business needs.

Project 4 AWS Athena

QryptoTremolo, a startup that’s developing a set of next-generation financial services, has hired you to help upgrade its security. The company has set up an organizational AWS CloudTrail, which deposits all the events of QryptoTremolo’s AWS control plane, as well as some data plane, in an S3 bucket within the security account. But the events are stored in a form that doesn’t lend itself well to forensic queries. QryptoTremolo has chosen AWS Athena as a query-friendly solution. Your task is to configure AWS Athena to allow for sending advanced forensic queries to an S3 bucket filled with organizational CloudTrail events. You’ll learn how to create forensic SQL queries and issue them in a performant way across all accounts in the organization.

Project 5 Service Control Policy

QryptoTremolo, a startup that’s been developing a set of next-generation financial services, has already taken steps to provide visibility into its AWS accounts and set up AWS GuardDuty to detect intruders. But managers of the development teams have administrator access to these accounts, and despite being a dangerous anti-pattern, that’s not going to change anytime soon. Your task is to automate the configuration of organizational service control policies that restrict access of local administrators (and intruders) to any AWS Config and EventBridge resources located in the AWS accounts. You’ll write code to query the IAM (Identity and Access Management) policy simulator in order to gauge API calls’ ability to tamper with resources. You’ll also develop end-to-end tests that prove whether an SCP change will behave as expected, and build a pipeline to codify the change control process for the SCP.

book resources

When you start each of the projects in this series, you'll get full access to the following book for 90 days.

choose your plan

team

monthly
annual
$49.99
$499.99
only $41.67 per month
  • five seats for your team
  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose another free product every time you renew
  • choose twelve free products per year
  • exclusive 50% discount on all purchases
  • AWS Security: Compliance and Observability project for free

project author

Eric Kascic

Eric Kascic is a software developer with 25 years of professional experience. He has developed software solutions across a variety of business domains including telecommunications, medical imagery, and financial services. He has developed embedded, desktop, and server-side software, and has specialized in creating build, deployment, and test automation systems.

Since 2013, he has primarily focused on the AWS platform. At Stelligent, a boutique consulting firm that traditionally specialized in CI/CD, DevOps, and AWS automation, he developed CI/CD solutions for the AWS platforms of financial services companies. In developing infrastructure-as-code solutions, security was a primary focus. Eric invented the cfn_nag tool in 2016 to perform static analysis on CloudFormation templates to help customers prevent deploying unsecured AWS resources (such as those missing encryption or with overly permissive access).

He is currently a principal security engineer at a financial services company where he develops software to support security processes including automation of AWS IAM role creation, as well as a platform to detect and remediate insecure AWS resources across hundreds of accounts. Eric has published several articles relevant to security automation in AWS, including articles about cfn_nag, IAM, CloudFormation, and CI/CD.

Prerequisites

This liveProject series is for security engineers with intermediate experience in AWS and infrastructure as code. To begin these liveProjects you’ll need to be familiar with the following:

TOOLS
  • Basic knowledge of *nix/bash command shell
  • Basic experience with CloudFormation
  • Basic experience with the AWS CLI
  • Basic experience with Boto
  • Intermediate knowledge of Python 3 (including lists, sets, dicts, loops, comprehensions, functions, conditionals)
TECHNIQUES
  • Basic understanding of infrastructure as code
  • Basic understanding of security concepts
  • Intermediate understanding of cloud computing and the AWS platform

Note: These exercises rely upon the AWS platform, which may carry usage costs.

you will learn

In these liveProjects, you’ll learn how to automate security service controls in the AWS cloud with a focus on testing and change control.

  • Set up AWS Config with rules to preemptively discover resources that aren’t configured according to security best practices
  • Develop a custom Config Rule that discovers IAM (Identity and Access Management) roles with an overly permissive trust policy via Boto
  • Deploy CloudFormation templates
  • Develop pytest tests to verify the configuration of CloudFormation templates
  • Fit deployment and test execution into CodeBuild pipelines
  • Configure AWS Athena to allow for sending advanced forensic queries to an S3 bucket filled with organizational CloudTrail events
  • Use Boto to deploy and test organizations’ service control policies

features

Self-paced
You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Get Help
While within the liveProject platform, get help from other participants and our expert mentors.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.
book resources
Get full access to select books for 90 days. Permanent access to excerpts from Manning products are also included, as well as references to other resources.