İçeriğe geç
Önbellek
20 Eylül 2026, 15:31 #39
Konu başlangıcı
Bir projede daha aynı saçmalığa toslayınca dayanamayıp buraya yazayım dedim.

Piyasada inanılmaz katı bir ezber oluştu: Projeye başlandığı an auth tarafı otomatikman JWT + Refresh Token ikilisine emanet ediliyor. Sebebini soruyorsun, papağan gibi aynı cevap: "Abi stateless işte, sunucuda oturum tutmuyoruz, yarın 10 sunucuya çıkarsak yatayda çatır çatır ölçeklenir."

Sonra ne oluyor? Projenin bitmesine 2 hafta kala ürün sahibi ya da güvenlikçi geliyor:

"Admin panelden birini banladığımda adamın yetkisi anında düşsün."

"Kullanıcı şifresini değiştirdiğinde diğer bütün telefon/tarayıcılardaki oturumu kapansın."

Hadi bakalım. Doğası gereği expire süresi dolana kadar geçerli olan token'ı anında nasıl öldüreceksin? Çözüm hemen hazır: "Araya bir Redis atalım, blacklist/whitelist tutalım ya da her request'te veritabanındaki token versiyonunu sorgulayalım."

E güzel kardeşim, hani nerede kaldı senin o öve öve bitiremediğin stateless mimarin? Gelen her istekte yine gidip arkada Redis'e ya da SQL'e bakıyorsan, sen zaten özünde stateful session yapısına geri dönmüş oldun. Tek fark; araya tonla boilerplate kod, refresh token dansı, token çalınma derdi ve şişmiş header boyutları sokmuş olman.

Dağıtık bir mikroservis yapın yoksa veya onlarca 3. parti servise token dağıtmıyorsan; düz bir web projesinde şifrelenmiş HttpOnly cookie + basit bir session tablosu kullanmak yerine bu çileyi çekmenin mantığını biri bana anlatsın, cidden merak ediyorum.
Etiketler #jwt

Tartışmaya katılmak ister misiniz?

Cevap yazmak için giriş yapmanız veya kayıt olmanız gerekiyor.