2019年3月28日木曜日

JWT(Jason Webトークン)を理解するJWT(Jason Webトークン)を理解する


JWTJason Webトークン)を理解する
 
JSON Web Tokenはオープンスタンダードです。これは、任意の2つの機関
ユーザー、サーバー)間で情報を転送するために使用されます。 
JWTでは、ユーザーデータなどのクレームを安全に表現することができます。

JWT の定義:  A JSON Web Token (JWT) is a JSON object that is defined in RFC 7519 as a safe way to represent a set of information between two parties. The token is composed of a header, a payload, and a signature.
 
JWTの形式は以下のとおりです。
header.payload.signature
 
JWTの使用
 
  • デジタル署名:
デジタル署名されているために使用されます。つまり、情報は検証され信頼されています。転送の間にデータ
の変更はありません。
  • コンパクト:
とてもコンパクトです。 URLPOSTリクエスト、HTTPヘッダを介して送信できます
そのようにそれは非常に速いですそしてその速い伝送はJWTをより使いやすくしす。
  • 自己完結型:
その意味では自己完結型であり、JWTトークン自体にユーザーに関する情報が含まれている
ため、データベースへの2回以上の照会は避けられます。ユーザーがログインすると、ユーザー名や
パスワードなどの情報が検証され、トークンが提供されます。そのため、ユーザーが後でWebサイト
から要求を送信したときに毎回ログインする必要はありませんが、毎回トークンを渡す必要があります。
その後、JWTシステムはそのトークンを検証し、検証に合格すると情報を提供します。結論として、
JWTは認証と情報交換に役立ちます。

JWTの構造

JWT3つの部分で構成されています。
ヘッダー、ペイロード、および署名。


ヘッダーは単純なJSONオブジェクトです

{
            “alg”: “HS256”
            “typ”:”JWT”
}


それは2つの分野を含んでいます、 1AlgHMAC SHA256またはRSAのようなアルゴリズム。 これは、どのアルゴリズムでエンコードされているかをJWTに伝えます。 2TypJWTトークンの種類 それは単にJWTであるトークンのタイプです。 このヘッダーJSONbase64でエンコードされて、JWTのヘッダーである1番目の部分を形成します。

ペイロード:ペイロードの構造もJSONオブジェクトであり、クレームが含まれています。
クレームは、ユーザーの詳細およびトークンの有効期限など、管理者であるかどうかなど
の追加のメタデータです。ペイロードは、Base64UrlでエンコードされてJWT2番目の
部分を形成します。

{
            “sub:”:”1234567890”,
            “name”:”Dave Truck”,
            “admin”:true
}  


第三部は署名です。これが最も重要な部分です。 これはbase64ヘッダーとbase64ペイロードをシークレットと組み合わせたもので、これらすべてがHMACSHA256でエンコードされています。したがって、誰かがペイロードを変更したとしても、彼はその秘密を知らないので、このシグネチャは元のペイロードとまったく同じにはなりません。 結論として、JWTはドット(。)と組み合わされるこれら3つのことの組み合わせです。

JWTのしくみ







 


 



0 件のコメント:

コメントを投稿

JWT(Jason Webトークン)を理解するJWT(Jason Webトークン)を理解する

JWT ( Jason Web トークン)を理解する   JSON Web Token はオープンスタンダードです。これは、任意の 2 つの機関 ( ユーザー、サーバー)間で情報を転送するために使用されます。 JWT では、ユーザーデー...