Skip to content

Access Control Policy

Defines requirements for controlling access to Meridian Seven systems and data based on least privilege, with required authorization, regular review, and prompt revocation.

All employees, contractors, and third-party users who access Meridian Seven systems, including production, staging, and development environments.

MFA is mandatory for all systems that support it. Approved methods: hardware security keys (preferred), authenticator apps (TOTP), push notifications via 1Password. SMS-based MFA is not approved. MFA must be enforced at the identity provider level (Google Workspace, Supabase Auth, GitHub).

RequirementStandard
Minimum length12 characters
ComplexityUppercase, lowercase, numbers, and special characters
RotationNo forced periodic rotation (NIST 800-63B). Rotate immediately on suspected compromise, employee departure, or Watchtower breach detection.
HistoryCannot reuse last 5 passwords
LockoutLocked after 5 failed attempts for 30 minutes
StorageAll passwords stored in 1Password; no plaintext storage
  • Service accounts must use unique credentials per environment
  • API keys and tokens stored in Doppler — never in source code or config files
  • Service account and database credentials rotated every 90 days or immediately upon personnel change
  • All service accounts must have a designated human owner documented in the access register
  • Users receive only the minimum access required for their role
  • Access scoped to specific environment(s) required; production access not granted by default
  • Elevated privileges (admin, owner) require explicit justification and additional approval
  • Temporary elevated access must have a defined expiration and be reviewed upon completion
StepActionResponsible PartySLA
1Manager submits access request: systems, role, justificationHiring ManagerDay 1
2CISO reviews and approvesCISO1 business day
3IT provisions access per Onboarding ChecklistCTO1 business day
4Requester verifies accessNew Employee1 business day
5Provisioning evidence archived for auditCTOSame day
  • Emergency access may be granted by CTO or CISO without standard approval
  • Must be documented within 24 hours with justification
  • Must be reviewed at the next Monthly Access Review
  • Access revoked within 24 hours of termination, contract end, or role change
  • For involuntary terminations: revoked within 1 hour
  • Offboarding Checklist completed; automation verify runner confirms deprovisioning
  • Any shared secrets the departing user accessed must be rotated via Doppler
  • CrowdStrike sensor removed, company accounts signed out, and company data removed per the BYOD Endpoint Security Policy offboarding process
Review TypeFrequencyScopeResponsible Party
Monthly Access ReviewMonthlyAll systems — verify user list against expected roster; includes privileged account reviewCISO
Quarterly Deep ReviewQuarterlyService account rotation audit, API key review, privileged access justificationCISO + CTO
Policy ReviewAnnuallyThis policy and related proceduresCISO

All access reviews documented using the Monthly Access Review template and retained for audit.

SystemAccess LevelNotes
Google WorkspaceStandard userCompany email and collaboration
GitHubWrite access to assigned repositoriesNo admin unless team lead
SlackStandard memberAll engineering channels
1PasswordEngineering vaultNo access to Operations or Finance vaults
GCP (Cloud Run)Cloud Run Developer (dev/staging)No production access by default
SupabaseDeveloper (dev/staging)No production access by default
DopplerDeveloper (dev/staging configs)Production config requires separate approval
GCP Cloud MonitoringMonitoring ViewerUptime check and alert access for debugging
SystemAccess LevelNotes
Google WorkspaceStandard userCompany email and collaboration
SlackStandard memberOperations channels
1PasswordOperations vaultNo access to Engineering or Finance vaults
Finance systemsRead-onlyReporting and reconciliation
SystemAccess LevelNotes
Google WorkspaceStandard userCompany email and collaboration
SlackStandard memberFinance channels
1PasswordFinance vaultNo access to Engineering or Operations vaults
Accounting toolsFull accessAs required by role
StripeRead-onlyPayment and subscription data
SystemAccess LevelNotes
All systemsPer role requirementsLeadership title does not grant blanket access
Google WorkspaceAdminOrganization management
1PasswordAdminVault and user management
GitHubOwnerOrganization settings
SystemAuth MethodMFASSOAccess Control Mechanism
Google WorkspaceGoogle IdentityRequiredN/A (IdP)OU-based policies, group membership
GitHubGitHub accountRequiredGoogle SSOOrg membership, team-based repo access
SlackSlack accountRequiredGoogle SSOWorkspace membership, channel permissions
1Password1Password accountRequired (Secret Key + MFA)N/AVault-based access groups
GCP (Cloud Run)Google accountRequiredGoogle SSOIAM roles (Cloud Run Admin, Developer, Viewer)
SupabaseSupabase accountRequiredGitHub SSOOrg roles, project-level access
DopplerDoppler accountRequiredN/AProject + config level access
CloudflareCloudflare accountRequiredN/AAccount roles
GCP Cloud MonitoringGoogle accountRequiredGoogle SSOIAM roles (Monitoring Admin, Editor, Viewer)
CrowdStrikeCrowdStrike consoleRequiredN/ARole-based console access

Violations are subject to disciplinary actions per the Information Security Policy. Failure to complete access reviews on schedule must be escalated to the CTO.


Meridian Seven — Confidential