Multi-cloud audit toolkit to scan AWS, Azure, and GCP storage services for public exposure and cost visibility.
Supports secure scanning, mockfill lifecycle, containerized CLI, and cross-cloud infrastructure provisioning.
Cloud Storage Lens analyzes cloud buckets, containers, and blobs for:
- Public access flags
- Mock data visibility
- Cost estimation based on volume
- CI lifecycle automation
- Secure infrastructure provisioning
git clone https://github.com/vooradis/cloud-storage-lens.git
cd cloud-storage-lens
# Install dependencies
pip install -r requirements.txt
# Fill buckets with mock data
make mockfill
# Run audit
make scan
# Clean up objects
make cleanupPowered by click for modular subcommands:
python main.py audit --config config/config.dev.yaml
python main.py fill
python main.py cleanSupports AWS profile and Azure connection override:
python main.py fill --profile auditor --connection_string UseDevelopmentStorage=true# Local dev container
docker-compose up --build
# Full audit lifecycle
docker-compose run lens bash audit-entrypoint.shIncludes Dockerfile.dev, audit-entrypoint.sh, and mounted report.csv, audit.log.
Audit-ready resources defined in multi-cloud IaC:
| Cloud | Tool | Folder | Resources |
|---|---|---|---|
| AWS | CDK | infra/aws-cdk | S3 bucket + audit IAM |
| Azure | Bicep | infra/azure-bicep | Blob container (public) |
| GCP | Terraform | infra/gcp-terraform | GCS bucket + lifecycle rules |
make test # Run unit tests
flake8 . # Lint audit + toolsGitHub Actions runs:
pytest testsflake8 lint- Docker builds
- Full audit lifecycle
- Uploads
report.csvas artifact
auditor/ → access check, cost, report logic
clients/ → SDK wrappers for AWS, Azure, GCP
tools/ → mockfill + cleanup scripts
infra/ → CDK, Bicep, Terraform templates
scripts/ → shell wrappers for scan lifecycle
tests/ → pytest mocks for all providers
config/ → YAML audit config presets
| Cloud | Preview |
|---|---|
| AWS | |
| Azure | |
| GCP |
(Insert screenshots in docs/images/ or embed links)
MIT — built for learning, enterprise demos, and open-source contributions.