Bezpieczeństwo w Rebutcie
Wersja z 3 sierpnia 2026.
Strona dla osób, które przed podpisaniem umowy pytają "co się dzieje z naszymi rozmowami". Opisuje stan faktyczny, a nie plany. Czego nie ma, tego nie obiecujemy.
Rozdział danych między firmami
Najgorsza możliwa awaria tego produktu nie jest techniczna, tylko taka, w której jedna firma zobaczy rozmowy drugiej. Dlatego rozdział nie opiera się na dyscyplinie programisty:
- każda tabela z danymi klienta ma identyfikator firmy,
- warstwa dostępu do bazy odmawia wykonania zapytania, które dotyka takiej tabeli bez warunku na identyfikator firmy - to nie jest konwencja, to bariera, o którą rozbija się zapomniany warunek,
- osobny zestaw testów przy każdej zmianie próbuje dosięgnąć cudzych rozmów, playbooka, leadów, materiałów i zespołu każdą ścieżką dostępną z zewnątrz.
Co przechowujemy, a czego nie
| Rzecz | Czy przechowujemy |
|---|---|
| Nagranie audio rozmowy | nie - dźwięk jest zamieniany na tekst w locie i znika |
| Transkrypt rozmowy | tak, domyślnie 90 dni, Klient może skrócić |
| Podsumowanie i ocena rozmowy | tak, razem z transkryptem |
| Oryginalne pliki wgrane przez Klienta | nie - zostaje tylko wyciągnięty tekst |
| Numery kart płatniczych | nie - obsługuje je Stripe, my widzimy sam identyfikator klienta |
| Hasła | wyłącznie skróty bcrypt, kosztem 12 - hasła nie da się z nich odtworzyć |
| Tokeny do CRM-u Klienta | tak, zaszyfrowane AES-256-GCM; zrzut bazy nie daje dostępu do CRM-u |
Dostęp
- role po stronie Klienta: właściciel (płaci, zarządza), manager (widzi zespół i playbook), handlowiec (widzi wyłącznie swoje rozmowy),
- logowanie hasłem albo przez Google; przy Google prosimy wyłącznie o tożsamość (
openid email profile), nigdy o pocztę ani dysk, - ciasteczko sesji jest
HttpOnly,SameSite=LaxiSecure- skrypt na stronie go nie odczyta, a cudza strona nie użyje go w żądaniu, - zaproszenia do zespołu leżą w bazie wyłącznie jako skrót tokenu; wyciek tabeli nie daje gotowych linków wejścia,
- płatności i webhooki Stripe weryfikujemy podpisem stałoczasowo, ze znacznikiem czasu.
Transmisja
Cały ruch idzie po HTTPS, dźwięk po szyfrowanym WebSockecie. Bez HTTPS przeglądarka i tak nie da dostępu do mikrofonu, więc nie ma tu wariantu "działa, ale nieszyfrowane".
Kto ma dostęp po naszej stronie
Dostęp do produkcyjnej bazy ma właściciel firmy. Nie zatrudniamy zespołu wsparcia przeglądającego rozmowy Klientów. Do rozwiązania zgłoszenia nie zaglądamy w treść rozmów bez wyraźnej prośby Klienta.
Awarie i zgłaszanie podatności
Naruszenie ochrony danych zgłaszamy Klientowi bez zbędnej zwłoki, nie później niż w ciągu 48 godzin od stwierdzenia - termin krótszy niż wymagane 72 godziny, żeby Klient zdążył wykonać swój własny obowiązek wobec organu nadzorczego.
Znalezioną podatność prosimy zgłosić na kontakt@rebutta.app. Odpowiadamy w ciągu 72 godzin. Nie ścigamy osób, które zgłaszają podatności w dobrej wierze i nie sięgają przy tym po cudze dane.
Czego jeszcze nie ma
Uczciwie, bo prędzej czy później i tak ktoś zapyta:
- nie mamy certyfikatu ISO 27001 ani raportu SOC 2 - to koszt i czas, na które produkt tej wielkości jeszcze nie zarobił,
- nie mamy uwierzytelniania dwuskładnikowego w aplikacji; logowanie przez Google jest na razie najbliższym zamiennikiem, bo dziedziczy 2FA z konta Google,
- nie mamy dziennika czynności administratora widocznego dla Klienta,
- kopie zapasowe bazy robi dostawca hostingu; nie mamy jeszcze przećwiczonej procedury odtworzenia z kopii w zadanym czasie.