Access Control Policy

Last updated: October 2026

This policy sets who may access Greymill systems and data, how that access is granted, proven and removed, and how it is reviewed. It supports section 3 of the Greymill Information Security Policy.

1. Purpose, scope and ownership

2. Principles

3. Roles and access

Access follows role. Anything not listed is denied by default.

RoleWhoMay accessMay not access
Information Security OwnerFounderAll systems, including production secrets, the Plaid Dashboard and the admin consoleNothing excluded; all actions logged
EngineerNamed employees or contractors, approved by the ownerGitHub; Vercel and Supabase at the level their work needs; test and sandbox credentialsProduction secrets and the Plaid production Dashboard, unless granted for a named task
Support or operationsNamed individuals, approved by the ownerAdmin console views needed for the taskRaw database, secrets, bank connection tokens
PartnerReferral partnersThe partner dashboard and their own commission dataAny customer data
Automated coding agentAgents working on branchesGitHub branches and pull requests, offline testsProduction secrets, production database, merging without human approval
Service accountServer-side code, scheduled jobsOnly the keys its function needs, held in Vercel environment variablesInteractive login
CustomerAccount holdersTheir own account and data onlyOther customers' data

4. Authentication

Staff and contractors

Customers and partners

5. Provisioning: joiners, movers and leavers

  1. Request: access is requested in writing (email or ticket), naming the person, the systems, the role and the reason.
  2. Approve: the owner approves before access is granted. Production secrets and the Plaid Dashboard need a named task.
  3. Grant: a named account is created with MFA turned on before first use. Default access is the role in section 3, nothing more.
  4. Record: the grant goes in the access register: who, what, when, approved by, and expiry for temporary access.
  5. Change of role: access no longer needed is removed the same day, and new access goes through steps 1 to 4.
  6. Leavers: all accounts are disabled within 24 hours of departure, or at once for a dismissal. Every shared secret they could have seen is rotated, including Plaid keys, the admin secret and the encryption key when in scope. Devices are returned or wiped.
  7. Temporary access expires on its recorded date and is checked at the next access review.

6. Privileged, service and automated access

7. Customer data, access reviews and logging

Customer and Plaid data

Access reviews

Logging

8. Exceptions, enforcement and review

9. Contact

To report a vulnerability or security concern, email support@greymill.ai. Next scheduled review: October 2027.

Greymill Limited · Registered in England and Wales · Company number 17144930 · ICO registration ZC120843 · 71-75 Shelton Street, Covent Garden, London, WC2H 9JQ