jwt(1)理論


今回は,jwtをToyプロジェクトとして認証するプロセスを開発した.主に他のテナントを参照する場合,認証のためにreprencetoken,jwt,redis,springfilterを用いて実現したが,機能不足のためインタフェースとデバイスのみを用いて論理を実現した.もちろん、再包装する予定です.
自分で受け入れる?トークンの基本情報、伝えるべき情報、認証は自分が持っている意味です.

  • 定義#テイギ#
    json webtokenの略は、jsonオブジェクトを用いて簡単に、自己受け入れで安定して情報を伝達する方法である.これはRFC 7519の標準です.
  • 特長

  • 字収容可能.
  • jwtは、自分が必要とするすべての情報を持っています.jwtシステムで発行されるトークンには、トークンに対する基本情報、伝達される情報、および検証されたトークンを証明する署名が含まれている.
  • は伝わりやすいです.
  • jwtは自己許容可能であるため、2つのオブジェクトから容易に伝達することができる.Webサーバでは、httpヘッダに転送やURLのパラメータとして渡すことができます.
  • JWT構造


    jwtコイン.3つの文字列で構成されています.
    xxxxx.yyyyy.zzzzz
    ヘッダー、ペイロード、署名から構成されます.

    見出し


    タイトルには一般的に2つの情報が含まれています.
  • type:コインのタイプを表し、jwtを加えます.
  • alg:トークン署名を生成するアルゴリズムを記入します.SHA 236またはRSAが入る.
  • 例:
    {
    	'alg' : "HS256",
    	 'typ' : 'jwt'
    }
    上のハッシュはHS 256で署名されたjwtを表す.

    ゆうこうかじゅう


    トークンの第2の部分はペイロードです.ペイロードにはクレームが含まれます.claimは、オブジェクトまたはその他の情報を表します.ボイコットクレーム、pulibc slaims、およびプライベートクレームの3種類があります.
  • 登録クレーム:義務ではなく、iss(isuuer)、exp(期限切れ)、sub(subject)、aud(参加者)など、有意義な情報を含むために追加されたクレームです.
  • 共同声明:IANAjwtを使用して登録または衝突を防止するクレーム(URI)形式.
  • プライベート・ステートメント:これらは、クライアントおよびサーバ・プロトコルの下で使用されるクレームです.公開クレームと月は名前の重複で競合する可能性があるので、使用に注意してください.
  • に署名


    ヘッダの符号化値とペイロードの符号化値を加算した後,所与の秘密鍵でハッシュ生成を行う.このようにして生成されたハッシュ値はbase 64として現れる.

    検証方法


    認証時にどのように使用されているかを簡単にまとめます.

  • 検証プロセスはjwtとintercepterを使用して行います.

  • ログイン時にaccesstokenとrefresh tokenが発行され、デフォルトではアクセストークンを使用して認証と承認が行われます.認証に成功すると、リクエストに応答するリソース.

  • accesstokenが期限切れになった場合、refresh tokenはユーザー情報を認識し、accesstokenを再発行します.

  • 家計簿に関連するurlを使用してアクセスする場合は認証を行い、認証に失敗した場合はログインページを再起動します.

    リファレンス


    https://jwt.io/introduction
    https://gyoogle.dev/blog/web-knowledge/JWT.html