OAuth2・OpenID ConnectにおけるJWTの利用
OAuth2・OpenID ConnectにおけるJWTの利用方法を説明する。
目次
JWTの利用
1.概要
認証プロトコルであるOpenID Connectで使われるJWTについて解説する。
2.JWTとは
OpenIDConnectにおけるIDトークンのJWS (JSON Web Signature)形式のデータである。
◎ JWS:JSONに電子署名をしてURL-safeな文字列として表現したもの
◎ 認可サーバ上の秘密鍵で利用して電子署名し、リソースサーバ(含API Gateway)が公開鍵を持っておき署名を検証する。
◎ Base64(Header).Base64(Payload).Base64(Signature)
※Payloadのサブジェクト (sub) クレームは、ユーザーのプリンシパル名および固有セキュリティー名であるため実質的にはログイン済ユーザを表す。
トークンタイプ
JWTにはクレーム (claim) と呼ばれる項目がある。
その中に”typ”(トークンタイプ)というクレームがあり、それぞれ以下の意味である。

クレーム
ID トークンに含まれるクレーム(ユーザー属性情報群)は以下の通り。
【IDトークン内のクレーム情報】

3.ID Tokenのデコードサイト
以下のID TokenのデコードサイトでID Tokenをデーコードして内容を確認する事が可能。
◎ JSON Web Tokens
【実際のデーコードした値】
