---
title: "JWT"
description: "JWT to podpisany token JSON przenoszący dane uwierzytelniające między serwerem a klientem. Poznaj budowę tokena i zasady bezpiecznego użycia."
url: "https://nodea.pl/pl/slownik-pojec/jwt"
lang: "pl"
updated: "2026-07-13"
---

# JWT

> JWT (JSON Web Token) to zwarty, podpisany cyfrowo token w formacie JSON, który przenosi informacje o użytkowniku i pozwala na bezstanowe uwierzytelnianie w aplikacjach i API.

**JWT** (JSON Web Token) to otwarty standard (RFC 7519) definiujący zwarty, samowystarczalny sposób bezpiecznego przekazywania informacji między stronami w postaci obiektu [JSON](https://nodea.pl/pl/slownik-pojec/json). Token jest podpisany cyfrowo, dzięki czemu odbiorca może zweryfikować, że dane nie zostały zmienione i pochodzą od zaufanego wystawcy. JWT jest dziś fundamentem bezstanowego uwierzytelniania w aplikacjach webowych i [API](https://nodea.pl/pl/slownik-pojec/api).

## Jak zbudowany jest JWT?

Token składa się z trzech części oddzielonych kropkami, z których każda jest zakodowana w Base64URL:

- **nagłówek (header)** — określa typ tokena i algorytm podpisu, np. HS256 lub RS256;
- **ładunek (payload)** — zawiera tzw. claims, czyli oświadczenia: identyfikator użytkownika, role, czas wygaśnięcia (*exp*), wystawcę (*iss*);
- **podpis (signature)** — powstaje przez zaszyfrowanie nagłówka i ładunku kluczem tajnym lub prywatnym; to on gwarantuje integralność.

Serwer, otrzymując token, przelicza podpis własnym kluczem i porównuje z tym w tokenie. Zgodność oznacza, że payload jest autentyczny — bez potrzeby odpytywania bazy danych o sesję. W przypadku algorytmów asymetrycznych (RSA, ECDSA) podpis składa się kluczem prywatnym, a weryfikuje publicznym, co pozwala rozdzielić wystawcę tokena od usług, które go jedynie sprawdzają.

## Zastosowanie w praktyce

Najczęstszy scenariusz to logowanie: po poprawnym uwierzytelnieniu serwer wystawia JWT, który klient dołącza do kolejnych żądań w nagłówku *Authorization: Bearer*. Serwer weryfikuje token przy każdym zapytaniu, nie utrzymując stanu sesji, co ułatwia poziome skalowanie usług i architektury mikroserwisowe. JWT bywa też tokenem dostępu i tokenem ID w przepływach [OAuth 2.0](https://nodea.pl/pl/slownik-pojec/oauth) i OpenID Connect.

Bezpieczne użycie wymaga dyscypliny: krótki czas życia tokena, wymuszanie mocnego algorytmu (odrzucanie *alg: none*), przesyłanie wyłącznie po HTTPS oraz przemyślany mechanizm odświeżania i unieważniania. Ponieważ payload jest tylko zakodowany, a nie zaszyfrowany, nie umieszcza się w nim [haseł](https://nodea.pl/pl/slownik-pojec/haslo) ani innych wrażliwych danych.

### Czy dane w JWT są zaszyfrowane?

Nie w standardowej postaci. Payload JWT jest jedynie zakodowany w Base64URL, więc każdy może go odczytać. Token jest natomiast podpisany, co pozwala wykryć manipulację. Poufnych danych nie należy umieszczać w JWT bez dodatkowego szyfrowania (JWE).

### Czym różni się JWT od klasycznej sesji?

Sesja przechowuje stan po stronie serwera, a przeglądarka trzyma tylko identyfikator w ciasteczku. JWT jest bezstanowy — wszystkie potrzebne dane niesie sam token, więc serwer nie musi utrzymywać sesji w pamięci. Ułatwia to skalowanie, ale utrudnia natychmiastowe unieważnienie tokena.

## Powiązane

- [OAuth](https://nodea.pl/pl/slownik-pojec/oauth)
- [JSON](https://nodea.pl/pl/slownik-pojec/json)
- [API](https://nodea.pl/pl/slownik-pojec/api)
- [REST](https://nodea.pl/pl/slownik-pojec/rest)
- [Hasło](https://nodea.pl/pl/slownik-pojec/haslo)

---

Wersje językowe: [en](https://nodea.io/en/glossary/jwt.md)  
Spis treści witryny: [llms.txt](https://nodea.pl/pl/llms.txt)
