Skip to main content

HIPAA Compliance on AWS

Last updated: March 2026

TL;DR — We're Already HIPAA-Aligned

Good news: the Bike4Mind / VibesWire / Lumina5 AWS fabric that Starlight Practice is built on already uses 18 HIPAA-eligible AWS services. There is no special "healthcare cloud" or separate account type needed — just sign a free BAA via AWS Artifact (2 minutes, self-service) and configure encryption + audit logging.

The B4M stack (Lumina5) runs a production 35-person AI platform on the same serverless architecture we're using for Starlight. Every core service is HIPAA-eligible:

B4M/Lumina5 Services → HIPAA Eligibility

AWS ServiceHow B4M Uses ItHow Starlight Uses ItHIPAA Eligible
Lambda21+ function types (MCP, queues, crons, WebSocket)API handlers, auth triggers, business logic✅ Yes
DynamoDBState/session managementPatients, Schedules, Payments, Users tables✅ Yes
API GatewayWebSocket (10+ routes) + RESTREST API for all endpoints✅ Yes
Cognito(VibesWire pattern) Google + B4M OAuthGoogle + B4M OAuth, user management✅ Yes
S37 buckets (files, images, exports, email)Patient documents, backups, audit logs✅ Yes
SQS22 queues + 22 DLQs (file processing, AI, email)Async processing (future: email, notifications)✅ Yes
SNSAlert notifications (25+ alarm topics)Operational alerts✅ Yes
EventBridgeEvent bus (Stripe, email, analytics)Event-driven workflows✅ Yes
CloudFrontCDN for static assetsFrontend delivery✅ Yes
CloudWatch25+ alarms, custom metrics, log groupsApplication logging, health monitoring✅ Yes
CloudTrailAPI audit logging (compliance scans)HIPAA-required audit trail✅ Yes
AWS ConfigConfiguration compliance rulesHIPAA conformance pack✅ Yes
KMSSQS encryption, S3 SSEPHI encryption at rest✅ Yes
Secrets Manager50+ secrets (API keys, DB URIs, JWT)OAuth credentials, API keys✅ Yes
IAMGranular per-function permissionsLeast-privilege access control✅ Yes
SESEmail ingestion pipelinePatient communications (future)✅ Yes
BedrockLLM inference (Claude models, image gen, research)AI clinical decision support (future)✅ Yes
TranscribeVoice session handlingTelehealth transcription (future)✅ Yes
VPCPrivate/public subnets, NAT gatewayNetwork isolation for PHI✅ Yes

18 of 18 AWS services = HIPAA eligible. The only non-AWS component in B4M's stack that needs separate attention is MongoDB Atlas (requires its own BAA with MongoDB Inc.).

What's Already Done vs. What Needs Configuration

RequirementStatusAction Needed
AWS BAA signed⬜ Not yetSign via AWS Artifact (free, 2 min)
DynamoDB encryption at rest✅ Default since 2018Upgrade to customer-managed KMS keys for audit trail
TLS 1.2+ in transit✅ Default on all AWS servicesNone
Cognito authentication✅ Already configuredAdd MFA requirement for PHI access
CloudTrail audit logging⬜ Not yetEnable in all regions, 6-year retention
CloudWatch log encryption⬜ Not yetEnable KMS encryption on log groups
AWS Config HIPAA pack⬜ Not yetDeploy pre-built HIPAA conformance pack
WAF on API Gateway⬜ Not yetAttach WAF rules for request filtering
VPC for Lambda⬜ OptionalPlace PHI-handling Lambdas in private subnets
GuardDuty threat detection⬜ Not yetEnable (adds ~$10-50/mo)

Bottom line: Our architecture is HIPAA-aligned by design. The remaining work is configuration, not re-architecture. Estimated infrastructure overhead: $50-200/month on top of normal AWS costs.

B4M Gen AI Services for Starlight

Starlight Practice will use Bike4Mind's existing AI infrastructure for clinical intelligence features. Amazon Bedrock is HIPAA-eligible (added 2024), so AI-powered features like:

  • Clinical decision support (RAG over PubMed/PMC)
  • SOAP note generation
  • Wellness predictions
  • Smart template generation
  • Parent question answering

...can all flow through B4M's Bedrock integration while remaining HIPAA-compliant.

B4M/Lumina5 Security Operations — Already Production-Grade

