Security

Lyve Sheets handles consultant financial records, HR documents, and immigration case data. Here is what we actually do to keep each firm's data isolated and protected.

Tenant isolation

Every table in our Postgres database enforces row-level security (RLS) scoped to tenant, backed by an application-layer tenant check on every query — two independent walls, not one.

Role-based access

Access is scoped per module — accounts, HR, and immigration each have their own role grants, so a user only sees what their role is permitted to see.

Audit logging

Changes to records are captured in append-only audit logs, so activity within a tenant can be reconstructed after the fact.

Document storage

HR documents and case files live in access-controlled storage and are served through short-lived signed URLs rather than public links.

Secrets handling

Secrets are never stored in our application database. OAuth tokens for connected integrations (QuickBooks, Dropbox) are held by Nango, a dedicated token vault, and referenced rather than copied into our systems.

Consultant portal scope

Consultants using the self-service portal can only see and submit their own records — never another consultant's or another firm's.

Compliance roadmap

SOC 2 readiness is on our roadmap. We are not yet certified, and we won't claim otherwise.

Questions about our security practices? Reach us at sudheer@kreto.ai.