0Pricing
Cyber Security Academy · Lekcja

Kontrola dostępu i szyfrowanie

Chroń dane w spoczynku

Kontrola dostępu i szyfrowanie to bezpłatna lekcja Cyber Security Academy na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Cyber Security Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Cyber Security Academy zawiera 4 lekcji w sumie.

Ochrona danych w spoczynku

Bazy danych przechowują najcenniejsze dane, dlatego najważniejsze są dwa mechanizmy: kontrola dostępu (kto może dotykać danych) oraz szyfrowanie (dzięki któremu skradzione dane stają się bezużyteczne).

Razem chronią dane zarówno podczas działania systemu, jak i w przypadku wykradzenia dysków lub kopii zapasowych.

Uwierzytelnianie a autoryzacja

Rozróżniaj te dwa pojęcia:

  • Uwierzytelnianie potwierdza, kim jesteś (logowanie, certyfikat, token IAM).
  • Autoryzacja określa, co możesz zrobić po zidentyfikowaniu.

Silne zabezpieczenia bazy danych wymagają obu mechanizmów: zweryfikowanych tożsamości i ściśle ograniczonych uprawnień.

Zasada najmniejszych uprawnień

Przyznaj każdemu kontu tylko te uprawnienia, których potrzebuje, i żadnych dodatkowych. Usługa raportująca powinna mieć dostęp tylko do odczytu, a aplikacja zapisująca dane nie powinna mieć możliwości usuwania tabel za pomocą DROP.

CREATE ROLE report_reader;
GRANT SELECT ON sales.* TO report_reader;
GRANT report_reader TO 'analytics_svc'@'%';

Kontrola dostępu oparta na rolach

RBAC grupuje uprawnienia w role i przypisuje role użytkownikom. Takie rozwiązanie skaluje się lepiej niż przyznawanie uprawnień poszczególnym użytkownikom i ułatwia audyty.

  • Zdefiniuj role: read_only, app_writer, dba.
  • Przypisz użytkowników do ról.
  • Regularnie przeglądaj członkostwo w rolach.

Bezpieczeństwo na poziomie wierszy i kolumn

Precyzyjna kontrola ogranicza dostęp w obrębie tabeli.

  • Poziom kolumn: ukryj kolumny z wynagrodzeniami lub numerami SSN przed niektórymi rolami.
  • Bezpieczeństwo na poziomie wierszy (RLS): dzierżawca widzi tylko własne wiersze.
-- PostgreSQL row-level security
ALTER TABLE orders ENABLE ROW LEVEL SECURITY;
CREATE POLICY tenant_isolation ON orders
  USING (tenant_id = current_setting('app.tenant')::int);

Szyfrowanie danych w spoczynku

Szyfrowanie danych w spoczynku chroni dane na dysku. Jeśli ktoś ukradnie dysk lub plik kopii zapasowej, jego zawartość będzie nieczytelna bez klucza.

Dostępne opcje obejmują szyfrowanie całego dysku, szyfrowanie systemu plików oraz bazodanowe Transparent Data Encryption (TDE).

Transparent Data Encryption

TDE automatycznie szyfruje pliki bazy danych. Aplikacje nie wymagają żadnych zmian — silnik szyfruje dane podczas zapisu i odszyfrowuje je podczas odczytu. Chroni to przed kradzieżą plików, ale nie przed atakującym, który ma już prawidłową sesję bazy danych.

-- SQL Server example concept
CREATE DATABASE ENCRYPTION KEY
  WITH ALGORITHM = AES_256
  ENCRYPTION BY SERVER CERTIFICATE tde_cert;
ALTER DATABASE appdb SET ENCRYPTION ON;

Szyfrowanie na poziomie kolumn

W przypadku szczególnie poufnych pól (numery kart, dane medyczne) szyfruj poszczególne kolumny. Tekst jawny nigdy nie jest przechowywany w bazie danych, nawet w przypadku administratora bazy danych.

Kompromis polega na tym, że zaszyfrowane kolumny trudno indeksować i przeszukiwać, dlatego stosuj tę metodę wybiórczo.

Szyfrowanie podczas przesyłania

Dane wymagają ochrony także podczas transmisji. Wymagaj używania TLS dla wszystkich połączeń klienta z bazą danych, aby nie można było przechwycić danych uwierzytelniających ani zestawów wyników.

-- PostgreSQL: force SSL in pg_hba.conf
hostssl  appdb  webapp  0.0.0.0/0  scram-sha-256
-- reject non-TLS:
hostnossl appdb all 0.0.0.0/0 reject

Zarządzanie kluczami

Szyfrowanie jest tak silne, jak sposób zarządzania kluczami. Nigdy nie przechowuj kluczy obok chronionych przez nie danych.

  • Korzystaj z usługi zarządzania kluczami (KMS) lub HSM.
  • Regularnie zmieniaj klucze.
  • Rozdziel obowiązki: administrator bazy danych nie powinien mieć również głównego klucza.

Połącz wszystkie elementy

Model warstwowy dla danych w spoczynku:

  • Uwierzytelniaj każde połączenie (TLS + silne dane uwierzytelniające).
  • Stosuj autoryzację za pomocą RBAC i zasady najmniejszych uprawnień.
  • W razie potrzeby stosuj RLS i zabezpieczenia na poziomie kolumn.
  • Szyfruj dane w spoczynku (TDE), a szczególnie poufne kolumny szyfruj dodatkowo.
  • Zarządzaj kluczami w systemie KMS oddzielonym od bazy danych.

Szybkie sprawdzenie

Zastanów się, przed czym chroni każdy z mechanizmów.

Podsumowanie

Dane w spoczynku chroni się, łącząc kontrolę dostępu i szyfrowanie:

  • Rozróżniaj uwierzytelnianie i autoryzację.
  • Stosuj zasadę najmniejszych uprawnień i RBAC, a w razie potrzeby także zabezpieczenia na poziomie wierszy i kolumn.
  • Szyfruj dane w spoczynku (TDE, szyfrowanie na poziomie kolumn) oraz podczas przesyłania (TLS).
  • Zarządzaj kluczami oddzielnie w systemie KMS i regularnie je zmieniaj.

Często zadawane pytania

Czy lekcja „Kontrola dostępu i szyfrowanie” jest bezpłatna?

Tak — pełny tekst „Kontrola dostępu i szyfrowanie” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Cyber Security Academy, przejdź na CoddyKit PRO. Kurs Cyber Security Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Kontrola dostępu i szyfrowanie”?

Chroń dane w spoczynku Ćwiczysz Cyber Security Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Cyber Security Academy?

Nie wymagamy żadnego doświadczenia. Cyber Security Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.

Ile czasu zajmuje lekcja „Kontrola dostępu i szyfrowanie”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Cyber Security Academy?

Tak. Każda lekcja Cyber Security Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Ochrona przed SQL injection
  2. Kontrola dostępu i szyfrowanie
  3. Audytowanie i monitorowanie
  4. Bezpieczeństwo kopii zapasowych i odzyskiwania
← Powrót do Cyber Security Academy