Kisimbuzi cha JWT
Simbua JSON Web Token yoyote kwenye kivinjari: ona header na payload, exp, iat na nbf kama tarehe halisi kwa saa za eneo lako, na kama muda wake umeisha.
Muhtasari
Kichwa (header)
Payload (madai)
Tokeni na sahihi
Soma JWT yoyote bila kuituma popote
Bandika JSON Web Token na kisimbuzi kitaigawa katika sehemu tatu: kichwa (algorithimu iliyotumika kuitia sahihi), payload (madai: mtumiaji ni nani, anaweza kufikia nini na tokeni inaisha lini) na sahihi. JSON hupangwa vizuri ili uisome kwa haraka.
Madai ya muda hubadilishwa kuwa tarehe halisi. exp, iat na nbf huonyeshwa kwa saa za eneo lako, kwa UTC na kama “baada ya dakika 20” au “siku 3 zilizopita”, na hali hukuambia papo hapo kama tokeni bado ni halali, muda wake umeisha au bado haijaanza kutumika.
Tokeni mara nyingi hutoa ufikiaji wa akaunti halisi, kwa hiyo kila kitu husimbuliwa kwenye kivinjari chako. Tokeni haipakiwi kamwe kwenye seva yetu, haiandikwi wala haihifadhiwi. Hii ni salama zaidi kuliko kuibandika kwenye chatbot au tovuti inayoituma kwa seva.
Jinsi ya kusimbua JWT
- Nakili tokeni kutoka kwenye programu yako, kichwa cha
Authorization, kuki au zana za msanidi programu za kivinjari. - Ibandike kwenye kisanduku. Kiambishi
Bearer, alama za nukuu, nafasi na mistari mipya huondolewa kiotomatiki. - Soma muhtasari: hali, algorithimu, mtoaji, mhusika, hadhira na nyakati kamili za kutolewa na kuisha.
- Tumia vitufe vya kunakili kupeleka JSON iliyopangwa ya kichwa au payload kwenye ripoti ya hitilafu au madokezo yako.
Maana ya madai ya kawaida
exp(expiration time): baada ya wakati huu tokeni lazima ikataliwe.iat(issued at): wakati tokeni ilipoundwa.nbf(not before): tokeni haipaswi kukubaliwa kabla ya wakati huu.iss(issuer): aliyeunda tokeni, mara nyingi URL ya seva yako ya kuingia.sub(subject): tokeni inamhusu nani, kwa kawaida kitambulisho cha mtumiaji.aud(audience): programu au API ambayo tokeni imekusudiwa.algnakid(kwenye kichwa): algorithimu ya sahihi, kama HS256 au RS256, na kitambulisho cha ufunguo uliotia sahihi.
Tarehe za JWT ni thamani za NumericDate: idadi ya sekunde tangu 1 Januari 1970 UTC. Kisimbuzi huzibadilisha kwa ajili yako, kwa hiyo huhitaji kibadilishaji tofauti cha timestamp.
Vidokezo vya kutatua hitilafu
- Ikiwa API inajibu 401 mara tu baada ya kuingia, kagua
expnanbfkwanza. Saa ya seva iliyo mbele au nyuma kwa dakika chache ni chanzo cha kawaida; maktaba nyingi huruhusu nafasi ndogo. - Tarehe ya makumi ya maelfu ya miaka ijayo inamaanisha thamani iliandikwa kwa milisekunde badala ya sekunde. Kisimbuzi kitakuonya hili likitokea.
- Linganisha
audnaissna kile API yako inatarajia. Tokeni iliyotolewa kwa programu au mazingira mengine (majaribio badala ya mfumo halisi) ni chanzo cha mara kwa mara cha makosa ya “tokeni si halali”. - Kichwa chenye
algsawa nanonekinamaanisha tokeni haijatiwa sahihi. Usikubali tokeni kama hizo kamwe kwenye mfumo halisi.
Mipaka na mambo ya kujua
- Kusimbua si kuthibitisha. Mtu yeyote anaweza kuunda tokeni yenye madai yoyote; ni ukaguzi wa sahihi kwa ufunguo sahihi, kwenye seva yako, pekee unaothibitisha kuwa ni halisi. Zana hii haithibitishi sahihi.
- Payload ya JWT ya kawaida imesimbwa tu, haijafichwa kwa siri. Yeyote mwenye tokeni anaweza kuisoma, kwa hiyo usiweke kamwe nenosiri au siri kwenye madai.
- Tokeni zilizosimbwa kwa siri (JWE, sehemu tano) haziwezi kusomwa bila ufunguo, kwa hiyo kichwa chake pekee ndicho huonyeshwa.
- Namba huonyeshwa kama zilivyo kwenye tokeni, kwa hiyo vitambulisho virefu vya namba havizungushwi kamwe.
Maswali yanayoulizwa mara kwa mara
Je, ni salama kubandika tokeni halisi hapa?
Ndiyo. Kusimbua kunafanyika kwa JavaScript kwenye kivinjari chako na tokeni haitumwi kamwe kwa seva yetu. Hata hivyo, chukulia tokeni zinazotumika kama nenosiri: usizishiriki kwenye picha za skrini au gumzo, na ziache ziishe muda.
Je, zana hii inaweza kuniambia kama tokeni ni halali?
Inakuambia kama muda wa tokeni umeisha au bado haijaanza kutumika, kulingana na tarehe zake. Haiwezi kukuambia kama sahihi ni halisi, kwa sababu hilo linahitaji ufunguo wa siri au wa umma ambao seva yako pekee inapaswa kuwa nao.
Kwa nini tokeni yangu inaonyesha muda umeisha wakati nimeipata sasa hivi?
Kagua saa ya seva iliyoitoa na uhakikishe exp iko kwa sekunde, si milisekunde. Ikiwa iat pia iko saa kadhaa nyuma, huenda saa ya seva si sahihi.
Kuna tofauti gani kati ya kisimbuzi cha JWT na cha Base64?
JWT ni sehemu tatu zilizosimbwa kwa Base64URL zilizounganishwa kwa nukta. Kisimbuzi cha Base64 husoma sehemu moja kwa wakati, lakini kisimbuzi cha JWT hukugawia tokeni, hutambua alfabeti salama kwa URL na kijazo kinachokosekana, na hubadilisha tarehe kuwa nyakati zinazosomeka.
Je, inafanya kazi bila mtandao?
Ndiyo. Ukurasa ukishapakia, unaweza kukata intaneti na kuendelea kusimbua tokeni.
Zana zinazohusiana
- Kisimbuzi Base64: Simbua maandishi ya Base64 kurudi kuwa maandishi yanayosomeka kwa UTF-8, kutoka API, barua pepe au tokeni. Bure, bila kujisajili.
- Kikagua na Kipanga JSON: Bandika JSON ili kuangalia kama ni sahihi, kupata makosa na kuipanga vizuri kwa ujongezaji unaosomeka. Bure kwa wasanidi, kwenye kivinjari.
- Kisimbuzi URL: Simbua viungo vyenye %20, %26 na + kurudi kuwa maandishi yanayosomeka. Bora kwa kusoma viungo vya utafutaji na kumbukumbu. Bure.
- Kisimbaji Base64: Simba maandishi yoyote kuwa Base64 kwa UTF-8 kwa sekunde, kwa API, barua pepe na data URI. Bure, kwenye kivinjari, bila kujisajili.
Zana zinazofanana
Simbua maandishi ya Base64 kurudi kuwa maandishi yanayosomeka kwa UTF-8, kutoka API, barua pepe au tokeni. Bure, bila kujisajili.
Bandika JSON ili kuangalia kama ni sahihi, kupata makosa na kuipanga vizuri kwa ujongezaji unaosomeka. Bure kwa wasanidi, kwenye kivinjari.
Simbua viungo vyenye %20, %26 na + kurudi kuwa maandishi yanayosomeka. Bora kwa kusoma viungo vya utafutaji na kumbukumbu. Bure.
Zana maarufu za bure
Tengeneza nenosiri (password) imara na la nasibu kwa mbofyo mmoja. Chagua urefu, herufi, namba na alama. Bure, bila kujisajili, kwenye kivinjari.
Badilisha maandishi kuwa herufi kubwa, ndogo, Title Case, camelCase au snake_case kwa mbofyo mmoja. Bure kwa waandishi na waandaaji programu.
Bandika maandishi au HTML na upate orodha ya anwani zote za barua pepe zilizomo. Bora kwa kusafisha orodha za mawasiliano. Bure.
Angalia rekodi za DNS za domain yoyote: A, AAAA, MX, TXT, NS, CNAME na SOA. Bora kwa kusanidi barua pepe na hosting. Bure, bila kujisajili.
Badilisha vitenganishi katika maandishi: mistari mipya, koma, nukta-mkato, nafasi au alama yoyote. Bora kwa orodha na Excel. Bure.
Tengeneza kiungo cha WhatsApp (wa.me) chenye ujumbe uliojazwa tayari ili wateja wakuandikie bila kuhifadhi namba. Bure, bila kujisajili.