「マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
目次 †
概要 †
- Nativeアプリ(スマホ)からのOAuth 2.0 は、
- 認可リクエストを、外部Webブラウザを経由してのみ行う。
- 外部Webブラウザとの連携には基本的に「Custom URL Scheme」を使用する。
- 埋め込まれたUserAgent?(WebView?など)は、諸事情により使用しない。
- なお、Hybridアプリは、この仕様の目的ではNativeアプリ(スマホ)と同等。
詳細 †
埋め込まれたUserAgent?(WebView?)を使用してはいけない理由 †
IdPのSessionを盗むことができる。 †
IdPのSessionをClientが盗む事ができ、Sessionが有効な間、SSO可能な状態が持続する。
Nativeアプリ(スマホ)と外部Webブラウザの連携方法 †
Custom URL Scheme †
- アプリケーションが受け取る独自のURLスキームを事前にシステムに登録する方式。
- 複数のアプリが通常同じスキームを登録できるため、
どのアプリが認証コードを受け取るかについて不確定。
(Custom URL Scheme上書き攻撃)
Loopback Interface Redirection †
- ローカル・ループバックでHTTPリクエスを受け取る方式。
- 一部のOSで同じローカル・ループバックにアクセスする、
他のアプリの傍受の影響を受ける可能性がある。
Claimed Https Scheme URI Redirection †
- ???方式
- URI権限の存在によりURI傍受の影響を受けにくいが、
- アプリはまだパブリッククライアントであり、
- 仕様が不明瞭なOSのURIディスパッチハンドラを使用しURIが送信される可能性がある。
アプリ内ブラウザタブ †
参考 †
仕様 †
関連 †
Tags: :認証基盤, :クレームベース認証, :OAuth