SuloBase / Security
How your data is protected.
No badges or percentages. These are the measures, and the proof for the ones you would most want to check.
- A database of its own. Every project runs in its own Postgres container, with its own password and its own signing key.
- Isolation, tested on every change. CI creates two throwaway projects and tries to reach one from the other, with 13 checks. The output is on the right.
- Row-level security, through the real API. The same checks confirm that a signed-in user sees only their own rows and an anonymous request sees nothing.
- No open ports. The server takes no connections from the internet. Every request arrives through Cloudflare.
- Encrypted backups that are restored to prove them. On Pro and up, each backup is encrypted with AES-256 before it leaves the server, and restored into a scratch database to check it works.
- Studio without shared passwords. Opening Studio signs you in with a one-time token.
- Your account. Sign-in attempts are rate-limited, and changing your password signs out every other session.
Provisioning
✓ citesta3673ea provisioned complete
✓ citesta3673eb provisioned complete
Gateway
✓ REST refuses a request with no apikey
✓ auth verify is reachable without an apikey
Cross-tenant isolation
✓ accepts its OWN key ← positive control
✓ A's anon key is refused by B
✓ B's anon key is refused by A
✓ A's SERVICE key is refused by B
Auth
✓ token carries role=authenticated
✓ token carries aud=authenticated
Row level security, through the real REST path
✓ a signed-in user sees only their own rows
✓ an anonymous request sees nothing
✓ a user cannot write a column they were not granted
13/13 checks passed
Building apps for clients?
Give each client a project of their own. Each one is a separate Postgres database in its own container, with its own address, keys and plan, so one client's data never sits in another's database.
- clinic.sulobase.com
- school.sulobase.com
- lender.sulobase.com
- When a client asks where their data is kept, the answer is the table on the data residency page. Send them that page.
- Each project is billed on its own, in kwacha, so the cost can go to the client or into your fee.
- Our agency programme opens at launch: an agency account that earns 10% of each client's plan, every month they stay. That is K15 a month for a Pro client and K50 for a Business client. To join, choose "Partnership" on the contact form.
- The isolation between projects is tested on every change we make. The checks are above.
Join the next intake.
The founding ten are taken. Leave your details and we'll call you on WhatsApp about the next intake.
Join the waitlist →