RFC 7523
JSON Web Token Profile for OAuth 2.0 Client Authentication and Authorization Grants
静的なクライアントID/シークレットではなく、署名付きJWT(JSON Web Token)を使って、認可サーバー
に認証する方法を定義した標準仕様。マシンtoマシン認可シナリオで有望視されている
RFC 7523 JSON Web Token JWT Profile for OAuth 2.0 Client Authentication and Authorization Grants
https://www.rfc-editor.org/rfc/rfc7523
参考
RFC 7523 JWTベースのクライアント認証) がマシンtoマシン認可シ
ナリオで有望な理由
● クライアントシークレット不要
○ 毎回使い捨ての署名付きJWTで認証するため、漏洩リスクを軽減
● リクエスト毎に新しい JWT を生成
○ JWT は jti(JWTの一意識別子)や exp(有効期限)などのクレーム情報に
より、一度使用されたトークンを再利用できない構造
● アクセス履歴が追いやすい
○ JWTにはどのクライアントが、どのリソースにアクセスしたいかという情報
が含まれており、監査しやすくなる
{
"iss":"https://jwt-idp.example.com",
"sub":"mailto:
[email protected]",
"aud":"https://jwt-rp.example.net",
"nbf"1300815780,
"exp"1300819380,
"http://claims.example.com/member":true
}
JWTペイロード例