Geliştirici
JWT Token'ları: Yapı, Güvenlik ve Güvenli Şifre Çözme
8 dk okuma
Modern bir web uygulamasına giriş yaptıysanız, neredeyse kesinlikle bir JWT (JSON Web Token) tuttunuz. Uygulamaların kimliği API'ye iletme standardıdır: bir kez giriş yapın, token alın ve sonraki her isteğe ekleyin. Geliştiriciler bu token'ları sürekli hata ayıkladığı için JWT çözme araçları vazgeçilmezdir.
JWT'nin anatomisi
JWT, noktalarla ayrılmış üç parçadan oluşan kompakt, URL-güvenli bir dizedir: Header (algoritma), Peyload (iddialar — kullanıcı kimliği, roller, süre) ve İmza (yalnızca sunucunun doğrulayabileceği kriptografik özet).
Her parça Base64Url kodlu JSON'dur. Yani header ve payload, onları çözen herkes tarafından okunabilir — şifrelenmiş değillerdir. JWT'lerle ilgili anlaşılması gereken en önemli şey budur: token'ın ortası düz metindir; token'ı tutan herkes iddialarınızı okuyabilir.
Çözmek doğrulamak değildir
Üç adımı karıştırmayın
Çözme (Base64Url'ü JSON'a geri çevirme) anahtar gerektirmez. Doğrulama (imzanın eşleştiğini kontrol etme) sunucunun gizli anahtarını gerektirir.
Güvenlik: canlı token'ı bilinmeyen sitelere asla yapıştırmayın
Bir taşıyıcı token, oturumunuzun anahtarıdır. Onu çevrimiçi bir çözücüye yapıştırmak, bu anahtarı bir yabancının sunucusuna göndermek demektir. Token'ları parola gibi düşünün: yalnızca yerel araçlara aittirler.
- Ağ isteği yapmayan, tamamen tarayıcıda çalışan çözücüleri tercih edin.
- Canlı token yerine sahte veya süresi dolmuş bir token ile pratik yapın.
- Bir token'ın ifşa olduğundan şüphelenirseniz oturumu geçersiz kılın.
Çözerken nelere bakmalı?
- exp (süre): token hâlâ geçerli aralıkta mı?
- iat (düzenleme): ne zaman oluşturuldu?
- sub (konu): hangi kullanıcıyı tanımlıyor?
- roles/scopes : token ne yapmaya yetkili?
Convrs'te JWT çözme
Convrs JWT çözücü tamamen tarayıcıda çalışır. Token yapıştırırsınız, üç parça istemci tarafında Base64Url çözülür ve header ile payload okunabilir JSON olarak görünür. Hiçbir sunucuya istek yapılmaz; üretim token'ı bile makinenizde kalır.