Beyond HIPAA-eligible services, the B4M/Lumina5 platform has a comprehensive security operations infrastructure built by Alan that Starlight Practice inherits. This is essentially a SOC-in-a-box — a single pane of glass for security operations inside the admin dashboard.

Security Dashboard (Single Pane of Glass)

The Lumina5 admin includes a unified SecurityDashboard with:

  • Overall security score (0-100) with deterministic scoring algorithm
  • Six scan categories with pass/warning/fail status indicators
  • Critical/High/Medium/Low finding counts per category
  • Configurable scan schedules per type (default: Sunday 2 AM UTC)

Automated Security Scanning (6 Types)

Scan TypeToolWhat It ChecksFrequency
Web (OWASP ZAP)ZAPDynamic application security testing — OWASP Top 10Scheduled (weekly default)
Code (Semgrep)SemgrepStatic code analysis for vulnerabilitiesScheduled
PackagesDependency scanningThird-party package vulnerabilitiesScheduled
Secrets (GitLeaks)GitLeaksSecret detection in codebaseScheduled
Cloud (Custom AWS)Custom LambdaAWS infrastructure baseline checks (root MFA, S3 public access, encryption)Daily
WAFAWS WAFWeb application firewall configurationScheduled

Scans are orchestrated via cron jobs that trigger GitHub Actions workflows (web/code/packages/secrets) or run Lambda directly (cloud scans).

Deterministic Security Scoring

Each category has a custom scoring algorithm:

CategoryAlgorithmScoring Logic
Web (OWASP)Linear + Log dampeningCritical/High linear penalty; Medium/Low log2(1+n)
Code (Semgrep)Linear + CappedCritical/High linear; Medium/Low capped
PackagesPer-package dedupOnly unique vulnerable packages count
SecretsBinary posture bandsCritical/High → 0-40; Medium/Low → 60-85; None → 100
Cloud/WAFLinear penalty100 - (critical x 30 + high x 20 + medium x 10 + low x 5)

Status: fail (critical/high findings or score <50) | warning (medium/low or 50-85) | pass (score ≥85, zero findings)

Threat Detection & Alerting

FeatureHow It Works
Suspicious login detection5-minute alert processing cycle. Detects multiple failed attempts, username enumeration, IP patterns. Risk levels: low/medium/high.
IP blockingManual + automatic blocking with 10-minute expiration windows. Admin API for blocklist management.
API key anomaly detectionDaily baseline calculation from 30-day history. Detects geographic oddities, rate deviations, unusual patterns.
AI behavioral analysisClaude-powered security posture assessment per user. Analyzes failed logins, suspicious patterns, blocked IPs, API key activity. Returns risk score + recommendations.
Rate limit monitoringPer-integration rate limit tracking. Warning at 80% usage, critical on throttle (429). 30-day TTL snapshots.
Circuit breaker alarms5 failures in 2 minutes triggers real-time outage detection per integration (Slack, GitHub, Jira, Confluence).

Operational Monitoring (25+ CloudWatch Alarms)

Alarm CategoryAlarms
DLQ Health22 queues monitored — message count + oldest message age. Unified dashboard.
Integration HealthPer-integration: failure count, P95 latency, all-down detection
Rate LimitsWarning (>80%) and critical (throttled) per integration
LiveOps TriageTriage failures, error volume (>50/run), P0/P1 issues, consecutive failures
ProcessingGeneration failures, duration, cost per operation

SRE & LiveOps Automation

  • SRE Agent: Automated incident response — analyzes errors, suggests fixes, dispatches solutions via two-queue system (analysis → fixes)
  • LiveOps Triage: 6-hour dispatcher fetches events from Slack/GitHub/Jira, triages by severity, creates tracking tickets
  • Log-to-Slack Pipeline: Real-time error streaming from all Lambda functions to Slack
  • Webhook Audit Logging: 90-day retention of all webhook deliveries with signature verification, processing duration, error details

AWS Well-Architected Framework Compliance

Lumina5 has documented answers to AWS Well-Architected Framework review questions:

PillarQuestions Answered
SecuritySEC1 — Identity & Access Management
ReliabilityREL5 — Graceful Degradation, REL10 — Bulkhead Architecture, REL12 — Testing & Validation
Operational ExcellenceOPS4 — Observability & KPIs, OPS4.4 — Dependency Telemetry, OPS10 series — Alerting & Automation

Comprehensive Security Documentation (24+ pages)

