Tenant isolation and access control
See how organisation scoping is enforced at the database and who can do what inside your account.
Updated 23 September 2026
On this page
- Why
- An application filter is a line somebody can forget to write.
- How
- Postgres checks your membership and role on every read and write, including ones nobody thought about.
Rows and files
- Every table that holds organisation data carries an organisation id; a session sees only rows of organisations it belongs to.
- Every stored file path begins with the owning organisation's id, and the storage policies apply the same checks.
- Write policies are ranked: the catalogue needs engineer or above, settings and integrations admin or above, billing the owner.
Rows from two organisations in one table: the database policy returns only your organisation's rows, your files sit under your organisation's folder, and roles apply inside your organisation.
The table policy, the storage path rule and the role ladder.
Roles
Roles, lowest to highest: viewer, operator, sales, engineer, admin and owner. An operator works at stations and never sees a price. A role template gives a person their role, areas and stations in one step; see Users, roles and stations.
The last owner cannot be demoted or removed, and only an owner grants ownership. One login can belong to several organisations with a role in each, and a role in one grants nothing in another.
Elevated access on the server
A few server jobs act outside a user session: payment webhooks, import workers, the AI pipeline, scheduled jobs and the token links such as the quote portal. Each is scoped to one named organisation or one record, and the elevated key never reaches the browser.
Audit
Administrative actions, bulk catalogue edits included, are logged with the actor and what changed. The log is written by the server, so a user can cause an entry but never author or edit one.
Isolation protects one organisation from another. Within your own, roles decide what each person can see and export.
Related
- Security overviewSee in one table how Kabaido isolates, encrypts and protects your commercial data.
- Users, roles and stationsInvite people by the job they do and give each one the role, areas and stations that job needs.
- The customer facing trust boundaryKnow why a customer signed in to your Commerce surface can see their own records and nothing else.