This is a demo application created using Flask and Cognito to display a UI that manages user registration and authentication. There are rendered html pages and REST API endpoints that correspond to the registration, authentication, and authenticated user view.
AWS Cognito is a service that enables developers to add user sign-up, sign-in, and access control to their web and mobile applications quickly and securely. It supports user authentication, authorization, and user management, allowing integration with social identity providers and enterprise identity providers via SAML 2.0.
Getting the application up and running requires a few steps outlined below.
python3 -m venv venv;
pip install -r requirements.txt;
export AWS_ACCESS_KEY_ID="{ACCESS_KEY_ID_STRING}";
export AWS_SECRET_ACCESS_KEY="{AWS_SECRET_ACCESS_KEY_STRING}";
Note: The 'create' keyword after the script is needed. Creating this Data Stream will incur AWS charges
python3 cognito_pool_manager.py create;
python3 app.py;
Once the Flask app is running, you should be able to access the webpage
Once you are done with using the Cognito User Pool, you should delete the instance to stop incurring further charges.
Note: The 'delete' keyword after the script is needed. The CloudFormation stack will be deleted as well as the Kinesis Stream defined by it.
python3 cognito_pool_manager.py delete;