JWT

JSON Web Token」を表します。

JWTは、2者間でセキュリティ情報を共有する、業界標準のトークンです。JWTはコンパクトでURLセーフなため、Webサーバーとクライアントは、HTTPSリクエストの一部としてJWTを交換できます。JWTの最も一般的な用途は、シングルサインオン(SSO)サービスなどを通じて、WebサイトWebアプリにサインインしたユーザーを認証することです。

JWTは次の3つの部分で構成されます。

  • ヘッダーには、トークンの種類と、署名の生成に使用したアルゴリズムに関する情報が含まれます。
  • ペイロードには、トークンが示すクレームの一覧が含まれます。通常、クレームには、トークンの発行者、トークンを使用するWebサイトまたはWebアプリ、ユーザーに関する情報が含まれます。また、トークンが発行された時刻と有効期限も含まれますどちらも(エポック時刻を使用します)。これらの一般的な値に加えて、JWTには、トークンを発行するWebサイトまたはWebアプリ固有の任意のクレームを含めることもできます。
  • 署名は、トークンが発行されてから改ざんされていないことを検証します。

WebサイトやWebアプリでは、ユーザーを認証するためのステートレスな方法としてJWTを使用することがよくあります。この方法では、サーバーがメモリデータベースセッションを保持する必要がないため、ユーザーごとに必要なオーバーヘッドを削減できます。その代わりに、クライアントとサーバーは各HTTPSリクエストでJWTをやり取りし、署名を検証してトークンが変更されていないことを確認します。JWTの有効期限が切れると、ユーザーは新しいJWTを発行してもらうために、もう一度サインインする必要があります。

JWTの作成

JWTのヘッダーとペイロードはどちらもJSONで書かれたテキストで構成されます。ヘッダーとペイロードはそれぞれ、base64というアルゴリズムを使用して個別にエンコードされ、数行のテキストが1つの文字列に変換されます。エンコードされたヘッダーとペイロードの文字列を結合し、「.」文字で区切ります。

ヘッダーとペイロードはエンコードされて文字列に結合され、その文字列がハッシュ化されて署名として使用されます
ヘッダーとペイロードはエンコードされて文字列に結合され、その文字列がハッシュ化されて署名として使用されます

エンコードされたヘッダーとペイロードを含む結合後の文字列は、ハッシュアルゴリズムと秘密鍵を使用してもう一度エンコードされ、署名が作成されます。次に、別の「.」文字で区切って、署名をヘッダーとペイロードの末尾に追加し、最終的なJWTを作成します。

更新日 May 11, 2023 著者: Brian P.

quiz知識をテストする

Which of the following is not a type of web hosting?

A
Dedicated hosting
0%
B
Shared hosting
0%
C
Cloud hosting
0%
D
Base hosting
0%
Correct! Incorrect!     View the Web Host definition.
More Quizzes →

Tech Terms コンピューター辞書

このページのJWTの定義は、TechTerms.comの著者が執筆したオリジナルの定義です。このページを参照または引用する場合は、定義の直下にある緑色の引用バーをご利用ください。

私たちの目標は、コンピューター用語をわかりやすく説明することです。すべての定義において正確さとわかりやすさを追求しています。フィードバックや新しい技術用語の提案がある場合は、お問い合わせください

Tech Terms ニュースレター

毎日または毎週のニュースレターで技術知識を高めましょう!今すぐ購読して、新しい用語やクイズをメールでお受け取りください。

無料のTechTermsニュースレターに登録する

メールの受信頻度を選択してください

各メールのリンクから、いつでも登録解除または頻度変更ができます。 ご質問はこちらからお問い合わせください。

注意:ニュースレターは英語で配信されます。