Izolacja danych między organizacjamiData isolation between organizations
Terapeuto obsługuje wiele organizacji. Każdy gabinet i każde centrum stanowi odrębną organizację, do której dostęp mają wyłącznie zaproszeni członkowie zespołu.Terapeuto serves many organizations. Every practice and every center is a separate organization, accessible only to the team members who have been invited.
- Każde żądanie do zasobów organizacji przechodzi przez kontrolę przynależności użytkownika do organizacji.Every request for organization resources passes through a check that the user belongs to the organization.
- Przy operacjach dotyczących pacjentów, wizyt, sal i zespołu system sprawdza również, czy dany rekord należy do właściwej organizacji — niezależnie od uprawnień użytkownika.For operations involving patients, visits, rooms and the team, the system also checks that the record belongs to the right organization — regardless of the user's permissions.
- Nie ma dostępu do danych innej organizacji przez podmianę identyfikatora w adresie.There's no way to reach another organization's data by swapping an ID in the URL.
Role i uprawnieniaRoles and permissions
Dostęp wynika z roli, nie z dobrej woli. Wbudowane role to Właściciel, Terapeuta i Recepcjonista.Access follows from a role, not from good intentions. The built-in roles are Owner, Therapist and Receptionist.
- Terapeuta widzi informacje o swojej pracy i przypisanych mu pacjentach.A therapist sees information about their own work and their assigned patients.
- Recepcja obsługuje grafik i kontakt, bez dostępu do treści notatek klinicznych.Reception handles the schedule and communication, with no access to clinical note content.
- Właściciel ma wgląd w organizację, rozliczenia i raporty.The owner has insight into the organization, billing and reports.
- Uprawnienia są przypisane do konkretnych funkcji, a nie nadawane na zasadzie „wszystko albo nic”.Permissions are tied to specific functions rather than granted on an all-or-nothing basis.
Szyfrowanie danych wrażliwychEncryption of sensitive data
- Notatki sesji oraz numer PESEL są szyfrowane indywidualnym kluczem każdego pacjenta (Fernet — szyfrowanie symetryczne AES-CBC z uwierzytelnieniem HMAC-SHA256). Treść nie jest zapisywana jawnym tekstem w bazie.Session notes and national ID numbers are encrypted with a key individual to each patient (Fernet — symmetric AES-CBC encryption authenticated with HMAC-SHA256). The content is never stored as plain text in the database.
- Klucz pacjenta jest przechowywany oddzielnie od samej bazy. Usunięcie klucza czyni notatki trwale nieczytelnymi — to mechanizm realizacji prawa do usunięcia danych.The patient's key is stored separately from the database itself. Deleting the key makes the notes permanently unreadable — a mechanism for honouring the right to erasure.
- Dostęp do odszyfrowanej treści wynika z uprawnień w organizacji.Access to decrypted content follows from permissions within the organization.
- Transmisja danych między przeglądarką a serwerem jest szyfrowana przez HTTPS (TLS).Data transmission between the browser and the server is encrypted with HTTPS (TLS).
Odrębnie od notatek, karta pacjenta rozdziela strefę oficjalną (dokumentacja) i strefę roboczą (notatki wewnętrzne). To wspiera zarówno pracę kliniczną, jak i porządek dokumentacyjny.Separately from the notes, the patient record splits into an official zone (documentation) and a working zone (internal notes). This supports both clinical work and documentary order.
Dziennik zdarzeń (dziennik audytowy)Event log (audit log)
Każda operacja tworzenia, aktualizacji i usunięcia jest logowana. Dziennik pozwala filtrować wpisy po:Every create, update and delete operation is logged. The log lets you filter entries by:
- rodzaju zasoburesource type (np. pacjenta, wizyty lub oddziału),(e.g. patient, visit or location),
- akcjiaction (utworzenie, zmiana, usunięcie),(create, update, delete),
- zakresie datdate range.
Karty podsumowań pokazują liczbę zdarzeń i podział według typu akcji. Dzięki temu można sprawdzić, kto i kiedy wprowadził zmiany w dokumentacji.Summary cards show the number of events and a breakdown by action type. That way you can check who changed the documentation and when.
Uwierzytelnianie i sesjeAuthentication and sessions
- Logowanie bezhasłowe (OTP)Passwordless login (OTP) — kod jednorazowy e-mailem lub SMS-em; brak hasła do wycieku.a one-time code by email or SMS; there's no password to leak.
- Lista aktywnych sesjiA list of active sessions z urządzeniem, adresem IP i datą utworzenia.with the device, IP address and creation date.
- Odwołanie pojedynczej sesji lub wszystkichRevoking a single session or all of them — przydatne, gdy zgubisz urządzenie.useful when you lose a device.
Integralność plików i dokumentówFile and document integrity
- Pliki pacjentów trafiają do sejfu plików z weryfikacją sum kontrolnych SHA-256.Patient files go into a file vault with SHA-256 checksum verification.
- Dokumenty można opatrzyć podpisem elektronicznym z weryfikacją PIN-em SMS; każda sesja podpisu generuje certyfikat.Documents can carry an electronic signature verified by an SMS PIN; every signing session generates a certificate.
- Pobranie pliku i operacje na dokumentach są odnotowywane w dzienniku.File downloads and document operations are recorded in the log.
Kopie zapasowe i dostępnośćBackups and availability
- Baza danych jest na bieżąco replikowana do szyfrowanego magazynu obiektowego zgodnego z S3. Nie polegamy wyłącznie na ręcznie tworzonych kopiach.The database is continuously replicated to an encrypted, S3-compatible object store. We don't rely solely on manually created backups.
- Dane aplikacji przechowujemy w infrastrukturze w Unii Europejskiej.Application data is stored in infrastructure within the European Union.
Zgodność z RODO w praktyceGDPR compliance in practice
- Umowa powierzenia przetwarzania danych (DPA)A data processing agreement (DPA) — dostępna na żądanie.available on request.
- Rejestr osób upoważnionychA register of authorized persons i wzory upoważnień — w materiałach do pobrania (patrz Pakiet RODO).and authorization templates — in the downloadable materials (see the GDPR pack).
- Trwałe usunięcie organizacjiPermanent organization deletion z poziomu ustawień (potwierdzenie wpisaniem nazwy organizacji).from the settings (confirmed by typing the organization's name).
- Retencja dokumentacjiDocumentation retention należy do obowiązków praktyki; system wspiera długoterminowe przechowywanie, a nie wymusza krótkich okresów.is the practice's responsibility; the system supports long-term storage rather than forcing short retention periods.
Czego tu nie znajdziesz:What you won't find here: nie twierdzimy, że samo narzędzie czyni gabinet zgodnym z prawem. Zgodność to połączenie systemu, umowy powierzenia, upoważnień personelu i procedur gabinetu. Chętnie pomożemy ci to poukładać.we don't claim that a tool alone makes a practice legally compliant. Compliance is a combination of the system, a DPA, staff authorizations and your practice's procedures. We're happy to help you put it together.
Testy i przeglądy bezpieczeństwaSecurity testing and reviews
Bezpieczeństwo wymaga stałej pracy, a nie jednorazowej deklaracji. Prowadzimy wewnętrzne przeglądy i testy obejmujące m.in. kontrolę dostępu do zasobów organizacji, walidację danych wejściowych i bezpieczeństwo publicznego widgetu. Wszystkie problemy wykryte podczas przeglądu w maju 2026 r. zostały naprawione. Wprowadziliśmy też kontrolę przynależności rekordów do organizacji w kilkudziesięciu punktach końcowych API.Security takes ongoing work, not a one-off statement. We run internal reviews and tests covering, among other things, access control for organization resources, input validation and the security of the public widget. All issues found during the May 2026 review have been fixed. We also added organization membership checks for records across several dozen API endpoints.
Jeśli przygotowujesz się do audytu lub wdrożenia i potrzebujesz:If you're preparing for an audit or an implementation and need:
- opisu architektury i regionu przechowywania danych,a description of the architecture and the data storage region,
- wzoru umowy powierzenia (DPA),a DPA template,
- informacji o kopii zapasowej i odtwarzaniu,information about backups and recovery,
- zasad retencji i usuwania danych,retention and deletion rules,
napisz na mateusz@terapeuto.com. Odpowiemy konkretami, nie marketingiem.write to mateusz@terapeuto.com. We'll answer with specifics, not marketing.
Eksport i wyjście z systemuExport and leaving the system
- Dokumenty i załączniki pacjenta możesz pobrać i wydrukować — w tym kartę pacjenta w widoku do druku.You can download and print patient documents and attachments — including the patient record in a print view.
- Hurtowy eksport danych organizacjiBulk export of organization data realizujemy na żądanie; napisz do nas, jeśli go potrzebujesz do migracji lub archiwizacji.is handled on request; write to us if you need it for migration or archiving.