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