Bezpieczeństwo
Bezpieczeństwo oparte na konkretnych kontrolach
Chronimy dostęp do danych na kilku warstwach: od sesji i MFA, przez reguły aplikacji, po izolację organizacji w bazie. Zakres usług dostawców infrastruktury i kopii zapasowych potwierdzamy osobno dla środowiska produkcyjnego.
Kontrolowane środowisko
Aplikacja korzysta z zarządzanej infrastruktury Vercel i Supabase. Regiony, podprocesorów i warunki transferu weryfikujemy przed zawarciem umowy.
Bezpieczna transmisja
Aplikacja wymusza HTTPS i HSTS oraz stosuje CSP i pozostałe nagłówki ochronne przeglądarki.
MFA TOTP
Dostęp do prywatnych modułów i danych biznesowych wymaga sesji z drugim składnikiem TOTP.
Rejestrowane zdarzenia
Wybrane operacje biznesowe i administracyjne zapisujemy z czasem, użytkownikiem i kontekstem zdarzenia.
Uwierzytelnianie
MFA TOTP przed dostępem do danych biznesowych
Po zalogowaniu użytkownik konfiguruje lub potwierdza kod TOTP. Dopiero sesja o poziomie AAL2 uzyskuje dostęp do prywatnych modułów aplikacji.
- Google Authenticator, 1Password, Authy, Microsoft Authenticator
- Wymagane AAL2 dla danych przetargowych, RFQ i załączników
- Reset administracyjny faktora z rejestrowanym zdarzeniem
- Bezpieczna zmiana faktora: nowy jest weryfikowany przed usunięciem starego
- Brak mechanizmu „zaufanej przeglądarki” omijającego TOTP
Audit log
Historia wybranych zdarzeń w organizacji
Rejestr zdarzeń ułatwia odtworzenie kluczowych działań. Nie przedstawiamy go jako kompletnego, niezmiennego dziennika wszystkich odczytów i operacji.
- Zmiany statusów postępowań rejestrowane z kontekstem
- Zdarzenia aktywacji, onboardingu i rozliczeń produktu
- Administracyjny reset MFA rejestrowany w organizacji
- Widok zdarzeń ograniczony do organizacji i uprawnionych ról
- Zakres oraz retencję logów ustalamy przed wdrożeniem klienta
Architektura
Bezpieczeństwo wbudowane w warstwy
Kontrole aplikacji i bazy danych wzajemnie się uzupełniają, a operacje uprzywilejowane pozostają po stronie serwera.
Row-Level Security
Polityki RLS na poziomie bazy danych — każdy użytkownik widzi tylko dane swojej organizacji.
Role organizacji
Role owner, admin i member uzupełniają izolację tenantów oraz kontrole wykonywane po stronie serwera.
MFA i sekrety serwerowe
Klucze service role, Stripe i Resend nie trafiają do klienta, a dane biznesowe wymagają AAL2.
Kopie zapasowe jako parametr wdrożenia
Backup, PITR, retencja i test odtworzenia zależą od wybranego planu infrastruktury; potwierdzamy je przed startem produkcyjnym.
Wsparcie obowiązków RODO
Minimalizacja danych, izolacja organizacji i kontrola dostępu wspierają zgodność. Umowy, retencja i procesy pozostają osobnym zakresem wdrożenia.
Kontrola zmian
CI sprawdza lint, typy, testy i build przed integracją zmian. Aktualizacje zależności podlegają audytowi podatności.
Operacje
Procedury, które stosujemy na co dzień
Najmniejsze uprawnienia w bazie
Subskrypcje, liczniki użycia, limiter i ledger webhooków zapisuje wyłącznie warstwa serwerowa.
Izolacja organizacji
Polityki RLS ograniczają dane do bieżącej organizacji, a prywatne tabele dodatkowo wymagają AAL2.
Kontrola publicznych formularzy
Rejestracja i formularz demo korzystają z CAPTCHA, honeypota i trwałych limitów żądań.
Bezpieczne webhooki Stripe
Podpis, deduplikacja, lease i kontrola kolejności chronią stan subskrypcji przed powtórzeniami.
Automatyczna weryfikacja zmian
Pipeline uruchamia analizę kodu, sprawdzenie typów, testy i produkcyjny build.
Jawne parametry operacyjne
SLA, backup, retencję, regiony i procedurę incydentową wpisujemy do dokumentacji wdrożenia — nie zakładamy ich domyślnie.
