Sözlük · auth
JWT (JSON Web Token)
Tanım
JWT (JSON Web Token), kullanıcı kimliğini doğrulamak için kullanılan kompakt + URL-safe + dijital imzalı token formatıdır. Server-side session yerine client'ta saklanır (cookie/localStorage); modern API + SPA + mobil uygulamalarda standart kimlik doğrulama yöntemidir.
Detaylı açıklama
3 parça: Header (algoritma, tip), Payload (claims — user_id, role, exp), Signature (server'ın gizli anahtarıyla imza). Format: xxx.yyy.zzz.
Stateless: server JWT'yi her istek için doğrular ama session DB'sinde tutmaz — yatay ölçeklenebilirlik kazandırır. Mikroservis ve serverless mimarilerde standart.
Access token + refresh token pattern: kısa-ömürlü access token (15 dk) + uzun-ömürlü refresh token (7-30 gün). Çalıntı token süresinin dolması zaman alacak şekilde tasarım. NextAuth, Auth0, Clerk built-in destekler.
Güvenlik tuzakları: localStorage'da JWT saklamak XSS'e açık (cookie + httpOnly + sameSite tercih edilir), expiry kontrolü zorunlu, signature doğrulama atlama yaygın hata, gizli anahtar leak çok kötü.
Kullanım senaryoları
→REST/GraphQL API authentication
→SPA + mobil uygulama oturum yönetimi
→Mikroservis arası kimlik geçişi
→Stateless API gateway
→OAuth 2.0 access token formatı
Güçlü yanlar
- +Stateless (DB lookup yok)
- +Yatay ölçeklenebilir
- +Cross-domain (CORS friendly)
- +Standart format (RFC 7519)
Zayıf yanlar
- −Revocation zor (kullanıcıyı anında atılma zor)
- −localStorage XSS riski
- −Expiry yönetimi karmaşık
- −Token boyutu cookie'den büyük
İlgili terimler
İlgili hizmetler
JWT (JSON Web Token) ile ilgili proje planlıyorsan
30 dakikalık keşif görüşmesinde projene özel mimari + maliyet + ekip önerisini yazılı paylaşıyoruz.
Keşif görüşmesi başlat