Search “AWS SOC 2 compliance” and you hit an immediate confusion: AWS already has its own SOC 2 report. So are you done? No — and this is the single most expensive misunderstanding in a SOC 2 audit. AWS’s SOC 2 covers AWS’s own data centers, hardware, and managed-service operations. It says nothing about how your organization has configured AWS. Under the shared responsibility model, everything you build in your account — IAM policies, S3 bucket settings, encryption, and logging is entirely on you, and that is exactly what your auditor samples.
So “AWS SOC 2 compliance” really means two things: (1) configuring AWS so its security controls satisfy the relevant Trust Services Criteria, and (2) continuously proving they stayed configured across your audit window. This guide covers both — the exact settings, and how to generate the evidence automatically instead of screenshotting it the week before fieldwork. For the platform landscape, see our SOC 2 compliance software guide; for the control list, the SOC 2 controls breakdown.
The AWS Shared Responsibility Model, in SOC 2 Terms
AWS is responsible for security of the cloud; you are responsible for security in the cloud. Your SOC 2 auditor only tests the second half. AWS’s SOC 2 report (downloadable from AWS Artifact) is evidence you can inherit for the physical and infrastructure layer — include it as a sub-service organization report. Everything above the hypervisor is yours to configure and prove.
✨ Which SOC 2 Controls Your AWS Config Touches
AWS area
What to configure
SOC 2 criterion
IAM
MFA on all users + root; no inline policies; no long-lived access keys
CC6.1, CC6.3
S3
Block Public Access account-wide; bucket policies least-privilege
CC6.1, CC6.6
Encryption
KMS encryption at rest on S3/EBS/RDS; TLS in transit
CC6.7
CloudTrail
Enabled all regions; logs immutable + centralized
CC7.2
AWS Config
Drift detection rules on key resources
CC7.1
GuardDuty
Threat detection enabled and triaged
CC7.2, CC7.3
✨ The AWS SOC 2 Configuration Checklist
Work these in order. Each is a control your auditor will sample evidence for across the whole observation window — not just on audit day.
1. Lock down identity (CC6.1, CC6.3)
- Enforce MFA on every IAM user and on the root account; remove root access keys entirely.
- Replace inline user policies with group/role-based least privilege; no
*:* grants. - Rotate or eliminate long-lived access keys; prefer IAM roles and short-lived credentials.
- Set a password policy meeting complexity + rotation requirements.
2. Close public exposure (CC6.6)
- Enable S3 Block Public Access at the account level (not just per bucket).
- Audit security groups for
0.0.0.0/0 on sensitive ports (22, 3389, database ports).
3. Encrypt everything (CC6.7)
- KMS encryption at rest on S3, EBS, RDS, DynamoDB, and snapshots.
- Enforce TLS for data in transit; redirect HTTP to HTTPS at the load balancer.
4. Log and monitor (CC7.1, CC7.2)
- CloudTrail in all regions, writing to a centralized, immutable (object-lock) S3 bucket.
- AWS Config rules for continuous resource compliance + drift alerts.
- GuardDuty enabled with findings routed to your ticketing/alerting.

✨ How Strac Comply Automates AWS SOC 2 Evidence
Below is what Strac Comply continuously checks in your AWS account. The difference from a checklist tool: Strac Comply doesn’t ask you to attest that a control exists — it runs the test against your live AWS environment every day, and the pass/fail result is the audit evidence. The connection that proves the control is the connection that catches it drifting.

And because Strac Comply runs on Strac’s data security platform, the data-protection control (CC6.7) isn’t just attested — sensitive data in AWS is discovered, classified, and protected, and that enforcement is the evidence. The same edge makes Generative AI DLP and MCP security evidence continuous. See the full platform in the SOC 2 compliance software guide.

Common AWS SOC 2 Mistakes
- Assuming AWS’s SOC 2 covers you. It covers AWS’s side only; your account config is 100% on you.
- Public S3 buckets. The single most common audit finding — and the most common breach. Account-level Block Public Access closes it.
- Point-in-time evidence. Type II samples the whole window; a screenshot from audit week doesn’t prove CloudTrail ran for 6 months.
- Forgetting data classification. CC6.7 wants proof you know where sensitive data lives in S3/RDS and that it’s protected — a DSPM job, not a config check.
Prove your AWS SOC 2 controls automatically
Strac Comply runs the AWS tests above every day and turns each result into live SOC 2 evidence — plus DSPM that finds sensitive data across S3 and RDS. Stop screenshotting the console.
Start at comply.strac.io →
Related integration SOC 2 guides: GitHub SOC 2, Google Workspace SOC 2, Microsoft 365 SOC 2.
🌶️ Spicy FAQs for AWS SOC 2 compliance
Is AWS SOC 2 compliant?
Yes — AWS maintains its own SOC 1, SOC 2, and SOC 3 reports for its infrastructure and managed services, available through AWS Artifact. But that does not make your AWS account SOC 2 compliant. Under the shared responsibility model, your IAM, S3, encryption, and logging configuration is yours to secure and prove.
Can I use AWS’s SOC 2 report for my audit?
Partially. You include AWS’s report as a sub-service organization (carve-out/inclusive) report to cover the infrastructure layer your auditor doesn’t directly test. You still must demonstrate your own controls for everything you configure in the account.
What AWS services help with SOC 2?
AWS Audit Manager (prebuilt SOC 2 framework), AWS Config (drift detection), CloudTrail (activity logging), GuardDuty (threat detection), and KMS (encryption). These cover detection; they don’t protect your data or auto-generate the continuous evidence — a platform like Strac Comply does that.
How long does AWS SOC 2 take?
Configuration is days to a few weeks; the SOC 2 Type II observation window is then 3–12 months of continuous evidence. See the SOC 2 Type II checklist for the full timeline.
What’s the most common AWS SOC 2 finding?
Publicly accessible S3 buckets and over-permissioned IAM. Enable account-level S3 Block Public Access and enforce least-privilege IAM with MFA to close the two most-cited findings.