Multitenancy
Vistralio can now host multiple tenant workspaces inside one installation while keeping tenant data isolated server-side.
What is tenant-scoped
Each tenant has its own:
- cameras
- events
- schedules
- areas
- edge routers
- faces
- plates
- event types
- activity log entries
- users, groups, and camera visibility assignments
Requests without an explicit tenant use the signed-in account's current tenant.
Admins can override the tenant in the API with X-Tenant-Id or ?tenant_id=.
Tenant switching
- admins can switch to any tenant
- non-admin users can only switch between the tenants assigned to their account
- users assigned to a single tenant do not need a switcher
The active tenant selector appears in the left sidebar when the account can switch between more than one tenant.
Tenant permissions
Relevant permissions:
tenants.view— view tenant records and see assigned tenant optionstenants.edit— create/update/delete tenants and assign users across allowed tenantsusers.edit— create/update users
Typical examples:
- global admin: sees all tenants and can switch anywhere
- regional manager: assigned to two tenants, can switch between them, and can
create users for either tenant if they also have
users.editandtenants.edit - standard user: assigned to one tenant only, no tenant selector needed
License limits
Self-hosted licenses can now limit how many tenant workspaces are allowed on
the instance through the Max Tenants entitlement. Vistralio blocks new tenant
creation once the licensed limit is reached.