Skip to content

jamesbilis/AssetVault-AWS-Flask

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

AssetVault – AWS Flask Application

AssetVault is a production-style web application deployed on AWS that demonstrates secure, real-world cloud architecture and backend practices.

Architecture Overview

  • Application Load Balancer (public)
  • EC2 application server in private subnet
  • PostgreSQL (RDS) in private subnet
  • AWS Systems Manager Parameter Store for secret management
  • IAM-based access control
  • Gunicorn + systemd for production process management

Internet ↓ ALB (HTTP 80) ↓ EC2 (Flask + Gunicorn) ↓ RDS PostgreSQL (SSL)

Key Features

  • Secure multi-tier AWS architecture
  • No secrets stored in source code
  • IAM-based access to encrypted parameters
  • PostgreSQL persistence with automatic schema initialization
  • Health checks for load balancer integration

Technologies Used

  • Python (Flask)
  • PostgreSQL (Amazon RDS)
  • AWS EC2, ALB, VPC, IAM
  • AWS SSM Parameter Store
  • Gunicorn + systemd

Deployment Notes

This application is designed to run in a private AWS VPC.
Database credentials are retrieved at runtime from AWS SSM Parameter Store.
The app is served using Gunicorn behind an Application Load Balancer.

Security Practices

  • No hardcoded credentials
  • Encrypted database connections (SSL)
  • Private subnets for application and database tiers
  • Least-privilege IAM permissions

Author

James Bilis

About

Production-style AWS Flask application using ALB, EC2, RDS PostgreSQL, and SSM Parameter Store

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages