இலவச மாற்றி

JWT டோக்கன் குறிவிலக்கி

JWT (JSON வெப் டோக்கன்) தலைப்பை டிகோட் செய்து உங்கள் உலாவியில் உடனடியாக பேலோட் செய்யவும். இலவசம், தனிப்பட்டது மற்றும் கிளையன்ட்-பக்கம் - எந்த சர்வருக்கும் தரவு அனுப்பப்படவில்லை.

இந்த கருவி பற்றி

JSON வெப் டோக்கன்கள் (JWT) என்பது, RFC 7519 ஆல் வரையறுக்கப்பட்ட, இரு தரப்பினருக்கு இடையே உள்ள உரிமைகோரல்களை அனுப்புவதற்கான ஒரு சிறிய, URL-பாதுகாப்பான வடிவமாகும். JWT என்பது புள்ளிகளால் பிரிக்கப்பட்ட அடிப்படை64url-குறியீடு செய்யப்பட்ட மூன்று பிரிவுகள்: தலைப்பு (அல்காரிதம் மற்றும் டோக்கன் வகை), பேலோட் (உரிமைகோரல்கள்) மற்றும் கையொப்பம். தலைப்பு மற்றும் பேலோட் JSON, URL பாதுகாப்பிற்காக base64url-குறியீடு செய்யப்பட்டுள்ளது; கையொப்பம் குறியிடப்பட்ட தலைப்பு மற்றும் பேலோடில் பல வழிமுறைகளில் (HS256, RS256, ES256 மற்றும் பிற) ஒன்றைப் பயன்படுத்துகிறது.

ஒரு JWT ஐ டிகோடிங் செய்வது - அதை பிரிவுகளாகப் பிரிப்பது மற்றும் ஒவ்வொன்றையும் பேஸ்64-டிகோடிங் செய்வது - எந்த ரகசியமும் தேவையில்லை. டோக்கன் உரை உள்ள எவரும் அதன் தலைப்பு மற்றும் பேலோடைப் படிக்கலாம். இருப்பினும், கையொப்பத்தை ரகசியம் (HMAC) அல்லது பொது விசை (சமச்சீரற்ற) மூலம் மட்டுமே சரிபார்க்க முடியும். டிகோடிங் என்பது ஆய்வுக்கானது; சரிபார்ப்பு என்பது நம்பகத்தன்மையை நிரூபிக்கிறது.

இந்த டிகோடர் டோக்கனைப் பிரித்து, ஒவ்வொரு பிரிவையும் அடிப்படை64-டிகோட் செய்து, ஹெடரையும் பேலோடையும் JSON என அலசுகிறது மற்றும் முடிவைக் காட்டுகிறது. இது கையொப்ப சரிபார்ப்பை முயற்சி செய்யாது, ஏனெனில் அதற்கு டிகோடரிடம் இல்லாத ரகசிய அல்லது பொது விசை தேவைப்படுகிறது. டிகோட் செய்யப்பட்ட வெளியீடு படிக்க-மட்டும் ஆய்வு - டோக்கன்களை பிழைத்திருத்துவதற்கு பயனுள்ளதாக இருக்கும் ஆனால் பயன்பாட்டுக் குறியீட்டில் சரியான சரிபார்ப்புக்கு மாற்றாக இல்லை.

ஏன் JWTகளை டிகோட் செய்யவும்

பிழைத்திருத்த அங்கீகார சிக்கல்கள் எப்போதும் டோக்கன்களை ஆய்வு செய்வதை உள்ளடக்கியது. குறியீட்டில் செல்லுபடியாகும் டோக்கனில் தவறான உரிமைகோரல்கள், எதிர்பாராத அல்காரிதம், காலாவதியான நேர முத்திரை அல்லது பார்வையாளர்களின் பொருத்தமின்மை இருக்கலாம். டோக்கனை டிகோட் செய்வது, வழங்குபவர் தயாரித்ததை சரியாக வெளிப்படுத்துகிறது.

ஒருங்கிணைப்பு பணியின் போது டோக்கன்களை ஆய்வு செய்வதும் உதவுகிறது. மூன்றாம் தரப்பு API அல்லது அடையாள வழங்குநருடன் இணைக்கும்போது, ​​காலாவதியான ஆவணங்களை நம்பாமல், மாதிரி டோக்கன்களை டிகோடிங் செய்வதன் மூலம் உண்மையான உரிமைகோரல் பெயர்கள், வடிவங்கள் மற்றும் கட்டமைப்பு நன்றாகப் புரிந்து கொள்ளப்படும்.

