Skip to content

Segregation of Duties Matrix

Defines the SoD framework for Meridian Seven: which roles may perform which duties, where full segregation is not achievable at organizational scale, and the compensating controls in place to mitigate the associated risk. Satisfies Trust Services Criteria CC5.1 and CC5.2.

All four personnel roles — CTO, CISO, Developer, and authorized contractors — across all 12 in-scope systems.

Meridian Seven is a 4-person organization. Complete segregation is not achievable for every function. This document explicitly acknowledges those gaps and documents compensating controls that reduce associated risk to an acceptable level. Where full segregation exists, it is enforced by system-level controls, not policy alone.

DutyCTOCISODeveloperCompensating Control
Code developmentYesNoYesPR review required before merge (GitHub CODEOWNERS + branch protection)
Code review / approvalYesYesYesCannot approve own PRs (branch protection ruleset enforces required reviewer)
Production deploymentAutomatic on mergeAutomatic on mergeAutomatic on mergeDeployment only after PR approval; no direct push to main
Infrastructure changes (GCP, Cloudflare)YesRead-onlyNoAll changes logged; SOC 2 automation verifies configuration nightly
Secret management (Doppler — production)YesYesRead-onlyDoppler audit log captures all access; production config requires elevated role
User provisioning (Google Workspace)YesYesNoMonthly access review; provisioning requires CISO or CTO
Security monitoring (CrowdStrike, GCP Cloud Monitoring)YesYesRead-onlyAutomated alerts to #security-alerts; no analyst can silence alerts unilaterally
Incident responseYesYes (Lead)AssistIRP requires post-incident review by uninvolved party
Policy authoringYesYesNoPR required; CODEOWNERS enforces reviewer for policies/ directory
Backup management (Backblaze)YesNoNoAutomated lifecycle policies; retention verified by SOC 2 runner
Financial / billingCTO onlyNoNoIsolated from all technical access; separate login credentials
Access provisioning (all systems)YesYesNoNo self-provisioning; CISO or CTO approves all access requests
Risk acceptance (High / Critical)Yes (approves)Yes (recommends)NoDual-role: CISO recommends, CTO approves; neither can unilaterally accept High risk
SystemCTOCISODeveloper
GitHub (Meridian7-io)OwnerAdminMember
Google WorkspaceSuper AdminAdminUser
CloudflareAdminRead-onlyNo access
CrowdStrikeAdminAdminRead-only
1PasswordOwnerAdminMember
DopplerOwnerAdminDeveloper (production: read-only)
GCP Cloud MonitoringAdminAdminRead-only
SupabaseAdminAdminDeveloper (dev/staging only)
GCP (Cloud Run)OwnerEditorViewer
SlackOwnerAdminMember
BackblazeAdminNo accessNo access
  • A developer cannot merge their own code to main. Branch protection requires at least one approving review from a different user.
  • CODEOWNERS assigns required reviewers for sensitive paths: policies/, procedures/, guides/, .github/workflows/, and infrastructure configuration.
  • Deployment is fully automated on merge — no manual deployment step that could bypass the preceding approval.
  • No user may request and approve their own access. All provisioning requires CISO or CTO approval.
  • All access changes reviewed monthly and documented in the Monthly Access Review.
  • Production secrets in Doppler require an elevated role. Developers have read-only access to production configs.
  • All Doppler access is logged; logs collected as evidence by the SOC 2 automation framework.
  • Billing and financial access is restricted to the CTO, separated from all technical system access.
  • No engineer or CISO has access to payment accounts or financial management tools.

7. Compensating Controls for Small-Team Gaps

Section titled “7. Compensating Controls for Small-Team Gaps”
GapCompensating ControlEvidence Source
CTO and CISO both have admin access to most systemsMonthly access review; all privileged actions loggedDoppler, GitHub, and system audit logs
Only two people can approve a High-risk decisionBoth must agree; disagreement escalates to CEO per Governance Policy §4.3Governance Policy
CTO could theoretically approve their own policy PRCODEOWNERS requires @Meridian7-io/security-reviewers group; CTO is not sole member.github/CODEOWNERS
Developers have member-level GitHub accessCannot push to main; cannot approve own PRs; no production system accessGitHub ruleset 12837880
Backblaze managed by CTO onlyAutomated lifecycle policies enforce retention without manual intervention; verified nightlySOC 2 runner backblaze module
  • SoD violations (e.g., self-approved PRs, unauthorized access elevation) flagged during Monthly Access Reviews
  • Violations resolved within 5 business days and reported to the CTO
  • System-enforced controls (branch protection, CODEOWNERS, Doppler role restrictions) take precedence over policy — no override permitted without documented emergency justification reviewed post-action

Reviewed quarterly alongside the access review. Updated whenever a role changes, a new system is added to scope, or an access level changes. CISO maintains this document.

  • Access Control Policy
  • Governance and Organization Policy
  • Change Management Policy
  • Incident Response Plan
  • Information Security Policy

Meridian Seven — Confidential