Shaylee Czech Security Automation & DevSecOps Engineer | CISSP

GRC Compliance Dashboard

Mapping the DevSecOps pipeline's technical capabilities to NIST, CIS, and HIPAA requirements—the language of compliance and risk management. View the architecture diagram →

Overall Score

100%

Dependency & pipeline security (Snyk)

NIST SP 800-53

N
100%

3 of 3 controls met

CIS Controls

C
100%

1 of 1 control met

HIPAA

H
100%

1 of 1 control met

Vulnerability & Patch Management

The CI/CD pipeline enforces shift-left security by automatically scanning dependencies for vulnerabilities before every deploy. There's no OS or runtime to patch in the first place — the serverless stack (S3, CloudFront, Lambda, API Gateway) has no instance layer for a CVE to land on.

NIST SP 800-53: RA-5 (Scanning) CISSP Domain 6: Security Assessment
  • Snyk (SAST) checks package.json for vulnerable dependencies and fails the pipeline on high/critical.
  • No EC2/OS layer to patch — AWS manages the Lambda runtime, CloudFront edge, and S3 storage layer entirely.
  • CloudWatch Logs capture every Lambda invocation for ongoing monitoring and incident response.

Principle of Least Privilege (PoLP)

The Lambda execution role is scoped to exactly the 3 SSM parameters it reads and CloudWatch Logs — nothing else. Both origins behind CloudFront (S3 and API Gateway) are reachable only through this specific distribution, enforced by Origin Access Control conditions rather than network-perimeter trust. Terraform itself runs via GitHub OIDC with scoped IAM — no long-lived AWS credentials stored anywhere.

NIST SP 800-53: AC-3 (Access Enforcement) CISSP Domain 5: Identity & Access Management
  • No SSH, no servers, no persistent compute to access at all — there's no shell to get into.
  • Lambda's execution role: ssm:GetParameter on 3 specific parameter ARNs, nothing else.
  • S3's bucket policy and the API Gateway origin both key off an Origin Access Control condition scoped to this exact CloudFront distribution's ARN — no other caller can reach either origin directly.

Secure Baselines & Configuration

Terraform defines the entire baseline as code — S3 bucket policy, CloudFront cache and origin behaviors, Lambda configuration, and IAM roles. There's no instance userdata and no "golden image" to drift from a running server, because there's no server to drift.

CIS Control 7 (Configuration Management) CISSP Domain 3: Security Architecture
  • Every resource is declared in Terraform; there's no mutable instance state that can drift from it between deploys.
  • The S3 bucket blocks all public access by default (all four Block Public Access settings) and is versioned.
  • Every deploy replaces the Lambda function's code wholesale from a fresh build — no incremental patching of a running process.

Data & Communication Protection

CloudFront terminates TLS 1.2+ at the edge with an ACM-managed certificate (us-east-1, auto-renewing). Both origins behind it — S3 and API Gateway — are private and reject unauthenticated requests, so there's no unencrypted or untrusted hop anywhere in the request path, not even internally.

HIPAA (Technical Safeguard: Encryption) CISSP Domain 4: Network Security
  • CloudFront enforces TLS 1.2+ (the TLS 1.2_2021 policy) for every viewer connection; HTTP requests are redirected to HTTPS.
  • ACM provides automatic certificate renewal with zero on-instance cert management — there's no instance.
  • Origin traffic to S3 and API Gateway stays on AWS's own network backbone, authenticated via Origin Access Control rather than network-perimeter trust.