How Zenyto Flow keeps each workspace's data to itself, how people sign in, where the data lives
and how it is backed up. The figures marked live are read from the running service; the rest is maintained by
the Zenyto team and dated below.
Workspace isolation
LiveEvery table that holds workspace data carries the workspace id, and PostgreSQL row-level security is forced on each: a query with the wrong workspace set returns nothing, including for the application's own database role. Cross-workspace reads are tested in CI against a non-superuser role.
Roles and permissions
Workspace roles (Admin, Project admin, Member, Client, Viewer) with per-project roles on top, custom roles bounded by a permission ceiling, and a client view that hides internal fields, comments, attachments and activity on everything a client contact can reach. Issue security levels keep individual issues to named roles, teams and people; everyone else never sees them in lists, search, exports or notifications, and reports count them without naming them.
Audit log
LiveEvery administrative and configuration change is written to an append-only audit log with the actor, the before/after state, the address and the time. Retention is set per workspace (30 days to 20 years, or forever).
Network restriction
LiveWorkspace administrators can restrict use to named IP ranges in Admin, Security. Public pages such as this one, status shares and surveys stay reachable.
Passwords
Argon2id-hashed. Ten failed attempts lock the account for fifteen minutes; sign-in surfaces are additionally throttled per address.
Two-step verification
TOTP authenticator apps with single-use recovery codes. A workspace can require it for everyone, with an optional grace period for enrolment.
Single sign-on
OpenID Connect with any compliant identity provider, with optional just-in-time provisioning and allowed email domains. Zenyto Flow still issues the session, so revocation and roles are unchanged.
User provisioning
SCIM 2.0 for Microsoft Entra ID, Okta and other SCIM clients: the directory creates, updates and deactivates staff accounts and team memberships. Deprovisioning deactivates and never deletes. The SCIM token works only on the SCIM endpoints, one per workspace, and while it is connected SSO no longer creates accounts. Administrators' sign-in addresses cannot be changed by the directory.
Sessions
LiveAccess tokens last 15 minutes. Refresh tokens are opaque, hashed at rest and rotated on every use, with reuse detection; a workspace sets their lifetime from 1 to 30 days (default 14) and an optional idle timeout. Administrators can sign anyone out of every device.
API keys and webhooks
API keys act as the person who made them, within chosen permissions, and are stored as hashes. Outbound webhooks are signed with HMAC-SHA256 over a timestamp and the body, so a receiver can verify the sender.