Skip to content

Security Compliance Frameworks

Security compliance frameworks provide structured sets of controls, processes, and policies that organisations implement to manage security risk, protect sensitive data, and demonstrate trustworthiness to customers and regulators. This note covers the most common frameworks side-by-side: NIST CSF, SOC 2, ISO 27001, PCI DSS, and HIPAA.


FrameworkWho it’s forRequirement typeCertification / Attestation
NIST CSFAny organisation; US government contextVoluntary (federal agencies: mandatory)Self-assessment or third-party
SOC 2SaaS / cloud service providersVoluntary (customer requirement)CPA audit → Type I or Type II report
ISO 27001Any organisation; global applicabilityVoluntary (some contracts require it)Third-party certification body
PCI DSSAny org handling card dataMandatory (card brands require it)QSA audit or self-assessment
HIPAAUS healthcare organisations + business associatesMandatory (US federal law)No certification; regulatory audit

The NIST CSF organises security into 6 core functions (CSF 2.0, 2024):

GOVERN → Establish security governance, policies, risk strategy
└─ organisational roles, risk tolerance, supply chain risk management
IDENTIFY → Understand assets, risks, and vulnerabilities
└─ asset inventory, risk assessment, vulnerability management
PROTECT → Implement safeguards
└─ access control, awareness training, data security, configuration
DETECT → Find cybersecurity events
└─ continuous monitoring, anomaly detection, log analysis
RESPOND → Take action on detected events
└─ incident response planning, communication, analysis
RECOVER → Restore capabilities after incidents
└─ recovery planning, communications, improvements

Each function contains Categories and Subcategories (specific controls, e.g., ID.AM-1: “Inventories of hardware managed by the organization are maintained”).

Terminal window
# NIST CSF self-assessment (quick checklist by function)
# IDENTIFY:
# [ ] Asset inventory exists and is maintained
# [ ] Data flows documented
# [ ] Risk assessment performed within the last year
# PROTECT:
# [ ] MFA enabled for all privileged access
# [ ] Principle of least privilege enforced
# [ ] Security awareness training completed by all staff
# DETECT:
# [ ] Centralised logging (SIEM) implemented
# [ ] Alerting configured for authentication failures, privilege escalation
# [ ] Vulnerability scanning running on schedule
# RESPOND:
# [ ] Incident response plan documented and tested
# [ ] IR team contacts defined
# [ ] Breach notification process documented
# RECOVER:
# [ ] Backup and recovery tested quarterly
# [ ] Business continuity plan maintained
TierNameDescription
Tier 1PartialAd-hoc security; reactive; no formal risk management
Tier 2Risk InformedRisk management approved but not organisation-wide
Tier 3RepeatableFormal organisation-wide security practices; regularly reviewed
Tier 4AdaptiveSecurity is adaptive, continuous, and optimised; shares threat intel

SOC 2 is an audit framework for service providers. A CPA firm audits your controls and issues a report that you share with customers to prove your security posture.

CriterionWhat it covers
Security (CC)Common Criteria - protection against unauthorised access (required for all SOC 2)
AvailabilitySystem available per SLA commitments
Processing IntegrityProcessing is complete, valid, accurate, and timely
ConfidentialityInformation designated confidential is protected
PrivacyPersonal information collected/retained/disclosed per policy

Most organisations start with Security only. Adding Availability and Confidentiality is common for enterprise SaaS.

