Sari la conținut
notsowms
Securitate

Fiecare client are propria bază de date.
GDPR by design, nu by policy.

Securitatea nu e un bullet point. E arhitectura. Iată exact ce facem și ce nu facem.

Database-per-tenant

Fiecare client are propria bază MySQL, nu o tabelă shared cu row-level filtering. Ștergerea definitivă la plecarea clientului e un DROP DATABASE — nu o interogare de ștergere pe milioane de rânduri care poate lăsa date orfane.

  • Izolare fizică între clienți
  • Backup-uri per-tenant, nu un blob global
  • Custom DB credentials per tenant
  • Ștergere garantată la cerere (GDPR Art. 17)

WebAuthn / passkeys

Autentificare cu Face ID, amprentă sau cheie hardware (YubiKey). Implementare cu lbuchs/webauthn, challenge-uri stocate în DB pentru rezistență la load balancing, counter validation pentru prevenirea cloning-ului.

  • Face ID, amprentă, Windows Hello
  • Multi-device per user
  • Challenge-uri DB-backed (HA-safe)
  • Counter validation vs. credential cloning

2FA cu TOTP + device trust

TOTP (Google Authenticator, Authy) pentru conturi care necesită 2FA. Device trust ca pickerii să nu fie întrebați de 2FA la fiecare shift — doar după 30 de zile sau dacă apar anomalii de login.

  • TOTP standard compatibil cu toate authenticator apps
  • Device trust 30 zile
  • Backup codes one-time pentru recovery
  • Enforcement per role

Audit log & impersonation

Fiecare create/update/delete e logat cu user_id, timestamp, IP, user agent, plus vechea și noua valoare. Operatorii de support pot impersona un user tenant pentru debugging — acțiunea e logată explicit și vizibilă tenantului.

  • Log complet pe toate operațiunile CRUD
  • Vechea valoare + noua valoare per acțiune
  • IP + user agent per operațiune
  • Impersonation cu audit separat, vizibil tenantului

Storage & transport

Fișierele (etichete, facturi, foto-uri incidente, imagini produse) sunt pe DigitalOcean Spaces în regiunea EU (lon1), S3-compatible, accesate doar prin signed URLs cu expirare. TLS 1.2+ pentru transport.

  • DO Spaces EU (lon1, UK)
  • Signed URLs cu expirare configurabilă
  • TLS 1.2+ în tranzit
  • Backup cross-region

Sesiuni & remember-me

Sesiunile trăiesc într-o conexiune DB dedicată, cu SameSite=lax. Remember-me folosește selector:validator rotating tokens (nu JWT-uri) — la orice login sau abuz, invalidăm cu rotație automată.

  • Selector:validator pattern (nu JWT)
  • Rotație la fiecare login
  • 30 de zile expiry, revocabil
  • DB-backed sessions pe conexiune separată

Infrastructură

Două servere aplicație în spatele unui load balancer, cu sesiuni într-un DB dedicat pentru persistență. MySQL 8.4, Redis pentru queue și cache. Fișiere pe DO Spaces EU.

Servere aplicație
2 + LB
Redundanță activă, deploy rolling
Database
MySQL 8.4
Per-tenant, backup-uri zilnice
File storage
DO Spaces EU
S3-compatible, signed URLs
Real-time
Laravel Reverb
WebSockets tenant-scoped
Queue & cache
Redis
Job retries + locks
SLA
99,5 / 99,9%
Professional / Enterprise

Conformitate

GDPR

Sub-procesorii documentați pe /gdpr. Data deletion la cerere. DPO disponibil. SCC-uri pentru orice transfer de date (nu transferăm în afara SEE).

ANAF & e-Factura

Conform cu legislația fiscală românească. Retenție 10 ani pentru facturi. Emitere e-Factura prin Oblio sau SmartBill, direct în SPV.

SOC2 / ISO 27001

Pe roadmap pentru 2026. Procesele interne sunt deja aliniate cu controalele SOC2 Type II.

Pentru echipa ta de legal: Avem DPA standard gata semnat, o listă completă a sub-procesorilor și un whitepaper de arhitectură. Le trimitem la cerere pe email.

Mai multe întrebări despre securitate?

Răspundem personal pe email sau într-un call cu echipa ta de IT/Security.