Problem
Engineers had persistent access to S3 buckets containing protected health information. This violated zero-trust principles and created compliance risk under HIPAA. No audit trail for who accessed what data and when.
What I Built
A serverless JIT access system using Lambda, AWS IAM Identity Center, DynamoDB, and EventBridge. Users request time-limited, per-bucket access through an approval workflow. Per-bucket SSO permission sets are auto-created on first use. Access auto-revokes every 15 minutes via scheduled EventBridge rules. HTML email notifications on grant and revoke.
Outcome
- Zero standing human access to PHI data
- Per-resource isolation (no cross-bucket leakage)
- Full audit trail via DynamoDB + CloudTrail
- Automated grant/revoke with email notifications
- Bucket policies deny all except approved JIT roles