TanodTools
TR

JWT çözücü

Başlığını ve yükünü okumak için bir JSON Web Token yapıştırın; bitiş ve düzenleme zamanları gerçek tarihler olarak gösterilir.

Tamamen tarayıcınızda çalışır

1 MB'a kadar belirteç. Yalnızca çözme: imza gösterilir ama doğrulanmaz.

JWT nasıl çözülür

  1. Belirteci kutuya yapıştırın. Başta Bearer ile çevredeki boşluklar veya tırnaklar yok sayılır.
  2. Aşağıda başlığı ve yükü, ayrıca bitiş, öncesinde geçersiz ve düzenlenme zamanlarını saat diliminizde ve UTC olarak okuyun.
  3. Başka bir yerde gerekirse çözülmüş yükü veya başlığı biçimlendirilmiş JSON olarak kopyalayın.

Bir JSON Web Token'ın içinde ne var

İmzalı bir JWT, noktalarla birleştirilmiş üç Base64url metin parçasıdır: bir başlık, bir yük ve bir imza. Başlık ve yük, Base64url ile yazılmış düz JSON'dur; herkesin okuyabilmesinin nedeni budur. Base64url bir kodlamadır, şifreleme değil; bu yüzden belirteç şifrelenmediyse JWT yüküne asla gizli bilgi koymayın.

Yük, talepleri (claims) tutar. Bazı adlar kayıtlıdır: iss (belirteci kimin düzenlediği), sub (kimle ilgili olduğu), aud (kimin için olduğu), exp (ne zaman sona erdiği), nbf (öncesinde geçersiz olduğu zaman), iat (ne zaman düzenlendiği) ve jti (benzersiz bir kimlik). Hizmetler roller, kapsamlar veya bir e-posta adresi gibi kendi taleplerini de ekler.

Talepleri güvenilir kılan imzadır ve onu denetlemek, yalnızca vereninin ve belirteci kabul eden hizmetlerin tutması gereken imzalama anahtarını gerektirir. Bu çözücü bilerek okumada durur: bir belirtecin ne dediğini ve ne zaman sona erdiğini gösterir; bir oturum açmayı ya da bir API çağrısını ayıklarken genellikle ihtiyacınız olan da budur.

İpuçları

Sık sorulan sorular

İmzayı doğrular mı?

Hayır. Bu sayfa yalnızca belirteci çözer. Herkes herhangi bir başlık ve yükle bir belirteç oluşturabilir; bu yüzden burada gösterilen içerik kanıt değil, taleplerdir. Bir belirtecin gerçek olup olmadığını ancak imzalama anahtarını (RS256 ve ES256 belirteçleri için genel anahtarı) tutan hizmet söyleyebilir ve bu hizmetin bitiş, hedef kitle (audience) ve vereni de denetlemesi gerekir.

Buraya belirteç yapıştırmak güvenli mi?

Bu sayfa belirteci hiçbir yere göndermez: tarayıcınızda çalışan kodla çözülür ve saklanmaz. Yine de geçerli bir erişim belirteci, geçerli olduğu sürece bir parola gibidir. Üretim belirteçlerini herhangi bir web sitesine yapıştırmaktan kaçının; hata ayıklarken süresi dolmuş veya test belirteçlerini tercih edin.

Bazı belirteçleri neden okuyamıyorum?

Üç yerine beş bölümlü bir belirteç, şifrelenmiş bir JWT'dir (JWE). Başlığı okunabilir ama yük şifrelidir ve yalnızca alıcının anahtarıyla okunabilir; bu yüzden bu araç başlığı gösterir ve bölümleri açıklar. Yanlış sayıda bölüm veya geçerli Base64url ya da JSON olmayan metin gibi diğer hatalar, neyin ters gittiğiyle birlikte bildirilir.

Zamanlar nasıl hesaplanıyor?

exp, nbf ve iat talepleri NumericDate değerleridir: 1 Ocak 1970 UTC'den itibaren geçen saniye. Cihazınızın saat diliminde ve UTC olarak gösterilir ve belirtecin süresinin dolup dolmadığını söylemek için cihazınızın saatiyle karşılaştırılır. Saatiniz yanlışsa göreli zamanlar da yanlış olur. Milisaniye gibi görünen bir değer, yaygın bir hata olduğu için işaretlenir.

alg, typ ve kid ne anlama geliyor?

alg, HS256 (paylaşılan gizli anahtar), RS256 veya ES256 (anahtar çifti) gibi imzalama algoritmasıdır. typ genellikle JWT'dir. kid, verenin kullandığı anahtar kimliğidir ve doğrulayıcıya imzayı hangi anahtarla denetleyeceğini söyler. alg değeri none olan bir belirteç imzasızdır ve önemli hiçbir iş için asla kabul edilmemelidir.