Security & trust

How we handle your data

An honest account of what's built today, and what's still on the roadmap. We'll update this page as our security programme matures — not the other way around.

⚠️ Where we are today: INSπRE has not yet completed a formal third-party audit (SOC 2, ISO 27001, or similar) of the platform itself. Everything below describes engineering practices we've actually implemented, not certifications we hold. If a certification matters for your procurement process, talk to us — we can walk through our roadmap and current controls in detail.
Access & authentication

Built today

🔑

Password hashing

Passwords are hashed with Werkzeug's PBKDF2-SHA256 (salted, per-user). Plaintext passwords are never stored or logged.

📱

Two-factor authentication

TOTP-based 2FA (compatible with any authenticator app) is available per user, verified server-side with a time-window check.

🧑‍🤝‍🧑

Role-based access control

Five roles — superadmin, admin, editor, auditor, viewer — scope what each user can see and change within their organisation.

🏢

Multi-tenant isolation

Every record is scoped to a company/organisation ID; queries are filtered by tenant so one organisation cannot see another's data.

🍪

Session hardening

Session cookies are HttpOnly and SameSite=Lax, marked Secure in production (HTTPS-only), with an 8-hour session lifetime.

🧾

Activity logging

Creates, updates and deletes across every module are recorded in an activity log for traceability within your organisation.

Transport & infrastructure

Depends on how you deploy

🔒

Data in transit

INSπRE enforces secure cookies and standard security headers. Whether traffic to your instance is TLS-encrypted depends on your host/reverse proxy (PythonAnywhere, your own nginx, etc.) — we recommend HTTPS-only in production.

💾

Data at rest

Encryption at rest is provided by your database host (e.g. managed PostgreSQL disk encryption). INSπRE does not yet apply application-level field encryption on top of that.

🖥

Self-hosting

INSπRE is a standard Flask + SQLAlchemy application (Docker & nginx configs included). You can self-host on your own infrastructure if you need full control over data residency.

Roadmap

Not yet in place

📜

Formal certification

No SOC 2, ISO 27001, or equivalent audit has been completed for the platform yet. This is on our roadmap as the customer base grows.

🛡

Independent penetration testing

We have not yet commissioned a third-party penetration test. Internal review only, to date.

📊

Public status page

No public uptime/status page exists yet. We'll stand one up as we move customers into production.

Found a problem?

Responsible disclosure

If you believe you've found a security issue, please email support@inspre.io with details. We'll acknowledge reports and won't take legal action against good-faith, non-destructive research.