Skip to content
Chantro home

Security

Your company's data stays your company's.

Every company on Chantro is walled off from every other, in the application and in the database itself. Here is how, in plain words.

The database refuses rows that belong to another company.

01What protects your data

Six things worth knowing.

Facts we can point to, with links to the full text at the end of the page.

  • Each company is walled off.

    Row-level security is enforced in the database on the tables that hold company data. Even if an application check were skipped, the database would still refuse another company's rows.

    • Every request is tied to one workspace and checked.
    • Uploaded files sit in per-company folders and open through short-lived links.
  • People see what their role allows.

    Six built-in roles, from owner to worker, with permissions you can tailor per position in the org chart.

    • The server checks every sensitive request against the person's role.
    • The screens hide what a person cannot use.
  • Two-step sign-in and session control.

    People can turn on two-step sign-in with an authenticator app, and keep backup codes. Sign in with a password, or with Google or Microsoft where they are set up.

    • Passwords are stored hashed, never as typed.
    • Sessions can be revoked device by device.
    • Repeated failed sign-ins are slowed down and locked out.
  • An audit log of what happened.

    Security-relevant events are recorded in an audit trail the app can only add to: permission changes, membership changes, exports and deletions. Significant AI actions are logged too.

    • Admins review the audit log in Settings.
  • Support sees your data only if you say so.

    Support access is something someone in your company grants, for a limited time, and it never goes beyond that person's own access. It is read-only unless they choose read and write, and every change is logged. You turn it on in Settings, under Support.

    • It ends on its own when the time is up.
  • Encrypted, and hosted in the United States.

    Chantro runs on AWS in the United States. Data is encrypted in transit with TLS 1.2 or higher and at rest with AES-256.

    • Connection tokens, such as a Google link, are encrypted with a separate key.
    • The database has automated point-in-time backups.

02Defense in depth

Three walls, not one.

Keeping companies apart does not rest on a single check. Each layer works even if another is bypassed.

  1. Layer 01

    The application

    Every request is signed in, bound to one workspace, and refused if it reaches for another company's data.

  2. Layer 02

    The database

    Row-level security sets the company for every query. The database hands back only that company's rows.

  3. Layer 03

    File storage

    Uploads live in per-company folders and are served through short-lived, scoped links.

03The small things

And the rest of the basics.

  • Uploads are checked.

    Files are checked for size and type before they are accepted, and files the AI reads are also checked for their actual contents.

  • Sign-up has bot protection.

    New accounts pass a bot check, and authentication endpoints are rate limited.

  • Invitations expire.

    An invite link works once and expires after seven days.

  • More than one workspace.

    A person can belong to several companies, and each one stays a separate workspace.

  • Error reports are scrubbed.

    Error reporting removes personal details before anything leaves the app.

  • Tell us about a problem.

    Researchers can report a vulnerability by email, and we ask for reasonable time to fix it.

Questions about security?

Talk to us. We will answer plainly, and point to the page that says it.

Row-level security in the database keeps each company's rows apart, and data is encrypted in transit and at rest.