SOC 2 Type ISOC 2 Type II
What’s auditedControls are designed appropriately at a point in timeControls operate effectively over a period (usually 6-12 months)
EffortLower (shorter engagement)Higher (sustained evidence collection)
Customer valueLower (proves design, not operation)Higher (proves sustained operation)
Typical useEarly-stage; demonstrate initial commitmentEstablished product; enterprise customers
Terminal window
# Security common criteria map to your existing controls
# CC6.1 (Logical access controls):
# Evidence: Screenshot of MFA settings in IdP
# IAM access review records
# Onboarding/offboarding ticket records
# CC7.2 (Security monitoring):
# Evidence: SIEM configuration + sample alert
# Vulnerability scan schedule and results
# Patch management records
# CC8.1 (Change management):
# Evidence: Pull request approvals in GitHub
# Deployment pipeline configuration
# Change request tickets
# Collect evidence with scripts (example: export GitHub PR reviews)
curl -s -H "Authorization: token $GITHUB_TOKEN" \
"https://api.github.com/repos/example/myapp/pulls?state=closed&per_page=100" \
| jq '[.[] | {number: .number, merged: .merged_at, merged_by: .merged_by.login, reviews: .requested_reviewers}]' \
> pr-review-evidence.json

ISO 27001 is an international standard for Information Security Management Systems (ISMS). Unlike compliance checklists, it requires an ISMS - a systematic approach to managing security across people, process, and technology.

Plan → Establish the ISMS scope, risk assessment, risk treatment plan
Do → Implement controls from Annex A; build processes
Check → Monitor, measure, audit (internal audit annually)
Act → Address nonconformities; continuous improvement

Annex A - Control Categories (ISO 27001:2022)

Section titled “Annex A - Control Categories (ISO 27001:2022)”

ISO 27001:2022 has 93 controls across 4 themes:

ThemeControlsExamples
Organisational (37 controls)Policies, roles, supply chain, incident managementThreat intelligence, information security policy
People (8 controls)HR security, awareness, remote workingBackground checks, security training
Physical (14 controls)Physical perimeter, clean desk, equipmentData centre access, screen locks
Technological (34 controls)Access control, crypto, endpoint securityMFA, network segmentation, secure coding
FactorISO 27001SOC 2
ScopeEntire ISMS (people, process, tech)Specific service/product
Global recognitionWorldwidePrimarily US/Canada
Certification outputCertificate (3 years; annual surveillance)Type I or Type II report
Ongoing requirementAnnual surveillance auditRe-audit each period
Main audienceEnterprise customers; EU; governmentUS enterprise SaaS buyers

PCI DSS (Payment Card Industry Data Security Standard)

Section titled “PCI DSS (Payment Card Industry Data Security Standard)”

PCI DSS v4.0 (current) is mandatory for any organisation that stores, processes, or transmits cardholder data (PANs, CVVs, expiration dates).

ReqCategoryKey requirement
1Network SecurityInstall and maintain network security controls (firewall)
2Network SecurityApply secure configurations to all system components
3Account DataProtect stored account data (never store CVV post-auth)
4Account DataProtect cardholder data with strong cryptography during transmission
5VulnerabilityProtect all systems and networks from malicious software
6VulnerabilityDevelop and maintain secure systems and software
7Access ControlRestrict access to system components and cardholder data by need-to-know
8Access ControlIdentify users and authenticate access to system components
9Access ControlRestrict physical access to cardholder data
10MonitoringLog and monitor all access to system components and cardholder data
11TestingTest security of systems and networks regularly
12PolicySupport information security with organisational policies
What you CAN store (if encrypted/hashed):
PAN (Primary Account Number) → must be masked when displayed (only show last 4 digits)
Cardholder name
Expiration date
Service code
What you CANNOT store (under ANY circumstances):
Full track data (magnetic stripe data)
CVV / CVC / CID (3-4 digit verification value)
PIN / PIN block
Scope reduction:
→ Use a PCI-compliant payment processor (Stripe, Braintree)
→ Tokenisation: replace PANs with tokens → removes scope from your systems
→ iframe / hosted payment page: card data never touches your servers
Terminal window
# PCI DSS compliance checks (sample)
# Req 2: Default passwords changed
# Check for default SSH keys on EC2 instances
aws ec2 describe-instances --query 'Reservations[].Instances[].[InstanceId,KeyName]'
# Req 3: Check for unencrypted storage containing PAN-like data
grep -rE '\b([0-9]{4}[ -]?){3}[0-9]{4}\b' /var/www/ 2>/dev/null
# Req 10: Log retention (90 days accessible, 12 months total in PCI DSS v4)
# Check CloudWatch log retention
aws logs describe-log-groups --query 'logGroups[?retentionInDays<90].[logGroupName,retentionInDays]'
# Req 11: Quarterly internal and annual external vulnerability scans
# Set up automated scanning schedule
Merchant LevelTransaction volumeValidation
Level 1> 6M transactions/yearAnnual on-site audit by QSA
Level 21M – 6M/yearAnnual SAQ + quarterly ASV scan
Level 320K – 1M/year (e-commerce)Annual SAQ + quarterly ASV scan
Level 4< 20K online or < 1M totalSAQ + quarterly scan (recommended)

