マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

OAuth 2.0には、(主にセキュリティ強化のための)様々な拡張仕様がある。

拡張のフロー

以下のような拡張フローがある。

スマホ向けフロー

スマホ向けベストプラクティス (RFC 8252 ... OAuth 2.0 for Native Apps)

認可コード横取り攻撃への対抗策 (RFC 7636 ... OAuth PKCE)

その他のデバイス向けフロー

OAuth 2.0 Device Flow

新しい仕様

その他、新しい仕様も策定されている。

OAuth 2.0 拡張で追加された仕様

トークン取り消し (RFC 7009 ... Token Revocation)

トークン情報取得 (RFC 7662 ... Token Introspection)

各種クライアント認証

OpenID Connectで追加された仕様

応答タイプ (response_type)の追加

応答モード (response_mode)の新設

claimsリクエスト・パラメタ

認証コンテキストクラス

リクエスト・オブジェクト

JWT Secured Authorization Request (JAR)

Financial API (FAPI)で追加された仕様

JWTとOAuth2.0

セキュリティ

セキュリティに関する考察と、考慮点。

認証に使用する

問題点

認証ではなく認可のためのプロトコル(権限委譲プロトコル)である。
OAuth 2.0の仕様を熟読してもOAuth2.0を認証に使用しても問題ないように見える。

以下のBlogを参照して、

の部分を見ると、全権限の認可は≒認証で、
OAuth 2.0による認証も、OAuth 2.0の一利用方法と捉えることができる。

従って、「OAuth 2.0は認証で使用できる。」と考える。
ただし、「OAuth 2.0には以下の問題がある。」と考える。

このため、これらの問題がある状態で、OAuth 2.0を認証に使用すると、

「Resource Serverで公開しているリソースへのアクセスを認可する。」

という限られた権限より、(システムにログインできるということは)大きい権限を委譲することになるので、
この発言の背景では、「認可に比べ、認証に使用した場合、リスクが大きい。」という問題が懸念されている。

対応方法

従って、この問題は、

以下のように対策できる。

参考

UserAgentでOAuth2のTokenを取得するベスト・プラクティス

OAuth 2.0 の脅威モデルとセキュリティの考慮事項 (RFC 6819)

OAuth 1.0 のほうが OAuth 2.0 より安全なの?

参考


Tags: :IT国際標準, :認証基盤, :クレームベース認証, :OAuth


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