Cara menggunakan
- Tampal token — dengan atau tanpa awalan "Bearer ". Ketiga-tiga bahagian diberi kod warna.
- Baca pengepala dan muatan yang telah dinyahkod. Tuntutan iat, nbf dan exp ditunjukkan sebagai tarikh bersama masa relatif.
- Untuk mengesahkan tandatangan, masukkan rahsia kongsi bagi HS256/384/512, atau tampal kunci awam (PEM atau JWK) bagi token RS, PS, ES dan EdDSA.
- Salin JSON yang dinyahkod jika anda memerlukannya di tempat lain.
Penerangan pilihan
- Pengepala
- Metadata tentang token, biasanya alg (algoritma tandatangan) dan typ. Medan kid memberitahu kunci mana yang menandatanganinya.
- Muatan
- Tuntutan. Tuntutan berdaftar termasuk sub (subjek), iss (pengeluar), aud (penerima), iat (dikeluarkan pada), nbf (tidak sah sebelum) dan exp (tamat tempoh), semua masa dalam saat Unix.
- Tandatangan
- Membuktikan pengepala dan muatan tidak diubah. Menyemaknya memerlukan rahsia (HMAC) atau kunci awam pengeluar (RSA, ECDSA, EdDSA).
- Rahsia dikodkan Base64
- Sesetengah perkhidmatan menyimpan rahsia HMAC dalam bentuk kod Base64. Tandakan ini jika rahsia yang anda ada ialah bentuk yang dikodkan.
Tuntutan biasa
| Tuntutan | Maksud | Contoh |
|---|---|---|
sub |
Siapa yang diwakili token (ID pengguna) | "1234567890" |
iss |
Siapa yang mengeluarkannya | "https://accounts.example.com" |
aud |
Untuk siapa token ditujukan | "my-api" |
exp |
Masa tamat tempoh, saat Unix | 1790427600 |
iat |
Dikeluarkan pada, saat Unix | 1790424000 |
nbf |
Tidak sah sebelum, saat Unix | 1790424000 |
jti |
ID token unik, digunakan untuk mencegah main semula (replay) | "a1b2c3" |
Contoh
Token eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c dinyahkod kepada pengepala {"alg":"HS256","typ":"JWT"} dan muatan dengan sub, name dan iat (18 Januari 2018). Dengan rahsia your-256-bit-secret, tandatangan berjaya disahkan.
Soalan lazim
Selamatkah menampal JWT produksi di sini?
Token dinyahkod oleh JavaScript dalam pelayar anda dan tidak dimuat naik atau direkodkan. Namun, layan token akses seperti kata laluan — sesiapa yang memegang token yang sah boleh menggunakannya sehingga tamat tempoh.
Adakah menyahkod JWT membuktikan ia tulen?
Tidak. Pengepala dan muatan hanya dikodkan Base64URL, jadi sesiapa pun boleh membaca atau memalsukannya. Hanya semakan tandatangan yang berjaya dengan kunci yang betul menunjukkan token dikeluarkan oleh pihak yang dijangka.
Mengapa pengesahan gagal walaupun rahsianya betul?
Semak sama ada rahsia dikodkan Base64, sama ada terdapat ruang atau baris baharu di hujung, dan algoritma dalam pengepala sepadan dengan yang digunakan oleh pengeluar. Sebarang perubahan pada token, walaupun satu aksara, juga merosakkan tandatangan.
Apakah maksud "alg none"?
Token itu mendakwa ia tidak ditandatangani. Pelayan mesti menolak token sebegini melainkan ia memang menjangkakannya; menerimanya pernah menyebabkan pintasan pengesahan sebenar.
Bagaimanakah cara mendapatkan kunci awam untuk token RS256?
Penyedia identiti menerbitkan kunci mereka sebagai JWKS, biasanya di /.well-known/jwks.json. Salin kunci yang kid-nya sepadan dengan pengepala token dan tampalkan di sini sebagai JWK.
Privasi
Alat ini berjalan sepenuhnya dalam pelayar anda. Fail dan teks anda diproses pada peranti anda dan tidak pernah dimuat naik ke pelayan kami.