பயன்படுத்துவது எப்படி

டோக்கனை ஒட்டவும், பாகுபடுத்தப்பட்ட உள்ளடக்கங்களைப் பெறவும்.

  1. உங்கள் JWTயை ஒட்டவும்: முழு டோக்கனை (header.payload.signature) உள்ளீடு பகுதியில் விடவும். டிகோடர் விருப்பமான தாங்கி முன்னொட்டுடன் அல்லது இல்லாமல் டோக்கன்களை ஏற்றுக்கொள்கிறது.
  2. தலைப்பை ஆய்வு செய்யவும்: தலைப்பு கையொப்பமிடும் அல்காரிதம் (alg) மற்றும் டோக்கன் வகை (typ) ஆகியவற்றைக் காட்டுகிறது. பொதுவான வழிமுறைகள் HS256, RS256 மற்றும் ES256 ஆகும். alg ஐப் பாருங்கள்: எதுவும் இல்லை, இது கையொப்பமிடப்படாத டோக்கனைக் குறிக்கிறது மற்றும் தயாரிப்பில் அரிதாகவே பாதுகாப்பானது.
  3. பேலோடை பரிசோதிக்கவும்: பேலோடில் உரிமைகோரல்கள் உள்ளன: iss (வழங்குபவர்), துணை (பொருள்), ஆட் (பார்வையாளர்கள்), எக்ஸ்பைர் (காலாவதி), iat (இல் வழங்கப்பட்டது) மற்றும் ஏதேனும் பயன்பாடு சார்ந்த கோரிக்கைகள். நிலையான நேர முத்திரைகள் Unix சகாப்த வினாடிகள்.
  4. தனித்தனியாக சரிபார்க்கவும்: குறிவிலக்கி கையொப்பத்தை சரிபார்க்கவில்லை. நம்பகத்தன்மையை சரிபார்க்க, உங்கள் பயன்பாட்டுக் குறியீட்டில் உள்ள பொருத்தமான ரகசியம் அல்லது பொது விசையுடன் JWT நூலகத்தின் மூலம் டோக்கனை இயக்கவும்.

பொதுவான பயன்பாட்டு வழக்குகள்

தொழில்நுட்ப விவரங்கள்

JWT வடிவம் என்பது புள்ளிகளால் இணைக்கப்பட்ட மூன்று பிரிவுகளாகும். ஒவ்வொரு பிரிவும் base64url-குறியீடு செய்யப்பட்டுள்ளது - இது பேஸ்64 இன் URL-பாதுகாப்பான மாறுபாடு - மற்றும் + மற்றும் / க்குப் பதிலாக _ ஐப் பயன்படுத்துகிறது, சில நேரங்களில் திணிப்பு தவிர்க்கப்படுகிறது. டிகோடிங்கிற்கு URL-பாதுகாப்பான மாற்றீடுகளை செயல்தவிர்ப்பது, பிரிவை திணிப்பது மற்றும் அடிப்படை64-டிகோடிங் தேவைப்படுகிறது.

டிகோடிங் செய்த பிறகு தலைப்பு மற்றும் பேலோட் JSON ஆகும். கையொப்பப் பிரிவு பைனரி (மூல கையொப்ப பைட்டுகள்) மற்றும் மனிதர்களால் படிக்க முடியாது; சரிபார்ப்பு விசை பயனுள்ளதாக இருக்க வேண்டும்.

RFC 7519 இல் வரையறுக்கப்பட்ட பொதுவான உரிமைகோரல்கள்: iss (வழங்குபவர்), துணை (பொருள் அடையாளங்காட்டி), aud (பார்வையாளர்கள்), exp (Unix சகாப்த விநாடிகளாக காலாவதியாகும்), nbf (நேர முத்திரைக்கு முன் அல்ல), iat (நேர முத்திரையில் வெளியிடப்பட்டது), jti (தனிப்பட்ட டோக்கன் ஐடி). விண்ணப்பம் சார்ந்த உரிமைகோரல்கள் எந்த பெயரிலும் தோன்றலாம்.

சிறந்த நடைமுறைகள்

அடிக்கடி கேட்கப்படும் கேள்விகள்

