Bezpieczeństwo aplikacji

Słownik kwalifikacji INF.04 - Projektowanie, programowanie i testowanie aplikacji

Czym jest bezpieczeństwo aplikacji?

Bezpieczeństwo aplikacji to zbiór działań projektowych, programistycznych i organizacyjnych, których celem jest ochrona danych użytkowników oraz samego systemu przed nieuprawnionym dostępem, utratą danych i atakami.

W pytaniach egzaminacyjnych kluczowa jest zasada: jeśli aplikacja przetwarza dane użytkowników, projekt musi uwzględniać mechanizmy ochrony już od początku, a nie dopiero po wdrożeniu.

Najważniejsze mechanizmy ochrony

Do podstawowych elementów bezpieczeństwa aplikacji należą:

  • uwierzytelnianie użytkownika, czyli sprawdzanie, kim jest użytkownik,
  • autoryzacja, czyli kontrola, do jakich zasobów ma dostęp,
  • szyfrowanie transmisji, np. przez HTTPS/TLS,
  • bezpieczne przechowywanie haseł, np. z użyciem funkcji skrótu i soli,
  • walidacja danych wejściowych, aby ograniczyć ataki typu SQL Injection lub XSS,
  • aktualizowanie bibliotek i frameworków,
  • testowanie bezpieczeństwa aplikacji przed wdrożeniem.

Dlaczego wygląd interfejsu nie wystarcza?

Estetyczny interfejs użytkownika poprawia wygodę pracy, ale nie chroni danych. Prosty formularz rejestracji również nie zapewnia bezpieczeństwa, jeśli nie ma poprawnej walidacji, szyfrowania i kontroli dostępu.

Przykład

Jeżeli aplikacja ma formularz logowania, to bezpieczny projekt powinien obejmować m.in. przesyłanie danych przez HTTPS, haszowanie haseł w bazie danych, blokadę po wielu nieudanych próbach logowania oraz ochronę przed wstrzyknięciem SQL.

Wniosek egzaminacyjny

Dla ochrony danych użytkowników kluczowe jest zastosowanie odpowiednich systemów i mechanizmów zabezpieczeń, a nie wyłącznie wygląd aplikacji czy uproszczenie formularzy.