SOC 4 Type 2 is a third-party attestation that an organization’s controls for security, availability, processing integrity, confidentiality, and privacy have been operating effectively for at least six months.
Preparation checklist
1. Map Trust Services – Use the AICPA SOC 2 matrix; map each requirement to a specific control (e.g., “CC6.1 – Encryption at rest” → enable AWS KMS default‑encryption on S3).
2. Baseline configurations – Apply CIS Benchmark v1.5.0 for Ubuntu 22.04, CIS AWS Foundations Benchmark v1.4.0; enforce fs.protected_regular=1 and kernel.randomize_va_space=2.
3. Automate evidence collection – Deploy HashiCorp Sentinel policies in Terraform Cloud:
import "tfplan/v2"
import "strings"
rule "enforce‑kms‑encryption" {
all tfplan.resources as _, r {
r.type is "aws_s3_bucket" and
r.applied.kms_key_id is not null
}
}4. Log retention – Configure CloudWatch Logs to retain 365 days and enable AWS Config with recording=true for all resources.
5. Vulnerability management – Run Trivy nightly (trivy image --severity HIGH,CRITICAL --exit-code 1) and integrate findings into Jira.
6. Access review cadence – Quarterly IAM policy diff using aws iam get-policy-version and enforce max_session_duration <= 3600.
7. Mock audit – Generate a SOC 2 Type 1 report with AuditBoard to validate evidence pipelines before the six‑month window.
Type I vs Type II (text table)
| Aspect | Type I | Type II |
|--------|--------|---------|
| Scope | Design only | Design + operating effectiveness (≥6 mo) |
| Frequency | One‑time | Continuous monitoring |
| Typical effort | Low | High (automation needed) |
Gotcha: If any log source (e.g., VPC Flow Logs) is set to the default 90‑day retention, the auditor will flag missing evidence for the required six‑month period.