Including: backup & disaster recovery runbook, incident response procedures, control objectives framework, data classification, penetration testing plan, OWASP ZAP practices, WAF setup guide, Prowler AWS auditing, CDI InfoSec package (executive summary, technical deep dive, risk assessment memo, control mapping).

What This Means for Starlight Practice

Starlight Practice doesn't need to build security operations from scratch. The B4M/Lumina5 platform provides a production-grade security foundation including automated OWASP scanning, cloud compliance checks, threat detection, rate limiting, and a complete admin security dashboard. As Starlight deploys on the same AWS fabric, these capabilities extend naturally to the healthcare workload.

HIPAA Phased Approach (from Business Plan)

  • Phase 1 (Months 1-6): Practice management only — no PHI. Pipeline, comms, billing analytics. No HIPAA requirements yet.
  • Phase 2 (Months 7-9): Sign BAA, enable encryption + audit logging, deploy HIPAA Config pack. Required before clinical charting.
  • Phase 3 (Month 12+): SOC 2 Type I certification. Annual pen testing. Employee HIPAA training.

Deep Dive Reference

Everything below is detailed reference for each HIPAA requirement and AWS service configuration.


1. AWS HIPAA-Eligible Services

AWS offers 150+ HIPAA-eligible services covered under the AWS Business Associate Addendum (BAA). Customers may use any AWS service in a BAA-designated account, but must only process, store, and transmit PHI using HIPAA-eligible services.

Key HIPAA-Eligible Services (Relevant to Starlight)

ServiceCategoryNotes
Amazon DynamoDBDatabaseEncryption at rest enabled by default since 2018
Amazon CognitoAuthenticationHIPAA-eligible since 2017
AWS LambdaComputeServerless, must use encrypted connections
Amazon API GatewayNetworkingPHI in headers/URLs only to eligible services
Amazon S3StorageSSE-S3 or SSE-KMS required for PHI
Amazon CloudFrontCDNHIPAA-eligible with HTTPS enforcement
Amazon SQSMessagingServer-side encryption required
Amazon SNSMessagingEncryption required
AWS KMSSecurityKey management for PHI encryption
Amazon CloudWatchMonitoringLog encryption supported
AWS CloudTrailAuditAPI activity logging
AWS WAFSecurityWeb application firewall
Amazon RDSDatabaseMulti-AZ with encryption
Amazon DocumentDBDatabaseMongoDB-compatible, HIPAA-eligible
Amazon SESEmailHIPAA-eligible for notifications
AWS Step FunctionsOrchestrationWorkflow coordination
AWS Secrets ManagerSecuritySecret rotation and management
Amazon ECS / FargateContainersHIPAA-eligible compute
AWS Systems ManagerManagementParameter Store for config
Amazon BedrockAI/MLGenerative AI, HIPAA-eligible (added 2024)
Amazon Comprehend MedicalAI/MLNLP for medical text extraction
AWS HealthLakeHealthcareFHIR-compliant data store

For the complete and current list, see the AWS HIPAA Eligible Services Reference.


2. AWS for Health — Healthcare Landing Zone

Unlike AWS GovCloud (which is a separate, isolated region for government workloads), there is no separate "Healthcare Cloud" region or account type. Instead, AWS provides:

Landing Zone Accelerator (LZA) for Healthcare

The Landing Zone Accelerator for Healthcare is an industry-specific deployment that provides:

  • Pre-configured compliance guardrails aligned with HIPAA Security Rule
  • Detective guardrails via AWS Config conformance packs (Operational Best Practices for HIPAA Security)
  • Multi-account governance using AWS Control Tower
  • 35+ AWS services pre-configured for healthcare compliance
  • Compliance frameworks: HIPAA, NCSC, ENS High, C5

AWS HealthLake

A fully managed, HIPAA-eligible service for storing, transforming, and analyzing health data in FHIR R4 format. Designed specifically for healthcare organizations.

AWS Health Data Accelerator

A newer program to fast-track healthcare AI roadmaps, providing reference architectures and tooling for healthcare data pipelines.

Key Difference from GovCloud

AspectAWS GovCloudAWS Healthcare
Separate regionYes (us-gov-west-1, us-gov-east-1)No
Separate account typeYesNo — uses standard AWS accounts with BAA
Compliance focusFedRAMP, ITAR, DoDHIPAA, HITRUST via configuration
Pricing premium~5-25% premiumNo region premium
Setup methodSeparate registrationBAA via AWS Artifact + configuration

Reference Architecture (Serverless)

