CasEngine by CodEngines
Security

Confidentiality is the product, not a setting inside it.

Law firms hold their clients' worst days on file. This page sets out how CasEngine keeps each firm's matters separate and controls who can read what — and how each of those has been verified.

Platform

How the platform protects a firm's data.

One database per firm

Each firm's data lives in its own database, not in shared tables separated by a column. A session issued to one firm is rejected on another firm's routes, and an identifier from one firm simply does not resolve in another. Both layers are verified by live cross-firm testing, not by inspection.

Permissions decide every read

Access is enforced at the service layer, so it applies the same way whether a request comes from the web app or the mobile app. Internal staff, client-portal users and external counsel are separate audiences with separate reach, and matters can be scoped further by department or office.

Two-factor authentication

Accounts can require a six-digit code from Google Authenticator, Microsoft Authenticator or any standard authenticator app. Losing a device is recoverable by an administrator without weakening the account.

Credentials are encrypted at rest

Single sign-on secrets, mail and directory credentials, DocuSign tokens and connected-account keys are encrypted before storage. Integration credentials a firm enters itself — Twilio, for instance — are validated against the provider and then stored encrypted.

No hand-assembled SQL

Database access goes through a typed data layer with parameterised queries throughout. There are no raw SQL statements and no stored procedures in the v2 API, which removes SQL injection as a class of risk rather than defending against it case by case.

Errors are recorded, not swallowed

Unhandled errors from every endpoint are written to an audit log with the firm, the user and the timestamp attached. An incident can be reconstructed from records rather than reproduced from memory.

Questions

Answers for your risk file.

No. Each firm has its own database. Isolation is enforced at two independent layers — a session bound to one firm is refused on another firm's routes, and record identifiers do not cross the boundary even if the boundary were reached — and both have been verified by live testing between two firms rather than assumed from the design.

Bring us your security questionnaire

We would rather answer procurement's questions directly than have you guess from a marketing page.