HIPAA (Health Insurance Portability and Accountability Act)

Section titled “HIPAA (Health Insurance Portability and Accountability Act)”

HIPAA governs Protected Health Information (PHI) - any individually identifiable health information - for US healthcare organisations and their business associates.

RuleWhat it requires
Privacy RuleDefines PHI, limits uses/disclosures, gives patients access rights
Security RuleAdministrative, physical, and technical safeguards for ePHI
Breach Notification RuleNotify HHS and affected individuals within 60 days of discovering a breach
Omnibus RuleExtends liability to Business Associates (vendors handling PHI)
Required:
Access control → Unique user ID, emergency access, auto-logoff
Audit controls → Log all ePHI access
Integrity controls → Verify ePHI hasn't been altered or destroyed
Authentication → Verify that users are who they claim to be
Transmission security → Encrypt ePHI in transit (TLS)
Addressable (must implement OR document why not + compensating control):
Encryption at rest → Encrypt stored ePHI
Automatic logoff → Session timeout
Encryption in transit → Already required above (encryption is addressable
but effectively required in practice)
Terminal window
# HIPAA technical safeguard checks
# Unique user IDs (no shared accounts)
# Check for shared accounts in AD / LDAP
ldapsearch -x -H ldap://dc.example.com \
-D "cn=admin,dc=example,dc=com" -W \
-b "dc=example,dc=com" \
"(description=*shared*)" sAMAccountName
# Audit log configuration (all access to ePHI systems)
auditctl -l | grep -E "phi|ehr|emr"
# Encryption at rest (disk encryption)
lsblk -f | grep -E "crypto_LUKS|bitlk"
fdesetup status 2>/dev/null # macOS FileVault
# Encryption in transit (check web services use TLS)
nmap -p 443 --script ssl-cert ehr-system.example.com
BAA requirement:
If a vendor touches PHI (cloud storage, SaaS, IT services),
you MUST have a signed BAA with them before sharing PHI.
Without a BAA = HIPAA violation even if the vendor is secure.
Cloud providers with HIPAA BAAs available:
AWS → aws.amazon.com/compliance/hipaa-eligible-services-reference
Azure → Microsoft signs BAA for HIPAA-eligible services
GCP → HIPAA compliance supported for many services
→ Not all services are HIPAA-eligible even within these providers
→ Google Drive consumer (not Workspace) = NOT covered

Many controls satisfy multiple frameworks simultaneously:

ControlNIST CSFSOC 2ISO 27001PCI DSSHIPAA
MFA for remote accessPR.AACC6.18.05Req 8Technical safeguards
Centralised loggingDE.CMCC7.28.16Req 10Audit controls
Patch managementPR.PSCC7.18.08Req 6Technical safeguards
Encryption at restPR.DSCC6.78.24Req 3Technical safeguards
Incident response planRSCC7.35.24Req 12Breach notification
Background checksPR.ATCC1.16.01Req 12Administrative
Vendor managementGV.SCCC9.25.19Req 12BAA requirement