Internet
|
CloudFront (HTTPS + WAF)
|
API Gateway (REST API, TLS 1.2+)
|
Lambda Functions (VPC-attached)
|
+--- DynamoDB (SSE-KMS, encrypted at rest)
+--- S3 (SSE-KMS, bucket policies, versioning)
+--- Cognito (authentication, MFA)
|
CloudTrail + CloudWatch (audit logging)
|
KMS (key management for all encryption)

Architecture Principles

  1. Network Isolation: Use VPCs with private subnets for Lambda functions accessing PHI
  2. Encryption Everywhere: All data at rest and in transit must be encrypted
  3. Least Privilege: IAM roles with minimum necessary permissions
  4. Audit Everything: CloudTrail for API calls, CloudWatch for application logs
  5. Defense in Depth: WAF + Security Groups + NACLs + IAM policies
  6. Data Classification: Tag resources containing PHI for automated compliance checks
  7. Backup and Recovery: Automated backups with encryption, tested recovery procedures

Shared Responsibility Model

AWS ResponsibilityCustomer Responsibility
Physical security of data centersApplication-level encryption
Network infrastructureIAM policies and access control
Hypervisor securitySecurity group configuration
Service availabilityData classification and handling
Managed service patchingAudit log monitoring and retention
Hardware decommissioningIncident response procedures

4. AWS Artifact — Signing the BAA

How to Sign the BAA

The BAA is signed electronically through AWS Artifact at no additional cost. The process takes less than 2 minutes:

  1. Sign in to the AWS Management Console
  2. Navigate to AWS ArtifactAgreements
  3. Choose the Account agreements tab (for a single account) or Organization agreements tab (for all accounts in an AWS Organization)
  4. Select the AWS Business Associate Addendum (BAA)
  5. Review the terms of the BAA
  6. Check "I agree to all these terms and conditions"
  7. Click Accept agreement

Important Notes

  • No cost: AWS Artifact and the BAA are free
  • Organization-wide BAA: The management account can accept a single BAA covering all member accounts
  • Instant activation: Accepting the BAA instantly designates your account(s) for PHI use
  • Self-service: No need to contact AWS sales or support
  • Prerequisite: You must accept the BAA before storing or transmitting any PHI

What the BAA Covers

The BAA defines:

  • AWS as a Business Associate under HIPAA
  • Permitted uses and disclosures of PHI
  • Required safeguards AWS implements
  • Breach notification obligations
  • Customer obligations (encryption, access controls, etc.)

5. Encryption Requirements

The AWS BAA requires customers to encrypt all PHI stored in or transmitted using HIPAA-eligible services, in accordance with HHS guidance.

Encryption at Rest

ServiceEncryption MethodNotes
DynamoDBSSE with AWS-owned, AWS-managed, or customer-managed KMS keysEnabled by default since 2018
S3SSE-S3, SSE-KMS, or SSE-CSSE-KMS recommended for audit trail
EBSAES-256 via KMSMust be explicitly enabled
RDSAES-256 via KMSMust be enabled at creation time
CloudWatch LogsKMS encryptionOptional but recommended for PHI

Recommendation: Use AWS KMS with customer-managed keys (CMKs) for all PHI storage. This provides:

  • Centralized key management
  • Automatic key rotation
  • Full audit trail via CloudTrail (every key usage is logged)
  • Granular access control via key policies

Encryption in Transit

ScenarioRequirement
External traffic (internet)TLS 1.2+ mandatory
Internal VPC trafficTLS recommended for all PHI
API callsHTTPS endpoints only
Database connectionsSSL/TLS connections
VPN connectionsIPsec VPN

KMS Key Hierarchy

Customer Master Key (CMK) in KMS
|
+--- Data Encryption Key (DEK) for DynamoDB tables
+--- Data Encryption Key (DEK) for S3 buckets
+--- Data Encryption Key (DEK) for CloudWatch logs
+--- Data Encryption Key (DEK) for backups

Cost: KMS charges $1/month per CMK + $0.03 per 10,000 API calls. For most applications, this is minimal.


6. Audit Logging Requirements

HIPAA requires covered entities to implement audit controls. AWS provides several services for this.

CloudTrail (Mandatory)

CloudTrail records all API calls made in your AWS account.

