「マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
目次 †
概要 †
- OAuth 2.0のドキュメントの再整理という側面が強い提案。
- これだけ読めば現代のOAuthが理解できる。と言うドキュメントを目指した取り組み。
AIによる要約 †
- OAuth 2.0(RFC 6749)の後継となるセキュリティ強化版の認可フレームワーク。
- 正式なRFC化に向けて策定が進められており、複数の拡張仕様を統合しながら脆弱なフローを廃止することが主な目的。
略語まとめ †
- AT:Access Token
- RT:Refresh Token
- AS:Authorization Server
- RS:Resource Server
- PKCE:Proof Key for Code Exchange
- DPoP:Demonstration of Proof of Possession
- mTLS:mutual TLS
強化 †
以下、10章の変更点(強化)を一覧化
- PKCE必須化:コードインジェクション対策
- リダイレクトURI完全一致:不正リダイレクト対策
- PublicクライアントのRT制限:リプレイ攻撃対策(Sender Constraintまたはローテーションが求められる)
※ Sender Constraintとは、持参人切符 → 記名式切符の話。
※ 記名式切符には、クライアントの公開鍵サムプリント埋め込む。
※ Sender Constraintには、DPoP、mTLSがある。
廃止 †
以下、10章の変更点(廃止)を一覧化
- Implicitグラント廃止:トークン漏洩・インジェクション対策
- ROPCグラント廃止:認証情報の直接受け渡し排除
- URIクエリへのトークン禁止:トークン露出対策
修正 †
以下、10章の変更点(修正)を一覧化
- トークンリクエストからredirect_uri削除:PKCEで代替済み・仕様の簡略化
クライアント認証系 †
上記はOAuth2.1の必須の変更点だが、クライアント認証系のトピックは推奨(別仕様(BCP: RFC 9700等)に委ねる設計思想)。
- 必須(MUST) → PKCE、リダイレクトURI完全一致、RT制限
- 推奨(SHOULD)→ private_key_jwt、DPoP/mTLS等の強固なClient認証
- 許容(MAY) → client_secret系(後方互換のため残存)
トークン・リクエスト時 †
private_key_jwt:Confidentialクライアントで、トークンリクエスト時にASへのクライアント認証を行う。
トークン利用時 †
Publicクライアントで、
- DPoP:DPoPトークンリクエストで埋込み、トークン利用時にSender Constraint。
- mTLS:トークンリクエストでクライアント認証しつつ埋込み、トークン利用時にSender Constraint。
※ OAuth 2.1 ではSender Constraintは、RTの利用が対象だが、ATにも適用はできる。
詳細 †
参考 †
Tags: :IT国際標準, :認証基盤, :クレームベース認証, :OAuth