எனது JWTயை இங்கே ஒட்டுவது பாதுகாப்பானதா?
ஆம். டிகோடிங் முற்றிலும் உங்கள் உலாவியில் நடக்கும் - டோக்கன் எந்த சேவையகத்திற்கும் அனுப்பப்படாது. இருப்பினும், JWTகள் நற்சான்றிதழ்கள் — அவற்றை பொதுவில் பகிர வேண்டாம் (ஸ்கிரீன்ஷாட்கள், ஸ்டாக் ஓவர்ஃப்ளோ இடுகைகள், முதலியன) அவை உங்கள் கணக்குகளுக்கு அணுகலை வழங்கக்கூடும்.
இந்தக் கருவி JWT கையொப்பத்தைச் சரிபார்க்கிறதா?
இந்த கருவி டோக்கன் உள்ளடக்கங்களை டிகோட் செய்து காண்பிக்கும். கையொப்ப சரிபார்ப்புக்கு ரகசிய விசை (HMAC) அல்லது பொது விசை (RSA/ECDSA) தேவைப்படுகிறது, இது உங்கள் சர்வரில் இருக்கும். கருவி பயன்படுத்தப்பட்ட அல்காரிதத்தைக் காட்டுகிறது ஆனால் விசை இல்லாமல் சரிபார்க்க முடியாது.
நிலையான JWT உரிமைகோரல்கள் எதைக் குறிக்கின்றன?
iss = வழங்குபவர், துணை = பொருள் (பயனர் ஐடி), எக்ஸ்ப் = காலாவதி நேரம் (யுனிக்ஸ் நேர முத்திரை), iat = வெளியிடப்பட்டது, nbf = முன் இல்லை, aud = பார்வையாளர்கள், jti = JWT ஐடி. பிரத்தியேக உரிமைகோரல்களில் ஏதேனும் பயன்பாடு சார்ந்த தரவு இருக்கலாம்.
ஏன் யாராவது JWT ஐ டிகோட் செய்ய முடியும்?
JWTகள் குறியாக்கம் செய்யப்பட்டுள்ளன, குறியாக்கம் செய்யப்படவில்லை. பேலோட் Base64URL-குறியீடு செய்யப்பட்டுள்ளது (குறியாக்கம் செய்யப்படவில்லை), எனவே எவரும் அதைப் படிக்கலாம். கையெழுத்து சிதைவதைத் தடுக்கிறது, படிக்கவில்லை. JWT பேலோடுகளில் முக்கியமான தரவை (கடவுச்சொற்கள், SSNகள்) ஒருபோதும் சேமிக்க வேண்டாம்.
சில டோக்கன்களில் ஏன் கையொப்பம் இல்லை?
அல்ஜியுடன் கூடிய டோக்கன்கள்: எதிலும் கையொப்பம் இல்லை. அவை ஸ்பெக் மூலம் செல்லுபடியாகும் JWTகள் ஆனால் நம்பகத்தன்மை உத்தரவாதம் அளிக்காது மற்றும் தயாரிப்பில் ஏற்றுக்கொள்ளப்படக்கூடாது.
JWTகள் குறியாக்கம் செய்யப்பட்டதா?
நிலையான JWT பேலோடுகள் கையொப்பமிடப்பட்டுள்ளன ஆனால் குறியாக்கம் செய்யப்படவில்லை. JWE (JSON Web Encryption, RFC 7516) என்பது மறைகுறியாக்கப்பட்ட டோக்கன்களுக்கான தனி வடிவமாகும். காடுகளில் உள்ள பெரும்பாலான JWTகள் JWS (கையொப்பமிடப்பட்டவை மட்டுமே).
எனது டோக்கன் சர்வரில் பதிவேற்றப்பட்டதா?
இல்லை. உங்கள் உலாவியில் டிகோடிங் நடக்கிறது; டோக்கன் உங்கள் சாதனத்தை விட்டு வெளியேறாது.
JWTகள் பொதுவாக எவ்வளவு காலம் இருக்கும்?
சில நூறு முதல் பல ஆயிரம் எழுத்துக்கள் வரை எங்கும். நீளம் உரிமைகோரல்களின் எண்ணிக்கை மற்றும் அளவு மற்றும் கையொப்ப நீளம் (அல்காரிதம் சார்ந்தது) ஆகியவற்றைப் பொறுத்தது.