Najlepsze praktyki bezpieczeństwa

Chaindoc szyfruje dokumenty w spoczynku (AES-256) i w transmisji (TLS 1.3), weryfikuje integralność na blockchainie i loguje każdą akcję. Oto rzecz — większość zabezpieczeń działa od razu, ale warto wiedzieć, co skonfigurować przed uruchomieniem produkcyjnym.

Większość funkcji bezpieczeństwa działa od razu po uruchomieniu. Są jednak ustawienia, które powinieneś włączyć (MFA, ograniczenia IP), i nawyki, które warto wyrobić w zespole (rotacja kluczy, przeglądy dostępu). Ten przewodnik obejmuje oba aspekty.

Uwierzytelnianie

Uwierzytelnianie wieloskładnikowe

Włącz MFA dla wszystkich użytkowników, nie tylko administratorów. To najskuteczniejsza rzecz, jaką możesz zrobić. Chaindoc wspiera:

  • Aplikacje uwierzytelniające (TOTP) — Google Authenticator, Authy, 1Password
  • Kody SMS — działa, ale mniej bezpieczne. Lepiej używaj aplikacji uwierzytelniających.
  • Klucze sprzętowe (FIDO2/WebAuthn) — najsilniejsza opcja
  • Uwierzytelnianie biometryczne na urządzeniach mobilnych

Polityki haseł

Jeśli nie używasz SSO, wymuszaj silne hasła. Chaindoc pozwala skonfigurować minimalną długość (zalecamy 12+ znaków), wymagania dotyczące złożoności, interwały wygaśnięcia i blokadę po nieudanych próbach. Możesz też zablokować ponowne użycie ostatnich 10 haseł.

Kontrola dostępu oparta na rolach

Dawaj ludziom tylko taki dostęp, jakiego potrzebują. Chaindoc ma wbudowane role (Właściciel, Administrator, Manager, Członek, Gość, Audytor) i wspiera niestandardowe role z uprawnieniami do konkretnych akcji. Przeglądaj przydziały co kwartał i usuwaj to, co już nie jest potrzebne. Szczegóły znajdziesz w dokumentacji zarządzania zespołem.

Szyfrowanie

W spoczynku

Wszystkie dokumenty są szyfrowane algorytmem AES-256 w magazynie. Kopie zapasowe są szyfrowane osobnymi kluczami. Klucze szyfrowania są zarządzane przez dedykowany KMS (service zarządzania kluczami) i rotowane co kwartał.

W transmisji

Każde połączenie używa TLS 1.3. Słabe szyfry są wyłączone. Nagłówki HSTS zapewniają, że przeglądarki nigdy nie obniżą do HTTP. Dotyczy to aplikacji webowej, API i transakcji blockchain.

Bezpieczeństwo kluczy API

Klucze API są najczęstszym źródłem problemów z bezpieczeństwem. Wyciekły tajny klucz daje pełny dostęp do konta Chaindoc.

Klucze publiczne (`pk_`) są przeznaczone do użycia na frontendzie i mają dostęp tylko do odczytu, więc są bezpieczne do umieszczenia w bundlach klienta. Więcej o typach kluczy znajdziesz w przewodniku integracji API.

Weryfikacja blockchain

Każdy opublikowany dokument otrzymuje hash zapisany na blockchainie. To właśnie czyni go niepodważalnym. Nawet gdyby ktoś uzyskał bezpośredni dostęp do bazy danych, nie mógłby zmodyfikować dokumentu bez unieważnienia hashu blockchain.

  • Hashe dokumentów są rejestrowane przy publikacji i przy każdej zmianie stanu (podpisy, unieważnienie itp.)
  • Potwierdzenia transakcji są przechowywane z dokumentem dla łatwej weryfikacji
  • Każdy może niezależnie zweryfikować dokument względem zapisu blockchain
  • Zapis jest permanentny — przetrwa nawet gdyby Chaindoc przestał działać

W praktyce, dla dokumentów o wysokiej wartości warto zweryfikować zapis blockchain po podpisaniu, aby potwierdzić, że wszystko się zgadza.

Bezpieczeństwo webhooków

Jeśli używasz webhooków, weryfikuj podpis HMAC dla każdego przychodzącego żądania. Bez tego ktoś mógłby wysyłać fałszywe zdarzenia na Twój endpoint. Przewodnik po webhookach zawiera kod weryfikacyjny.

Zgodność z regulacjami

Infrastruktura Chaindoc posiada certyfikat SOC 2 Type II. W zależności od branży, możesz potrzebować dodatkowych ustawień:

  • GDPR — opcje lokalizacji danych (UE, US, Azja), prawo do usunięcia, przenoszalność danych. Polityki retencji dokumentów obsługują automatyczne usuwanie.
  • HIPAA — logowanie audytowe i kontrola dostępu dla dokumentów medycznych. Skontaktuj się z pomocą w sprawie BAA.
  • SOC 2 — kontrole bezpieczeństwa są udokumentowane. Coroczne audyty zewnętrzne są przeprowadzane.
  • eIDAS / ESIGN Act / UETA — zgodność podpisów jest wbudowana dla wszystkich trzech typów.
  • ISO 27001 — praktyki zarządzania bezpieczeństwem informacji są zgodne z ISO 27001.

Logowanie audytowe

Chaindoc loguje każdą akcję: logowania, dostęp do dokumentów, edycje, zdarzenia podpisu, zmiany uprawnień i wywołania API. Logi są przechowywane w systemie niepodważalnym przez co najmniej rok (dłużej, jeśli Twoja polityka retencji tego wymaga).

Możesz eksportować logi audytowe do zewnętrznych przeglądów zgodności. Nieudane próby logowania i podejrzana aktywność wyzwalają alerty, jeśli skonfigurujesz monitorowanie.

Monitorowanie i reagowanie na incydenty

Skonfiguruj alerty dla nieudanych prób logowania, nietypowej aktywności API i eskalacji uprawnień. Chaindoc integruje się z systemami SIEM, jeśli Twój zespół bezpieczeństwa z nich korzysta.

Miej gotowy plan reagowania na incydenty. Wiedz, kogo kontaktować, co wyłączyć i jak komunikować naruszenie. Testuj plan przynajmniej raz w roku. W przypadku incydentów bezpieczeństwa związanych z Chaindoc, napisz na security@chaindoc.com.

Checklist przed produkcją

Przejdź przez tę listę przed uruchomieniem produkcyjnym:

  1. MFA włączone dla wszystkich kont
  2. Polityki haseł skonfigurowane (12+ znaków, blokada po 5 nieudanych próbach)
  3. Role przypisane zgodnie z zasadą najmniejszych uprawnień
  4. Szyfrowanie AES-256 potwierdzone (włączone domyślnie)
  5. TLS 1.3 wymuszony na wszystkich endpointach
  6. Klucze API przechowywane w zmiennych środowiskowych lub menedżerze sekretów
  7. Klucze testowe zamienione na klucze produkcyjne
  8. Ograniczanie szybkości skonfigurowane dla endpointów API
  9. Weryfikacja HMAC webhooków zaimplementowana
  10. Logowanie audytowe włączone i okres retencji ustawiony
  11. Monitorowanie bezpieczeństwa i alerty skonfigurowane
  12. Plan reagowania na incydenty udokumentowany
  13. Kopie zapasowe przetestowane (spróbuj przywrócić)
  14. Wymagania zgodności udokumentowane i spełnione

Co zrobić dalej