JSONWEBトークンの例を使用した認証トークン

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

良い一日、親愛なる読者。この記事では、さまざまなクライアントサーバーアプリケーションで最も一般的な(今日の)認証方法の1つである認証トークンについて説明します。そして、最も一般的な実装の例であるJSON WebTokenまたは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トークン(JWT)を例として使用して、アクセストークンを使用したクライアントサーバーアプリケーションの動作について詳しく検討しました。繰り返しになりますが、比較的簡単ですが、信頼性が高いと同時に、トークンによって認証と承認の問題を解決できるため、非常に人気があります。お時間をいただきありがとうございます。





便利なリンク

  1. JSON Webトークン(JWT)を理解するための5つの簡単なステップ





  2. JWT-データを認証および転送するための安全な方法として





  3. JWTトークンを使用したReactReduxアプリの保護





  4. アクセストークンがあるのになぜリフレッシュトークンが必要なのですか?












All Articles