Odkoduj nagłówek
JSONPo wklejeniu JWT tutaj zostanie wyświetlona przeanalizowana zawartość.
Sprawdź nagłówek i ładunek tokenu internetowego JSON. This tool does not validate signatures and processing stays in your browser.
Wklej poniższy JWT, aby natychmiast odszyfrować, sprawdzić i zweryfikować.
Oczekiwanie na wejściowy token internetowy JSON.
Po wklejeniu JWT tutaj zostanie wyświetlona przeanalizowana zawartość.
Po wklejeniu JWT tutaj zostanie wyświetlona przeanalizowana zawartość.
Podpis zostanie wyświetlony tutaj po dekodowaniu.
Wprowadź klucz tajny, który będzie używany podczas wydawania tokenu JWT. Weryfikacja HS256 odbywa się natywnie w Twojej przeglądarce.
Edytuj nagłówek i ładunek JSON i użyj podpisu HS256.
Przygotuj się do wygenerowania JWT.
Ten zestaw tokenów nadaje się do lokalnego testowania i debugowania programistycznego.
JWT to format tokena powszechnie używany do logowania, weryfikacji API i autoryzacji między usługami. Składa się z trzech sekcji: Nagłówka, Ładunku i Podpisu.
Treść ładunku można zdekodować i odczytać, a poufnych informacji nie należy umieszczać w oświadczeniach JWT.
Ta strona obsługuje weryfikację i generowanie podpisu HS256, dzięki czemu można łatwo sprawdzić, czy token środowiska testowego został utworzony z tym samym kluczem tajnym.
Całe dekodowanie, kodowanie i weryfikacja podpisu JWT odbywa się natywnie w przeglądarce.
BAZA WIEDZY SEO JWT
Jeśli szukasz „Dekodera JWT”, „Dekodera JWT”, „Parsowania tokenu sieciowego JSON”, „Weryfikacji JWT” lub „Kodera JWT”, zwykle oznacza to, że masz już token i musisz szybko zrozumieć jego nagłówek, ładunek, czas wygaśnięcia, algorytm podpisywania i oświadczenia. Ta strona nie tylko udostępnia narzędzia do dekodowania JWT online, ale także porządkuje podstawową wiedzę o JWT, o którą często pytają programiści.
JWT to skrót od JSON Web Token. Jest to format tokenu, który wykorzystuje JSON do reprezentowania informacji, a następnie konwertuje je na uproszczony ciąg znaków. Jest często używany w witrynach internetowych typu front-end i back-end, interfejsie API aplikacji, logowaniu członków, jednokrotnym logowaniu SSO, autoryzacji mikrousług i wymianie danych między usługami.
Dekodowanie JWT nie wymaga hasła, ponieważ nagłówek i ładunek są zakodowane tylko w formacie Base64URL, a nie szyfrowane. Każdy, kto otrzyma token, może użyć dekodera JWT, aby zobaczyć zawartość ładunku, więc oświadczenia nie mogą zawierać haseł, kluczy API ani wrażliwych danych osobowych.
Najczęstszym przypadkiem użycia jest autoryzacja. Po pomyślnym zalogowaniu się użytkownika serwer autoryzacji wystawia token JWT. Gdy front-end lub aplikacja następnie wywołuje API, token jest umieszczany w nagłówku autoryzacji HTTP, takim jak Authorization: Bearer .
JWT jest również powszechnie używany do wymiany informacji. Kiedy dwa systemy muszą wymienić weryfikowalne dane, podpisy umożliwiają odbiorcy potwierdzenie, że dane nie zostały zmienione podczas transmisji. Punkt końcowy JWKS jest powszechnie używany w dużych systemach do udostępniania kluczy publicznych, dzięki czemu różne usługi mogą zweryfikować źródło tokena.
Standardowy token JWT zwykle składa się z trzech oddzielonych kropkami ciągów Base64URL: Header.Payload.Signature. Pierwsza sekcja nagłówka opisuje typ tokenu i algorytm podpisu, druga sekcja ładunku zawiera oświadczenia, a trzecia sekcja podpisu służy do weryfikacji integralności.
Typowe zarejestrowane roszczenia obejmują iss, sub, aud, exp, nbf, iat i jti. Dobra walidacja API zwykle sprawdza co najmniej exp, iss i aud.
Typowy proces polega na tym, że użytkownik loguje się, autoryzuje serwer w celu sprawdzenia hasła do konta lub wyniku logowania strony trzeciej, a następnie wydaje token dostępu; frontend dołącza token dostępu do żądania API; interfejs API zaplecza weryfikuje token i zwraca chronione dane.
JWT nie jest uniwersalnym zamiennikiem sesji. Po wydaniu tokena zazwyczaj można go zweryfikować bez sprawdzania bazy danych przed wygaśnięciem. Jednak unieważnianie tokenów, natychmiastowe zmiany uprawnień i przetwarzanie wylogowania nadal wymagają zaprojektowania.
Walidacja JWT zwykle odnosi się do sprawdzenia, czy token spełnia oczekiwane reguły, takie jak czy ma trzy segmenty, czy można go zdekodować, czy JSON jest legalny, czy wygasł, czy wystawca jest poprawny i czy publiczność jest zgodna z bieżącym API.
Weryfikacja JWT użyje określonego algorytmu i klucza do ponownego obliczenia podpisu, a następnie porównania go z trzecim podpisem tokena. Zrozumienie ładunku nie oznacza, że token jest godny zaufania; oficjalne API musi zostać poddane weryfikacji pieczęci i weryfikacji roszczeń.
JWT Decode konwertuje pierwszy i drugi akapit tokena z powrotem do formatu JSON, umożliwiając odczytanie nagłówka i ładunku. Kodowanie JWT to proces odwrotny: przygotuj nagłówek JSON i ładunek JSON, wygeneruj podpis i na koniec połącz je w kompletny token.
Jeśli chcesz tylko zobaczyć zawartość ładunku, nie potrzebujesz sekretu; jeśli chcesz potwierdzić, czy token rzeczywiście został wydany przez Twój system, musisz użyć prawidłowego klucza tajnego lub publicznego w celu weryfikacji podpisu. Obecnie ta strona obsługuje HS256.
Korzystając z dekodowania JWT online należy także sprawdzić kto wystawił token, do jakiego systemu został wydany, kiedy zaczyna obowiązywać, kiedy wygasa oraz czy zakres uprawnień spełnia wymagania API. Poniższa tabela podsumowuje typowe roszczenia JWT.
| Roszczenie | Znaczenie chińskie | Co sprawdzić podczas debugowania |
|---|---|---|
jest | Emitent, emitent | Niezależnie od tego, czy jest to Twój serwer autoryzacyjny, czy zaufany dostawca tożsamości. |
pod | Identyfikator podmiotu, użytkownika lub głównego podmiotu | Czy odpowiada właściwemu użytkownikowi, członkowi, kontu usługi lub urządzeniu. |
dźwięk | Publiczność, symboliczna publiczność | Czy wysłać go do bieżącego interfejsu API; błędy odbiorców często powodują 401. |
eksp | Czas ważności, czas ważności | Czy wygasł; zwróć uwagę na różnicę w wyświetlaniu znacznika czasu i strefy czasowej systemu Unix. |
nbf | Nie wcześniej, w skutecznym momencie | Czy czas użytkowania jeszcze nie nadszedł; odchylenie czasu serwera również będzie miało na to wpływ. |
i tak | Wydano o godzinie wydania | Czy zgadza się z rzeczywistym czasem logowania lub odświeżenia tokena. |
jti | Identyfikator JWT, unikalny identyfikator tokena | Niezależnie od tego, czy można go używać do list odwołań, dzienników audytu czy ochrony przed atakami poprzez powtórzenie. |
zakres | Zakres władzy | Czy istnieją uprawnienia do odczytu, zapisu, administratora i inne wymagane przez interfejs API. |
alg w nagłówku JWT poinformuje weryfikatora, jakiego algorytmu należy użyć. HS256 to HMAC SHA-256 i zarówno wystawianie, jak i weryfikacja wykorzystują ten sam zestaw kluczy tajnych; RS256 wykorzystuje podpis klucza prywatnego RSA i weryfikację klucza publicznego; ES256 wykorzystuje algorytm krzywej eliptycznej.
Backend powinien jasno określać listę dozwolonych algorytmów, aby uniemożliwić atakującym wpływ na proces weryfikacji poprzez modyfikację nagłówka. Jeśli JWT pochodzi od dostawcy tożsamości, zwykle pobierz JWKS lub klucz publiczny i sprawdź kid, iss, aud, exp.
Najczęstsze problemy napotykane podczas korzystania z dekodera JWT to to, że token nie jest w standardowym formacie trzysegmentowym, ciąg Base64URL jest kopiowany niekompletnie, przed i po są białe spacje, ładunek nie jest legalnym JSON lub klucz podpisywania jest używany nieprawidłowo. Jeśli API zwróci 401 lub 403, zaleca się najpierw zdekodować JWT i potwierdzić exp, aud i zakres.
header.payload.signature.Nośnik.exp wygasło i czy czas serwera jest zsynchronizowany.iss i aud są spójne z bieżącym środowiskiem.kid.Sesja zwykle zapisuje stan na serwerze lub w pamięci centralnej, a przeglądarka zapisuje jedynie identyfikator sesji; JWT umieszcza część stanu w tokenie, dzięki czemu API może wykorzystać podpis do sprawdzenia integralności. SAML jest oparty na języku XML i jest powszechnie używany w korporacyjnym logowaniu jednokrotnym.
| Planuj | Odpowiednie do sytuacji | Rzeczy warte uwagi |
|---|---|---|
| JWT | Autoryzacja API, token dostępu SSO, mikrousługi | Konieczna jest kontrola czasu ważności, weryfikacji plomby, unieważnienia i wycieku wrażliwych informacji. |
| Sesja | Tradycyjne strony internetowe, które wymagają natychmiastowego wylogowania lub scentralizowanej kontroli statusu | Wymagany jest magazyn sesji po stronie serwera, a ekspansja między usługami wymaga dodatkowego projektu. |
| SAML | Integracja tożsamości przedsiębiorstwa, starsze systemy SSO | Struktury XML są większe, a podpisy i ustawienia są zwykle bardziej złożone. |
exp i nie pozostawiaj tokena dostępu ważnego przez długi czas.alg nagłówka.iss, aud, nbf, iat z niezbędnymi uprawnieniami.To internetowe narzędzie do dekodowania JWT wykorzystuje natywne przetwarzanie przeglądarki: token, sekret, nagłówek JSON i ładunek JSON, które wklejasz, nie zostaną przesłane na serwer ToolBoy. Mimo to w przypadku prawdziwych tokenów produkcyjnych należy nadal przestrzegać zasady minimalnego ujawniania informacji.
JWT często pojawia się w procesie debugowania API razem z JSON, Base64URL, zapytaniem URL, znacznikiem czasu, SHA-256, UUID, regex i innymi formatami danych. Możesz użyć narzędzia do formatowania JSON ToolBoy, kodowania i dekodowania Base64, Uniksowego znacznika czasu konwersja lub generator UUID.
Dalsze informacje można znaleźć w Wprowadzenie do tokena internetowego JSON JWT.io i RFC 7519. Zawartość tej strony została zreorganizowana i przepisana w języku chińskim, koncentrując się na praktycznym debugowaniu, SEO typu „biały kapelusz” i natywnej prywatności.