Security Policy
Last updated 2026-05-28
Security posture
Security is fundamental to running a database platform. This page describes how we protect your data in transit, at rest, and across our systems — and what we commit to doing when things go wrong.
This page is a living document. When the underlying controls change in a way that affects your data, we update the “Last updated” date.
Encryption
All client traffic to the Luceris Cloud control plane and database proxies is encrypted using TLS 1.3. We require modern cipher suites and disable legacy protocols. Connection URIs returned by the Service include sslmode=require (or the engine-equivalent) so client drivers negotiate TLS by default.
Data at rest is encrypted with AES-256 on the underlying storage layer. Tenant database credentials are stored in our credential cache as bcrypt hashes; the proxy validates against the bcrypt-hashed entry on every connection. Plaintext credentials are never written to logs.
Access control
Access to your data is gated by role-based access control on the Luceris side and by your database’s native authentication on the tenant side. Roles within an organization are owner, admin, and member; only owners and admins can rotate database passwords or manage membership.
Internally, employee access to production systems follows the principle of least privilege. Standing access is limited to the operations team. All access is logged via our audit-log dual-sink (a write to CloudWatch as the authoritative record, plus an awaited Postgres audit_log INSERT for query-time access).
Tenant isolation
Each tenant database is provisioned with a unique credential pair. Redis tenants run as dedicated redis-server processes on private ports behind the proxy. Cross-organization access is rejected at the proxy and at the underlying engine — there is no shared schema or shared connection pool that grants ambient access to another tenant’s data.
Backups and disaster recovery
Tenant databases are backed up on a schedule appropriate to the engine and plan. Postgres clusters support point-in-time recovery within the retention window of your tier. Specific recovery-time and recovery-point objectives for the Contact-us tier are documented in your service agreement.
Monitoring and incident detection
We run continuous monitoring on infrastructure metrics, error rates, and authentication anomalies via CloudWatch alarms and the audit-log dual-sink. Per-IP rate limiting at the API edge (backed by DynamoDB) protects against credential-stuffing and brute-force attempts.
Incident response and breach notification
We maintain an incident-response runbook covering detection, triage, containment, recovery, and post-incident review.
Where a security incident materially affects your personal data, we will notify the CNIL within 72 hours of becoming aware, as required by Article 33 GDPR, and notify affected users in line with Article 34. Communications are handled by email and, where available, through an in-product notice.
Vulnerability disclosure
We welcome reports of security vulnerabilities. Please email [email protected] with a description, reproduction steps, and your contact information. We acknowledge reports promptly and target a coordinated-disclosure window of 90 days from acknowledgement.
We do not operate a paid bug bounty today. We do not pursue legal action against researchers acting in good faith and in accordance with this policy.
Sub-processors
We rely on a small number of trusted sub-processors to operate the Service. The current list (and a short description of what each provides) lives on our GDPR page.
Changes to this policy
When our security controls change in a way that materially affects your data, we update this page and notify customers on the Contact-us tier directly.
Contact
Security questions, vulnerability reports, and compliance requests can be sent to [email protected].