「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。 -[[戻る>OAuth]] * 目次 [#je7cd788] #contents *概要 [#ia555bc7] -OAuth XYZ(3.0)とも呼ばれる。 -OAuthの複雑性に対処するため、 --フロントチャネルを可能な限り使わない。 --認可に関連する情報をトランザクションに集約していく。 >という方法を提案。 **動機 [#cf1a097c] 様々な[[OAuth 2.0 拡張]]を、 -同じような問題を解決するために -同じような不完全なコンポーネントを利用する。 と表現している。 ...確かに、最近、 -仕様が多過ぎると思い始めてきた。 -また、Clientが簡単に実装できなくなってきた。 と言う問題が目に付き始めた。 **特徴 [#v440d9e3] -[[OAuth]]2と互換性は無い。 -[[OAuth]] 2.0と互換性は無い。 -トランザクションモデルをベースとした認可プロトコル -OAuth XYZは初期OIDC の OpenID ABCを踏襲しているという説がある。 -英語の文章には >「XYZプロトコルは、情報を渡すために~ フロントチャネルを最小限に利用しようとしています。」 >とある。 -これは、 >「色々とバックエンドに押し込むため、フロントエンドには、~ interact (interact_handle)しか露見しないからセキュア。」 >と言う事らしい。 -3D Secure(クレカ決済などで使用される本人認証サービス)~ でも、同じようなフローになっているらしい。 *詳細 [#neff46e8] -transaction (handle)と、~ interact (interact_handle) を使用する。 -これにより、 --様々なフローの、 --色々なやり取りを >バックエンドに押し込むことが出来る。 **handle [#fcdfb110] ***transaction (handle) [#x753f308] バックチャンネルからトランザクション開始要求を行う。~ これにより、transaction (handle)が発行され以降これを使用して処理する。 ***interact (interact_handle) [#z4896f3b] クライアントとのinteract部分には、interact_handleを使用する。~ これにより、フロントチャネルの使用を最小限にしている。 **フロー [#m4bae064] -様々なフローがXYZで表現できるらしい。 -サンプルとして、以下のフローが公開されている。 ***Authorization Code Flow [#med0459d] ***Device Flow [#i05fc407] ***Client Credentials Flow [#v86b6de8] ***Resource Owner's Password Credentials / Assertion Flow [#n872c016] *参考 [#yf9140d3] -Home | OAuth.xyz~ https://oauth.xyz/ -draft-richer-transactional-authz - Transactional Authorization~ https://tools.ietf.org/html/draft-richer-transactional-authz -Transactional Authorization - "XYZ"と呼ばれる認可プロトコルとは - r-weblife~ https://ritou.hatenablog.com/entry/2019/07/30/070000 ---- Tags: [[:IT国際標準]], [[:認証基盤]], [[:ASP.NET Identity]], [[:OAuth]]