Compliance Checklist

Map Pigsty security capabilities and evidence preparation using SOC2 and MLPS Level 3.

Compliance is not a switch, but a combination of configuration + process + evidence:

  • Configuration: are security capabilities enabled (HBA/TLS/audit/backup)?
  • Process: access management, change control, backup drills
  • Evidence: logs, config snapshots, backup reports, monitoring alerts

This page uses SOC2 and MLPS Level 3 as entry points to map Pigsty’s security capabilities and compliance evidence.


Default Credentials Checklist (Must Change)

From source defaults:

ComponentDefault UsernameDefault Password
PostgreSQL Admindbuser_dbaDBUser.DBA
PostgreSQL Monitordbuser_monitorDBUser.Monitor
PostgreSQL ReplicationreplicatorDBUser.Replicator
Patroni APIpostgresPatroni.API
HAProxy Adminadminpigsty
Grafana Adminadminpigsty
MinIO RootminioadminS3User.MinIO
etcd RootrootEtcd.Root

Must change all defaults in production.


Evidence TypeDescriptionPigsty Support
Config snapshotsHBA, roles, TLS, backup policypigsty.yml / inventory config
Access controlroles and privilegespg_default_roles / pg_default_privileges
Connection auditconnect/disconnect/DDLlog_connections / log_statement
Backup reportsfull backup and restore recordspgBackRest logs and jobs
Monitoring alertsabnormal eventsPrometheus + Grafana
Certificate managementCA/cert distribution recordsfiles/pki/ / /etc/pki/ca.crt

SOC2 Perspective (Example Mapping)

SOC2 focuses on security, availability, confidentiality. Below is a conceptual mapping of common controls:

Control (SOC2)ProblemPigsty CapabilityProcess Needed
CC6 Logical access controlUnauthorized accessHBA + RBAC + default privilegesAccess approval and periodic audit
CC6 Auth strengthWeak/reused passwordsSCRAM + passwordcheckPassword rotation policy
CC6 Transport encryptionPlaintext transportTLS/CA, ssl/certEnforced TLS policy
CC7 MonitoringIncidents unnoticedPrometheus/GrafanaAlert handling process
CC7 Audit trailNo accountabilityconnection/DDL/slow query logs, pgauditLog retention and review
CC9 Business continuityData not recoverablepgBackRest + PITRRegular recovery drills

This is a conceptual mapping. SOC2 requires organizational policies and audit evidence.


MLPS Level 3 (GB/T 22239-2019) Mapping

MLPS Level 3 focuses on identity, access control, audit, data security, communication security, host security, and network boundary. Below is a mapping of key controls:

ControlProblemPigsty CapabilityConfig/Process Needed
Identity uniquenessShared accountsUnique users + SCRAMAccount management process
Password complexityWeak passwordspasswordcheck/credcheckEnable extensions
Password rotationLong-term riskexpire_inRotation policy
Access controlPrivilege abuseRBAC + default privilegesAccess approvals
Least privilegePrivilege sprawlFour-tier role modelAccount tiering
Transport confidentialityPlaintext leakageTLS/CA, HBA ssl/certEnforce TLS
Security auditNo accountabilityconnection/DDL/slow query logs + pgauditLog retention
Data integritySilent corruptionpg_checksum: true-
Backup and recoveryData losspgBackRest + PITRDrills and acceptance
Host securityHost compromiseSELinux/firewallHardening policy
Boundary securityExposed entryHAProxy/Nginx unified ingressNetwork segmentation
Security management systemLack of process-Policies and approvals

Tip: MLPS Level 3 is not only technical; it requires strong operations processes.


Compliance Hardening Snippets

# Enforce SSL / certificates
pg_hba_rules:
  - { user: '+dbrole_readonly', db: all, addr: intra, auth: ssl }
  - { user: dbuser_dba, db: all, addr: world, auth: cert }

# Password strength
pg_libs: '$libdir/passwordcheck, pg_stat_statements, auto_explain'
pg_extensions: [ passwordcheck, credcheck ]

# PgBouncer / Patroni TLS
pgbouncer_sslmode: require
patroni_ssl_enabled: true

# OS security
node_firewall_mode: zone
node_selinux_mode: enforcing

Compliance Checklist

Before Deployment

  • Network segmentation and trusted CIDRs defined
  • Certificate policy decided (self-signed / enterprise CA)
  • Account and privilege tiering plan confirmed

After Deployment (Must)

  • Change all default passwords
  • Verify HBA rules meet expectations
  • Enable and verify TLS
  • Configure audit and log retention policies

Periodic Maintenance

  • Permission audit and account cleanup
  • Certificate rotation
  • Backup and recovery drills

Next