Required Configuration:

  • Enable CloudTrail in all regions
  • Enable log file validation (tamper detection)
  • Store logs in an S3 bucket with:
    • Server-side encryption (SSE-KMS)
    • S3 Object Lock / WORM policy (immutability)
    • Versioning enabled
    • Access logging enabled
  • Integrate with CloudWatch Logs for real-time alerting
  • Retention: HIPAA requires logs to be available for 6 years

CloudWatch provides monitoring and alerting.

Required Configuration:

  • CloudWatch Logs: Capture application logs from Lambda, ECS, etc.
  • CloudWatch Alarms: Alert on suspicious activity:
    • Unauthorized API calls
    • Root account usage
    • IAM policy changes
    • Security group changes
    • Console sign-in failures
  • Log encryption: Enable KMS encryption for log groups containing PHI
  • Retention: Set log retention to match your compliance policy (minimum 6 years for HIPAA)

AWS Config continuously evaluates resource configurations against compliance rules.

HIPAA Conformance Pack: AWS provides a pre-built conformance pack with rules including:

  • encrypted-volumes: EBS volumes must be encrypted
  • dynamodb-table-encryption-enabled: DynamoDB encryption check
  • s3-bucket-server-side-encryption-enabled: S3 encryption check
  • cloud-trail-encryption-enabled: CloudTrail log encryption
  • cloudtrail-enabled: CloudTrail must be active
  • iam-root-access-key-check: No root access keys

Additional Audit Tools

ToolPurpose
AWS Security HubCentralized security findings dashboard
Amazon GuardDutyThreat detection and monitoring
AWS Access AnalyzerIdentify unintended resource access
VPC Flow LogsNetwork traffic monitoring

7. DynamoDB + HIPAA

HIPAA Eligibility

Yes, Amazon DynamoDB is HIPAA-eligible. It has been on the HIPAA Eligible Services list for several years and is covered under the AWS BAA.

Required Configuration for PHI

ConfigurationRequirementDefault
Encryption at restRequiredEnabled by default (AWS-owned key)
Encryption key typeAWS-owned, AWS-managed KMS, or customer-managed KMSAWS-owned key
Encryption in transitRequired (HTTPS endpoints)TLS by default
Point-in-time recoveryRecommendedDisabled (must enable)
IAM access controlRequiredMust configure
VPC endpointsRecommendedMust configure
Backup encryptionRequiredFollows table encryption
Encryption: Customer-managed KMS key (best audit trail)
Point-in-time recovery: Enabled
Backup: On-demand + continuous backups, encrypted
VPC endpoint: Gateway endpoint for DynamoDB (no internet transit)
IAM: Least-privilege policies per Lambda function
Streams: Encrypted, for audit/replication if needed

Client-Side Encryption Option

For maximum security, AWS provides the Amazon DynamoDB Encryption Client (available on GitHub) for client-side encryption before data reaches DynamoDB. This means AWS never sees the plaintext PHI.


8. Cognito + HIPAA

HIPAA Eligibility

Yes, Amazon Cognito is HIPAA-eligible. It achieved HIPAA eligibility in July 2017 and is covered under the AWS BAA. PHI can be used with Amazon Cognito.

Compliance Certifications

  • HIPAA eligible
  • PCI DSS compliant
  • SOC 1, SOC 2, SOC 3
  • ISO/IEC 27001, 27017, 27018
  • ISO 9001
FeatureRecommendation
MFARequired for all users accessing PHI
Password policyMinimum 12 characters, complexity requirements
Token expirationShort-lived access tokens (1 hour or less)
Advanced securityEnable adaptive authentication
Account recoveryVerified email/phone only
User attribute encryptionCustom attributes with sensitive data should use app-level encryption

Important Considerations

  • Cognito user pool attributes (name, email, phone) are stored by Cognito
  • If storing PHI in custom attributes, consider application-level encryption
  • Use Cognito groups for role-based access control (RBAC)
  • Enable CloudTrail logging for Cognito API calls
  • Configure sign-in/sign-out logging for audit purposes

9. Lambda + API Gateway + HIPAA

HIPAA Eligibility

Yes, both AWS Lambda and Amazon API Gateway are HIPAA-eligible and covered under the AWS BAA.

Serverless HIPAA Architecture

AWS has published specific guidance on powering HIPAA-compliant workloads using serverless technologies.

Lambda Configuration for PHI

