Zen Tech Limited

Platform

Multi-tenant architecture: isolation you can prove

Tenant isolation is not a feature you add later. It is a property of the schema, the policies and every query path in the system.

Zen Tech Platform Team · 9/2/2026 · 6 min read

A multi-tenant platform has one job it can never fail: never show one customer another customer's data.

Isolation belongs in the database

Application-level filtering is a promise. Row level security is an enforcement. Every table in Zen One carries an organisation reference, and every policy resolves membership through a shared, security-definer helper rather than a copied subquery. One helper means one place to review and one place to fix.

Grants are not optional

Enabling row level security without granting table privileges produces a table nobody can read. Granting privileges without policies produces a table everybody can read. Both are written in the same migration, always.

Test the negative case

Good tests prove a member can read their data. Great tests prove a non-member cannot. Automated probes that sign in as an outsider and expect an empty result are the cheapest security insurance a platform can buy.

Audit everything that crosses a boundary

Exports, integrations, admin overrides and AI requests are the places where isolation is most likely to leak. Log them with the actor, the organisation and the payload shape.

PlatformArchitectureSecurity

← All insights