Ciasteczka

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

Czym są ciasteczka?

Ciasteczka cookies to niewielkie porcje danych zapisywane przez przeglądarkę na komputerze użytkownika na żądanie strony internetowej. Są często używane w aplikacjach WWW do zapamiętywania informacji między kolejnymi odwiedzinami strony.

W kontekście pytania egzaminacyjnego ciasteczka są poprawną odpowiedzią, ponieważ pozwalają przechowywać dane po stronie użytkownika, np. identyfikator odwiedzin, preferencje albo informacje potrzebne do statystyk.

Do czego używa się ciasteczek?

Najczęstsze zastosowania:

  • zapamiętywanie preferencji użytkownika, np. języka strony,
  • utrzymywanie informacji pomocniczych dla logowania,
  • identyfikacja powracającego użytkownika,
  • zbieranie danych statystycznych i analitycznych,
  • obsługa koszyka w sklepie internetowym.

Przykład użycia w JavaScript

document.cookie = "visited=true; max-age=3600; path=/";

Powyższy kod zapisuje ciasteczko visited na 1 godzinę.

Odczyt ciasteczek:

console.log(document.cookie);

Ciasteczka a sesje

Ciasteczka są zapisywane w przeglądarce użytkownika. Sesja zwykle przechowuje dane po stronie serwera, a w ciasteczku może znajdować się jedynie identyfikator sesji.

Dlatego jeśli pytanie mówi o zbieraniu danych statystycznych na komputerach użytkowników, właściwą odpowiedzią są ciasteczka, a nie sesje.

Ważne zasady bezpieczeństwa

Ciasteczka mogą zawierać dane wrażliwe, dlatego należy stosować odpowiednie atrybuty:

  • HttpOnly - ogranicza dostęp z poziomu JavaScript,
  • Secure - przesyła ciasteczko tylko przez HTTPS,
  • SameSite - ogranicza ryzyko ataków CSRF.

W aplikacjach zgodnych z przepisami należy też informować użytkownika o wykorzystywaniu cookies, zwłaszcza do celów analitycznych i marketingowych.