ConfigurationRequirement
VPC attachmentRecommended — place Lambda in private subnets
Environment variablesEncrypt with KMS; never store PHI in env vars
ConnectionsUse HTTPS/TLS for all external connections
IAM roleLeast-privilege, one role per function
LoggingCloudWatch Logs with KMS encryption
TimeoutSet appropriate timeouts
ConcurrencySet reserved concurrency limits
LayersEnsure no PHI in Lambda layers

API Gateway Configuration for PHI

ConfigurationRequirement
ProtocolHTTPS only (TLS 1.2+)
AuthenticationCognito authorizer or Lambda authorizer
ThrottlingConfigure rate limiting
Access loggingEnable with CloudWatch
WAF integrationAttach AWS WAF for request filtering
Request validationEnable request body validation
Private APIConsider private API endpoints for internal services
Custom domainUse ACM certificates

Important Warning

PHI in URLs: Avoid placing PHI in URL paths or query parameters. Use request bodies instead. URLs may be logged in access logs, browser history, and intermediate proxies.


10. Cost Implications

Does HIPAA Compliance Add Significant Cost?

The infrastructure cost premium is modest (15-25%), but the operational costs are significant.

Infrastructure Cost Breakdown

Cost CategoryEstimated Additional CostNotes
KMS keys~$1-5/month$1/CMK/month + API calls
CloudTrail~$2-10/monthFirst trail free; additional data events
CloudWatch Logs~$5-50/monthDepends on log volume; 6-year retention
AWS Config~$10-30/monthPer rule evaluation
GuardDuty~$10-50/monthBased on data analyzed
WAF~$6-20/month$5/web ACL + $1/rule + requests
S3 log storage~$5-30/month6-year retention of audit logs
VPC endpoints~$7-15/month per endpointFor private DynamoDB, S3 access
Secrets Manager~$2-5/month$0.40/secret/month

Estimated infrastructure premium: $50-200/month for a typical serverless application.

Operational Costs (Often Higher Than Infrastructure)

Cost CategoryEstimated CostNotes
HIPAA training$500-2,000/yearRequired for all staff
Security assessments$5,000-30,000/yearAnnual risk assessments
Penetration testing$5,000-15,000/yearRecommended annually
Compliance consulting$10,000-50,000Initial setup and policies
HITRUST certification$40,000-200,000Optional but often requested by enterprise clients
Cyber insurance$2,000-10,000/yearRecommended for healthcare
Incident response plan$5,000-15,000One-time + annual updates

Cost-Saving Strategies

  1. Use serverless: Lambda and DynamoDB reduce operational overhead vs. EC2/RDS
  2. Organization-wide BAA: One BAA covers all accounts (no per-account cost)
  3. AWS Config conformance packs: Pre-built HIPAA rules (no custom development)
  4. Landing Zone Accelerator: Free open-source solution for multi-account setup
  5. S3 lifecycle policies: Transition old audit logs to Glacier after 1 year
  6. Reserved capacity: Use DynamoDB reserved capacity for predictable workloads

No "HIPAA Tax" on Service Pricing

AWS does not charge more for HIPAA-eligible services. The same DynamoDB, Lambda, and S3 pricing applies whether or not you have a BAA. The additional costs come from the required supporting services (KMS, CloudTrail, Config, etc.) and operational compliance activities.


Summary: HIPAA Compliance Checklist for Starlight

Before Writing Any Code

  • Sign the BAA via AWS Artifact
  • Set up AWS Organizations with multi-account structure
  • Deploy Landing Zone Accelerator for Healthcare (optional but recommended)
  • Enable CloudTrail in all regions
  • Enable AWS Config with HIPAA conformance pack
  • Create KMS customer-managed keys for PHI encryption

Application Architecture

  • Use only HIPAA-eligible services for PHI
  • DynamoDB: Customer-managed KMS encryption, PITR enabled
  • S3: SSE-KMS, bucket policies, versioning, Object Lock for logs
  • Lambda: VPC-attached, least-privilege IAM, encrypted environment variables
  • API Gateway: HTTPS only, Cognito authorizer, WAF attached
  • Cognito: MFA required, strong password policy

Monitoring and Audit

  • CloudTrail integrated with CloudWatch Logs
  • CloudWatch alarms for security events
  • VPC Flow Logs enabled
  • GuardDuty enabled
  • 6-year log retention configured
  • Security Hub for centralized findings

Operational

  • HIPAA policies and procedures documented
  • Staff training completed and documented
  • Incident response plan in place
  • Business continuity and disaster recovery plan
  • Annual risk assessment scheduled
  • BAA signed with any third-party services handling PHI

Sources