Open棟梁Project - マイクロソフト系技術情報 Wiki

目次

概要

構造

構成要素

以下の要素から構成される。

ヘッダ

署名検証のために利用するもの。

ペイロード(クレームセット)

署名

JWTの種類

JWS

署名されたJWT

BASE64URL (UTF-8 (Header))
.
BASE64URL (UTF-8 (Claim Set))
.
Base64url (UTF-8 ( Signature))

JWE

暗号化されたJWT

ヘッダー.キー.初期ベクター.暗号文.認証タグ

BASE64URL (UTF-8 (JWE Protected Header))
.
BASE64URL(JWE Encrypted Key)
.
BASE64URL(JWEInitialization Vector)
.
BASE64URL(JWE Ciphertext)
.
BASE64URL(JWE Authentication Tag)

プレーンJWT

ヘッダ内のalgはnone = {“alg”: “none”} 。

ヘッダー.ペイロード.

BASE64URL (UTF-8 (Header))
.
BASE64URL (UTF-8 (Claim Set))
.

その他

JWTの作成と検証手順

難しいのでライブラリを使用する。.NETならNugetからメジャーな奴を入れる。

JWTの作成手順

概要

手順(JWS)

JWTの検証手順

ユースケース

認証用途

OpenID ConnectのIDトークン

コチラを参照。

OAuth 2.0のアクセストークン

シングルサインオン(SSO)

メール着信確認トークン

以下でメール着信確認トークンを使用するようなケースで利用する事で、
トークンをtempストアに格納して、後に比較するような実装が不要になる。

共有用URL

RFC

Assertion Framework for OAuth 2.0 Client Authentication and Authorization Grants

https://tools.ietf.org/html/rfc7521

JSON Web Token (JWT) Profile for OAuth 2.0 Client Authentication and Authorization Grants

https://tools.ietf.org/html/rfc7523

JWT を RFC 7521(上記) の アサーション として利用するための仕様

参考

参考

RFC

JOSE WG

jose : Javascript Object Signing and Encryption

OAuth WG


Tags: :認証基盤, :クレームベース認証


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS