Security built for teams that answer to auditors
Row-level tenant isolation in the database, TOTP multi-factor authentication, a tamper-evident audit trail, and encrypted off-site backups, hosted in the EU. We tell you plainly what we have and what we do not have yet.
Security at a glance
The controls that are in place today, described as they actually work.
Tenant isolation in the database
PostgreSQL forced row-level security on 200+ tenant tables, keyed on the company of the current connection, plus company scoping on every application query. Automated guardrail tests run on every build to catch regressions.
TOTP multi-factor authentication
Authenticator-app MFA with recovery codes. Mandatory for administrator, manager and accountant roles, available to every user, and still required on single sign-on logins.
Tamper-evident audit trail
Every create, update and delete is recorded with who, what, when, IP address and before/after values. Entries are SHA-256 hash-chained, so any modification breaks the chain and is detectable.
Part 11-style e-signature controls
Signature meaning and reason, password re-authentication at signing, UTC time, IP address, and a binding to the SHA-256 hash of the signed file revision. Signed records are edit-locked; changes need a new revision.
Encrypted, off-site backups
AES-256 encrypted database backups every 6 hours (recovery point objective: 6 hours), copied to separate off-site storage that the production server cannot delete. Nightly encrypted file backups. An automated restore test runs every week.
EU (Finland) hosting
Platform data is hosted in the EU (Finland) on a dedicated server operated by MoniDose. TLS 1.2+ for every connection, with HSTS enforced for 365 days.
Access controls
The right people have the right access, and nobody else.
Role-based access control
Eight security roles plus a per-module permission matrix (view, create, edit, delete, approve), so users see and do only what their role allows.
Password policy
12+ characters with upper-case, lower-case, digit and symbol. Account lockout after 5 failed attempts for 15 minutes, 1-hour password-reset links, and administrators can force a password change.
Session controls
8-hour sliding sessions (7 days only if the user chooses Remember me), 1-hour idle server session, HTTPS-only secure cookies, sessions revoked on logout. Administrators can view and end active sessions.
Single sign-on (add-on)
OpenID Connect single sign-on, available as an add-on on the Growth and Enterprise plans, with optional SSO-only enforcement. Multi-factor authentication still applies to SSO sign-ins.
Platform and website are separate
- The MoniDoseQMS platform (your QMS data) is hosted in the EU (Finland). Sub-processors are listed on request.
- This marketing website (monidoseqms.com) is a separate system hosted on Vercel. Contact and demo form data is processed there and may be transferred outside the EEA under Standard Contractual Clauses. See our Privacy Policy.
Security guardrail tests
Automated checks run on every build to catch security regressions before they reach production.
- Authorisation guardrail tests: every controller requires authentication, and destructive actions require roles
- Tenant-scoping guardrail tests: queries returning tenant data must filter by company
- Row-level security guardrail tests: new tenant tables must carry a row-level security policy
- Secret detection in the CI pipeline: blocks hard-coded credentials, API keys and connection strings
- Audit-trail tests: before/after values, user and timestamp captured on changes
Certifications
MoniDose Oy does not currently hold ISO 27001 or SOC 2 certification and has not had a third-party penetration test. We would rather tell you that up front. What we do instead: we answer your security questionnaire and share our controls documentation under NDA, including a description of our controls, backup and restore summary, and sub-processor list.
Open items we are working on
- Confirmation of database-level encryption at rest (pending; we do not claim it today)
- Malware scanning of uploaded files (not yet active)
- SAML 2.0 single sign-on (on the roadmap; OpenID Connect works today)
- Audit logging of failed e-signature attempts (planned; attempts already count toward lockout)
- An external penetration test (not yet performed)
Incident response
We keep documented runbooks for incident response and recovery. We notify affected customers of a personal-data breach without undue delay and within 72 hours of becoming aware of it.
Data Processing Agreement
MoniDose acts as your data processor. A Data Processing Agreement and our sub-processor list are available on request.
Request the DPASecurity FAQ
Common questions about how MoniDoseQMS protects your data.
Where is MoniDoseQMS data hosted?
Platform data is hosted in the EU (Finland) on a server operated by MoniDose. Connections use TLS 1.2+ with HSTS. Our Terms and Privacy Policy promise processing within the EEA. A list of sub-processors is available on request.
How is my data protected?
Tenants are separated by PostgreSQL forced row-level security on 200+ tables plus company scoping on every query. Connections use TLS 1.2+, passwords are hashed with PBKDF2-HMAC-SHA512 (210,000 iterations), and application secrets are protected with ASP.NET Core Data Protection. Database and file backups are AES-256 encrypted. We do not currently claim database-level encryption at rest, and can confirm the current status in writing on request.
Does MoniDoseQMS support 21 CFR Part 11?
MoniDoseQMS is designed to support 21 CFR Part 11, with open items we track openly. E-signatures capture meaning, reason, UTC time, IP address and a SHA-256 binding to the signed file revision, with password re-authentication at signing. The audit trail is tamper-evident and hash-chained. Open items include audit logging of failed signature attempts. You validate the system for your intended use; see our validation page.
Does MoniDoseQMS support SSO and multi-factor authentication?
Multi-factor authentication uses TOTP authenticator apps with recovery codes. It is mandatory for administrator, manager and accountant roles and available to every user. Single sign-on via OpenID Connect is an add-on on the Growth and Enterprise plans, with optional SSO-only enforcement. SAML 2.0 is not available yet.
What security certifications does MoniDose hold?
MoniDose Oy does not currently hold ISO 27001 or SOC 2 certification and has not had a third-party penetration test. We answer security questionnaires and share our controls documentation under NDA.
How are security incidents and breaches handled?
We have documented runbooks for incident response and recovery. We notify affected customers of a personal-data breach without undue delay and within 72 hours of becoming aware of it.
Questions we have not answered? Talk to us about security.