Compliance — SOC 2 Type II¶
Informational only — not a compliance guarantee
The control mappings, recommendations, and architecture patterns on this page are educational guidance for implementing the named framework on Microsoft Azure with CSA-in-a-Box. They are not:
- An audit, certification, ATO, attestation, or accreditation
- Legal advice
- A guarantee that any deployment based on this content will be deemed compliant by an auditor, regulator, or accreditation body
Authoritative sources are:
- The Microsoft Trust Center and Microsoft Service Trust Portal — for what Microsoft has formally certified for which Azure services. Where Microsoft has formally certified an Azure service for this framework, the certification is cited inline on this page.
- Your organization's compliance counsel — for legal interpretation.
- Your authorizing official, FedRAMP PMO, 3PAO, agency Authorizing Official, Confidentiality Officer, or equivalent — for the actual accreditation decision.
Validate through proper channels before production use. Neither the CSA-in-a-Box maintainers nor Microsoft accept liability for compliance outcomes of deployments based on this content. Use at your own risk and verify every control, mapping, and recommendation against the authoritative sources above.
Status: Implementation guidance and Trust Services Criteria (TSC) crosswalk for SOC 2 Type II reports. This is the most-requested commercial-sector compliance framework and is required for selling to most enterprises.
What is SOC 2 Type II?¶
SOC 2 (System and Organization Controls 2) is an attestation framework from the AICPA that evaluates an organization's controls over the Trust Services Criteria (TSC):
- Security (always required)
- Availability (optional, recommended)
- Processing Integrity (optional, for transaction-heavy workloads)
- Confidentiality (optional, recommended for B2B)
- Privacy (optional, often replaced by GDPR/CCPA frameworks)
A Type I report attests that controls are designed appropriately at a point in time. A Type II report attests that controls are operating effectively over a period (typically 6–12 months) — this is what enterprise buyers require.
A SOC 2 audit is performed by a licensed CPA firm (not just any auditor). The output is an attestation report you share under NDA with prospects/customers.
How CSA-in-a-Box helps¶
The platform implements many Common Criteria (CC) controls out-of-box and provides documentation patterns for the rest. You still need:
- An auditor (CPA firm) — Microsoft can suggest partners
- A 6–12 month observation window with evidence
- Your own policies (Information Security Policy, Acceptable Use, etc.)
- Operational evidence (logs, ticket exports, change records)
TSC crosswalk¶
Common Criteria (CC) — applies to all SOC 2 reports¶
| CC | Description | Where in CSA-in-a-Box |
|---|---|---|
| CC1 Control Environment | Org structure, ethics, board oversight | Out of scope — your org policies |
| CC2 Communication & Information | Internal/external comms about objectives | Out of scope — your policies |
| CC3 Risk Assessment | Risk identification + mitigation | Defender for Cloud + Defender Vulnerability Management → risk register; Best Practices — Security |
| CC4 Monitoring Activities | Ongoing evaluations + remediation | Defender for Cloud Secure Score, Sentinel, monthly compliance reviews |
| CC5 Control Activities | Implementation of policies | This entire repo |
| CC6 Logical & Physical Access | Access controls + restriction | Identity & Secrets Flow, Entra + PIM + Conditional Access; physical inherited from Azure CSP |
| CC6.1 Logical access security | Authentication + authorization | Entra ID + MFA + RBAC + PIM |
| CC6.2 New access provisioned | Access reviews on hire | Runbook — Tenant Onboarding |
| CC6.3 Access removed | Deprovisioning | Entra Lifecycle Workflows + access reviews |
| CC6.6 Encryption in transit | TLS 1.2+ | All Azure services TLS 1.2 enforced; Bicep modules set minTLSVersion: '1.2' |
| CC6.7 Encryption at rest | At-rest encryption | All Azure storage encrypted by default; CMK with Key Vault on sensitive workloads |
| CC6.8 Malicious software | AV/EDR | Defender for Servers + Defender for Containers (if AKS) |
| CC7 System Operations | Detection + response to anomalies | Defender for Cloud + Sentinel + Runbook — Security Incident |
| CC7.1 Vulnerability management | Vuln scanning + patching | Defender Vulnerability Management + Trivy in CI + Update Management |
| CC7.2 Monitoring of system components | Log collection + analysis | Log Analytics + Diagnostic Settings + LOG_SCHEMA.md |
| CC7.3 Anomaly detection | Behavioral analytics | Sentinel UEBA, Defender for Cloud alerts |
| CC7.4 Incident response | Documented IR process | Runbook — Security Incident, Runbook — Break-Glass |
| CC7.5 Recovery | DR + backup | DR.md, Runbook — DR Drill |
| CC8 Change Management | Authorized + tested changes | Bicep IaC + GitHub PR reviews + branch protection + az deployment what-if |
| CC8.1 Change authorization | Approvals before deploy | GitHub required reviewers, environment protection rules |
| CC9 Risk Mitigation | Vendor + business continuity | SUPPLY_CHAIN.md, DR.md |
Availability (A) — optional but recommended¶
| Criterion | Where |
|---|---|
| A1.1 Capacity planning | Best Practices — Performance Tuning, Azure Monitor capacity alerts |
| A1.2 Environmental protections | Inherited from Azure CSP |
| A1.3 Recovery + redundancy | DR.md, zone-redundant storage, geo-replication, Bicep multi-region module |
Confidentiality (C) — optional but common¶
| Criterion | Where |
|---|---|
| C1.1 Confidential information identified | Purview classification + data product contracts (classification: confidential) |
| C1.2 Disposal of confidential information | Lifecycle policies on Storage, soft-delete on Key Vault, retention policies |
Processing Integrity (PI) — optional, for transaction systems¶
| Criterion | Where |
|---|---|
| PI1.1 Inputs validated | Data product contracts validate schema; dbt tests + Great Expectations on silver |
| PI1.2 Processing complete + accurate | dbt tests, ADF pipeline monitoring, dead-letter queues (Runbook) |
| PI1.3 Outputs accurate | Gold-tier dbt tests + reconciliation queries |
Specific implementations worth highlighting¶
CC6.1 + CC6.2 — Logical access (the auditor's #1 focus)¶
- Implemented:
- Entra ID is the only identity provider; no local accounts on data resources
- MFA enforced via Conditional Access for all users, all admin actions
- PIM-eligible (not active) for any role with
*/write - Federated CI/CD identities (no client secrets) — see Identity & Secrets Flow
- Quarterly access reviews via Entra Access Reviews
- Evidence:
- Conditional Access policy export
- PIM activation logs
- Access review completion records
- GitHub federated credential trust config
CC7.2 — Monitoring (the auditor's #2 focus)¶
- Implemented:
- Diagnostic Settings on every resource → Log Analytics workspace
- 90-day retention hot, multi-year archive in Storage with immutability
- LOG_SCHEMA.md standardizes log formats
- Workbooks for daily security review
- Alerts on Defender for Cloud high/critical
- Evidence:
- KQL query exports showing log coverage
- Retention policy export
- Sample alert + acknowledgement chain
CC8.1 — Change management¶
- Implemented:
- Every infrastructure change is a Bicep PR with required review
- GitHub branch protection on
main(required PR review, required CI checks) - Environment protection rules require approver for production deploys
az deployment what-ifruns in CI on every PR
- Evidence:
- GitHub branch protection settings export
- Sample PR with reviews + what-if results
- Deploy history correlated to PR merge events
Auditor-friendly evidence collection¶
Set up a dedicated Log Analytics workspace for compliance evidence with:
// Daily evidence pack: who changed what
AzureActivity
| where TimeGenerated > ago(1d)
| where OperationNameValue contains "/write" or OperationNameValue contains "/delete"
| project TimeGenerated, Caller, OperationNameValue, ResourceId, ActivityStatusValue
| order by TimeGenerated desc
// Quarterly access review evidence
SigninLogs
| where TimeGenerated > ago(90d)
| summarize SignInCount = count() by UserPrincipalName, AppDisplayName
| order by SignInCount desc
Save these as Workbooks. Auditors love Workbook screenshots.
Documentation deliverables checklist¶
For your SOC 2 Type II report you'll need:
- System Description (the formal narrative the auditor publishes)
- Information Security Policy
- Acceptable Use Policy
- Access Control Policy
- Change Management Policy
- Incident Response Plan ← reference Runbook — Security Incident
- Business Continuity / DR Plan ← reference DR.md
- Vendor Management policy + register
- Risk Assessment (annual, with output)
- Vulnerability Management Policy
- Asset Inventory (Azure Resource Graph queries can auto-generate)
- Data Classification policy
- Encryption Policy
- Logging & Monitoring Policy
- Backup Policy
- Personnel Security (background checks, training)
Type I vs Type II — sequencing¶
gantt
title Typical SOC 2 path for an early-stage org
dateFormat YYYY-MM
section Prep
Gap assessment :2026-01, 2M
Remediate gaps :2026-02, 3M
Pick auditor :2026-04, 1M
section Type I
Type I observation :2026-05, 1M
Type I report issued :milestone, 2026-07, 0d
section Type II
Type II observation window :2026-07, 6M
Type II audit fieldwork :2027-01, 2M
Type II report issued :milestone, 2027-03, 0d
section Steady state
Annual Type II :2027-04, 12M Trade-offs¶
✅ Why this is a strong starting point
- Most CC6/CC7/CC8 controls are platform-implemented
- Bicep IaC + git history = automated change evidence
- Azure Diagnostic Settings = automated monitoring evidence
- Defender for Cloud = automated security posture evidence
⚠️ What this does not give you
- An attestation report (you must engage a CPA firm)
- Org-level policies (your CISO/legal)
- Personnel controls (your HR)
- Customer comms for control deviations (your account team)
Related¶
- Compliance — NIST 800-53 r5 — many overlapping controls
- Compliance — FedRAMP Moderate — for federal customers
- Best Practices — Security & Compliance
- Identity & Secrets Flow
- AICPA SOC 2 official: https://www.aicpa-cima.com/topic/audit-assurance/audit-and-assurance-greater-than-soc-2
- Microsoft SOC offerings: https://learn.microsoft.com/azure/compliance/offerings/offering-soc-2