رمز التفويض باستخدام مثال JSON WEB Token

https://proglib.io/p/jwt-for-dummies/
https://proglib.io/p/jwt-for-dummies/

يوم سعيد عزيزي القارئ. سأحاول في هذه المقالة التحدث عن واحدة من أكثر طرق الترخيص شيوعًا (اليوم) في تطبيقات خادم العميل المختلفة - رمز التفويض. وسننظر في ذلك باستخدام مثال التطبيق الأكثر شيوعًا - JSON Web Token أو JWT.






المقدمة

, : . - .





- , , , . , , - , , %user_name%, , .





, . , - , - . 





: , , , - .





. , HTTP( HTTPS) , HTTP , , , : , , . , - JSON Web Tokens (JWT). ( ), , .





. JSON Web Tokens (JWT) , JWT , .





JSON Web Token (JWT) — (RFC 7519) , JSON. 









( ) , , ID, , . , .





, JWT. , , , , . 2 : access token refresh token ( , access token). , , . , API access token. , , ( , , ), , , . JSON Web Tokens.





https://habr.com/ru/post/336082/
https://habr.com/ru/post/336082/

. , JWT , :





  1. (header)





  2. (playload)





  3. (signature)









funnytorimage.pw
funnytorimage.pw





. , , , JWT. JSON ,  Base64-URL  :





eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9

:





{"alg":"HS256","typ":"JWT"}
      
      







: alg typ. typ , , JWT , , JWT(2.0), JWT. alg . HMAC SHA-256, , , HS256. , . , , JWT, , RS256. - . .





. - JSON , , base64.  (playload) :





eyJ1c2VyX2lkIjoxLCJleHAiOjE1ODEzNTcwMzl9

JSON :





{"user_id":1,"exp":1581357039}
      
      



. , :





iss - , .





user_id - , .





, exp. , ( , ). , , , . , is_admin is_preferUser, , , . , , , , . JWT.





, , . - (). : , , , , , , , ( alg ), HMAC-SHA256, ( , ) . , base64, . . API , , . , , , , , . , , , %user_name% .





Refresh Token

- , refresh token. , - . , 10-30 . : , , . , : . , , , %user_name%, access token , . . access token refresh token. ( ) . access token refresh token , , - , , - . refresh token , , , , . .





استنتاج

في هذه المقالة ، حاولت أن أفكر بالتفصيل في عمل تطبيقات خادم العميل مع رمز وصول ، وتحديدًا باستخدام JSON Web Token (JWT) كمثال. مرة أخرى ، أود أن أشير إلى السهولة النسبية ، ولكن في نفس الوقت الموثوقية الجيدة ، يسمح الرمز المميز بحل مشاكل المصادقة والتفويض ، مما جعله شائعًا للغاية. شكرا لك على وقتك.





روابط مفيدة

  1. 5 خطوات سهلة لفهم رموز الويب JSON (JWT)





  2. JWT - كطريقة آمنة لمصادقة البيانات ونقلها





  3. تأمين تطبيقات React Redux مع رموز JWT





  4. لماذا أحتاج إلى Refresh Token إذا كان هناك رمز وصول؟












All Articles