AWS Cloud Project Bootcamp – Week 3: Unofficial Homework Guide

Introduction

Week 2 was a lot harder, and a lot of students had difficulty getting the observability solutions implemented. As Andrew has said, it only gets harder from here, so congratulate yourself if you’re still following along! We also had some great articles and writeupes from members of the bootcamp cohort, which is always amazing to see.

On to Week 3, which is Decentralized Authentication. We’ll be learning about using Amazon Cognito to handle authentication, as well as using an Amplify client-side library. We’ll also be using a JWT Token server side to serve authenticated API endpoints in our Flask application.

This article is intended to help direct you to all of the resources you should review as you go through the homework assignments. I will not be going through step-by-step how to complete the homework, as the methods will differ for each member, and it’s up to you to complete the assignments. I may post some tips or recommended steps if there are frequent questions or difficulties mentioned, and only if I have time during the week after completing my own homework.

Disclaimer: I am not part of the bootcamp planning or management team – I’m just a participant like you! Nothing I publish should be considered official. Be sure to refer to the official documents whenever possible, as things are frequently being added and changed.

Before You Start

Be sure you’ve completed all the required homework steps for Week 2. Each week builds off the previous one, so you need to have all the tasks finished to progress. If you’re not sure of what needs to be done, check the Student Portal > Submissions > Week 2 page and review the tasks. You can also check out my previous Week 2 – Unofficial Homework Guide article for more details.

Week 3 Viewing Material

Required Homework

For this week, there are a number of tasks relating to Cognito. Please refer to the checklist in the Student Portal for the most up to date task list. I will update this article as needed, if additional tasks are added.

  • Set up Cognito User Pool
  • Implement Custom Sign-In Page
  • Implement Custom Sign-Up Page
  • Implement Custom Confirmation Page
  • Implement Custom Recovery Page
  • Security Considerations Quiz – TBD
  • Spend Considerations Quiz – TBD

Stretch Homework Details

From the course outline, some of the optional stretch homework challenges are:

  • [Medium] Decouple the JWT verify from the application code by writing a Flask Middleware.
  • [Hard] Decouple the JWT verify by implementing a Container Sidecar pattern using AWS’s official Aws-jwt-verify.js library.
  • [Hard] Decouple the JWT verify process by using Envoy as a sidecar.
  • [Hard]  Implement a IdP login (eg. Login with Amazon or Facebook or Apple).
  • [Easy] Implement MFA that send an SMS (text message) – Warning: this has spend and text messages are not eligible for AWS Credits.

Additional Resources

Videos:

Note: These videos are about 3 years old, so some of the information and user interfaces may be out of date.

Documentation:

Loading

Leave a Reply

Your email address will not be published. Required fields are marked *