Skip to main content
Start Project

Security

How GHMAP protects workspace and service data

Traffic is encrypted in transit, workspace tables are organization-scoped, and access is reviewed before it is granted. Isolation is enforced by Postgres row policies on some tables and by server-side access checks on others — this page states which is which. GHMAP holds no security certification, and says so rather than implying otherwise.

Status

What this page is — and is not

Last updated
Report a finding
security@ghmap.io

This page describes the security controls GHMAP operates today. It is not a certification claim, an audit report, legal advice, or a guarantee of absolute protection. GHMAP holds neither SOC 2 nor ISO/IEC 27001 certification, and no third-party audit or penetration test result is published. Market-access content still requires professional review before business use. Do not submit patient data, medical records, passwords, bank information, or confidential contracts through public pages.

  • No patient data is requested; do not submit it
  • Source-tagged intelligence records
  • Professional review at every step
  • Reviewed decision context, retained with the record

Controls in place

What GHMAP does today

Four controls govern how workspace data is stored, separated, reached, and reported on. Each is stated as it operates today.

Control 01

Encryption in transit and at rest

Traffic to GHMAP is encrypted in transit, and stored workspace data is encrypted at rest by the managed infrastructure it runs on.

  • Connections to ghmap.io and app.ghmap.io use TLS. Credentials and workspace payloads are not sent in clear text.
  • Workspace records and uploaded files are held in managed Supabase Postgres and object storage, which encrypt data at rest.
  • Public demo and inquiry forms collect business contact and product context only. GHMAP does not ask for bank details, patient records, or confidential contracts through them.
  • Encryption alone does not keep one organization's records away from another. That is the isolation model in control 02.

Control 02

Organization scoping and data isolation

Workspace tables are organization-scoped. Row Level Security is enabled on all of them, and isolation is enforced two ways: by Postgres row policies on some tables, and by server-side access checks on the rest.

  • Shared workspace records carry the organization they belong to, and access is scoped to it. Meeting records created before organization scoping was introduced stay scoped to their host and participants until they are reviewed and assigned.
  • Row Level Security is enabled on every workspace table. On the tables that carry row policies — including profiles, workspace membership, organizations, items, submissions, help requests, and billing records — Postgres evaluates those policies on each query made with a member session, and they resolve membership and role through database functions rather than inline conditions.
  • Meeting and relationship-network tables have Row Level Security enabled but no row policies defined, so a member session reads no rows from them directly. These surfaces are served only by server routes that use a privileged service connection, which is not subject to Row Level Security, and that resolve meeting access, organization membership, and role in application code before any record is returned. For these tables the isolation boundary is the server route, not a database policy.
  • Membership is stored per organization, not per user, so the same person can hold a different role in a different organization.

Control 03

Reviewed access and authentication

Workspace access is reviewed before it is granted, identity is handled by Supabase Auth, and the public site is a separate surface from the workspace.

  • Workspace access is invite-based or otherwise reviewed. There is no open self-registration into operational data.
  • Creating an account does not grant workspace access; membership must be granted separately.
  • Supabase Auth issues and verifies sessions. Application code resolves a session to an organization membership and a role before returning workspace data.
  • A membership carries an explicit role and status, and administrative changes to an organization are restricted to its owners and admins.
  • Public pages on ghmap.io require no session and render no organization-scoped records. Authenticated workspace behaviour stays on app.ghmap.io.

Control 04

Private vulnerability disclosure

Security findings are reviewed. Report them privately, with enough detail to reproduce the issue.

  • Send findings to security@ghmap.io with reproduction steps that do not require access to another customer's data.
  • Do not access data that is not yours, degrade service availability, or attempt social engineering of GHMAP users or staff.
  • Allow a reasonable review period before discussing a finding publicly.
  • GHMAP does not run a paid bug bounty programme. Reports are still welcome and are treated as coordinated disclosure.

Report privately to security@ghmap.io.

Open items

What GHMAP does not claim yet

Security posture is only useful if the gaps are stated as plainly as the controls. These are the items GHMAP has not completed.

In progress

  • Row policy coverage is not uniform. Meeting and relationship-network tables currently rely on server-route checks rather than database row policies, and policies for them are being defined.
  • Meeting records created before organization scoping are being reviewed and assigned to an organization.
  • Role granularity in the interface is being brought fully in line with the role rules enforced behind it.
  • Security documentation for procurement review is being expanded beyond this page.

Not in place today

  • SOC 2 Type II certification. GHMAP does not hold one.
  • ISO/IEC 27001 certification. GHMAP does not hold one.
  • A published third-party penetration test or audit report.
  • A published sub-processor list or completed customer security questionnaire pack.

Related notices

Read the rest of the record

Security sits alongside privacy, product boundaries, and trust governance. These pages carry the rest of the picture.

Privacy

How information from public inquiries and workspace activity is handled.

Trust

Source governance, professional review, and the limits of the platform.

Disclaimer

What GHMAP does not advise on, guarantee, or decide for you.

Work inside clear boundaries

Start a project on governed infrastructure

Bring your market-access work into a workspace with reviewed access, organization-scoped records, and source status attached to every entry.

Professional review is required before business use.