Bezpieczeństwo danych w KadryHR
Grafik, czas pracy i stawki to dane osobowe Twoich pracowników. Opisujemy tu zabezpieczenia, które działają dziś, bez obietnic na przyszłość.
Gdzie są dane
- Aplikacja i jej dane, w tym dane pracowników, są na serwerze w Polsce.
- Wyjątki opisuje polityka prywatności: Stripe obsługuje płatności i może przekazywać dane płatnicze klienta poza EOG, a usługi powiadomień push przeglądarek dostają wyłącznie zaszyfrowaną treść powiadomienia. Danych pracowników żadna z tych usług nie dostaje.
- Aplikacja nie wysyła danych do modeli sztucznej inteligencji.
Osobna baza dla każdej firmy
- Każda firma ma własną bazę danych w osobnym katalogu na serwerze, razem z własnymi kluczami powiadomień.
- Firmę, do której należy żądanie, serwer ustala z sesji zalogowanej osoby. Nie da się jej wybrać parametrem w adresie.
- Automatyczny test przechodzi przez wszystkie trasy API i sprawdza, czy jedna firma nie widzi danych drugiej.
- Pliki z danymi mają uprawnienia tylko dla usługi (0600).
Uprawnienia sprawdzane na serwerze
- Każda trasa API musi być wpisana na listę uprawnień właściciela albo pracownika. Trasa spoza list jest zablokowana, a test automatyczny pilnuje, żeby żadnej nie pominąć.
- Pracownik widzi grafik całego zespołu, ale godziny i kwoty tylko swoje. Serwer buduje dla niego osobną odpowiedź, w której cudzych stawek po prostu nie ma.
- Pasek wypłaty, kalendarz i eksport pracownika serwer wydaje zawsze dla osoby z sesji, nie dla osoby wskazanej w adresie.
Logowanie i hasła
- Hasła przechowujemy wyłącznie jako skrót scrypt z osobną solą dla każdego konta.
- Hasło musi mieć co najmniej 10 znaków. Hasło startowe od przełożonego trzeba zmienić przy pierwszym logowaniu.
- Po 6 nieudanych próbach konto blokuje się na czas rosnący od 1 minuty do 1 godziny.
- Liczbę prób logowania z jednego adresu IP ograniczają serwer WWW i aplikacja, a adres, z którego w ciągu 10 minut przyjdzie 10 nieudanych logowań, zapora blokuje na godzinę.
- Link do zmiany hasła wysłany e-mailem działa 60 minut i tylko raz, a na serwerze zapisujemy jedynie jego skrót. Po zmianie hasła konto zostaje wylogowane na wszystkich urządzeniach.
Sesje i połączenia
- Połączenia z aplikacją są szyfrowane (HTTPS). Przeglądarka dostaje polecenie HSTS, żeby przez 2 lata łączyła się wyłącznie szyfrowanym połączeniem.
- Cookie sesji jest niedostępne dla skryptów strony (HttpOnly) i wysyłane tylko szyfrowanym połączeniem (Secure).
- Sesja wygasa po 14 dniach albo po 3 dniach bez aktywności. Serwer może ją unieważnić w każdej chwili, np. po wylogowaniu albo zmianie hasła.
- Każda zmiana danych wymaga tokenu CSRF, który chroni przed wykonaniem akcji z obcej strony.
- Nagłówki bezpieczeństwa: polityka treści (CSP) z jednorazowym kluczem dla skryptów, zakaz osadzania aplikacji w ramkach na innych stronach oraz wyłączony dostęp do lokalizacji, mikrofonu i kamery.
Kopie zapasowe
- Codziennie w nocy robimy spójną kopię bazy każdej firmy i rejestru firm.
- Na serwerze zostaje 7 ostatnich kopii dziennych. Każda kopia trafia też poza serwer, do zaszyfrowanego repozytorium programu restic.
- Nieudana kopia wysyła nam alert.
- Przed zmianą struktury bazy aplikacja sama zapisuje migawkę danych firmy.
Płatności
- Dane karty wpisujesz w formularzu Stripe. My ich nie otrzymujemy i nie przechowujemy.
- Zdarzenia od Stripe przyjmujemy wyłącznie z poprawnym podpisem. Stan płatności po powrocie z formularza serwer sprawdza bezpośrednio w Stripe, zamiast ufać parametrom z adresu.
Ślady w aplikacji
- Historia zmian grafiku pokazuje, kto i kiedy zmienił grafik, i pozwala cofnąć pomyłkę.
- Potwierdzenie zapoznania się z grafikiem zapisuje datę i godzinę serwera, adres IP i przeglądarkę. Dziennik doręczeń pobierzesz jako CSV.
Cookies i śledzenie
Strona https://kadryhr.pl nie używa cookies, analityki ani skryptów reklamowych. Aplikacja używa tylko cookies niezbędnych do działania: sesji i zabezpieczenia CSRF.
RODO i umowa powierzenia
- Wobec danych Twoich pracowników jesteśmy podmiotem przetwarzającym. Umowę powierzenia przetwarzania danych (art. 28 RODO) zawiera § 11 regulaminu, a listę podmiotów, które nam w tym pomagają, polityka prywatności.
- O naruszeniu ochrony danych informujemy Cię nie później niż 48 godzin od jego wykrycia.
- Grafik i rozliczenia możesz w każdej chwili wyeksportować do plików. Po zakończeniu umowy dane firmy usuwamy po 30 dniach, zgodnie z § 10 regulaminu.
Zgłoś podatność
Jeśli znajdziesz błąd bezpieczeństwa, nie publikuj go. Napisz na kontakt@kadryhr.pl z tematem „KadryHR – bezpieczeństwo”. Odpowiadamy w ciągu 7 dni. Ten sam adres podaje plik /.well-known/security.txt aplikacji.