「マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
目次 †
概要 †
- OAuth 2.0 の脅威モデルとセキュリティ考慮事項 (RFC 6819)
- OAuth 2.0 の実装にあたり、脅威モデルとセキュリティ考慮事項を列挙
- セクション4以降からの内容で、OAuth 2.0 の前提は飛ばしている。
脅威モデル †
セキュリティ考慮事項 †
Flow毎? †
Access毎? †
ざっくり †
対策 †
実装面 †
- SSL/TLS(サーバ証明)を利用する。
- クライアント認証を行う。
- トークン類に低いエントロピーの値を使用しない。
- state、nonceを付与・検証する。
- 正規のClientへ発行されたトークンの漏洩に注意。
- code(state):code置換攻撃が可能。
- access_token:access_tokenを利用可能。
- access_token(JWT)を検証する。
- 署名検証
- クレームセットの検証
- iss(issは署名検証があるので偽装困難)
- aud(誰を対象に発行したか?)
Clientだけでなく、Resources Serverでもaudによるクライアント検証を行う。
- sub(subをユーザに明示する)
ResourcesOwner?への明示と、
Client、Resources Serverで認証済みリクエストで検証するなど。
ユーザ †
ユーザの教育
注意 †
オープンリダイレクタ †
- 完全なredirect_uriの事前登録と検証
- スターターとアクセストークン・リクエストでのredirect_uriの要求
パブリック・クライアント †
悪意のあるクライアントが容易に登録可能。
自動再認証、認可画面非表示 †
- 悪意のあるクライアントと組み合わさる。
- その際のscopeなど注意が必要。
参考 †
Tags: :認証基盤, :クレームベース認証, :OAuth