「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。 -戻る([[OAuth]]、[[OAuth 2.0 拡張]]) --[[OAuth 1.0]] --[[OAuth 2.0]] --[[OpenID Connect]] --[[OAuth 2.1]] --OAuth XYZ(3.0) * 目次 [#je7cd788] #contents *概要 [#ia555bc7] -名前の変遷(同じものです) Transactional Authorization → XYZ (oauth.xyz) → TxAuth (IETFメーリングリスト) → GNAP (Grant Negotiation and Authorization Protocol) -OAuth XYZ(3.0)とも呼ばれる。 -OAuthの複雑性に対処するため、 --フロントチャネルを可能な限り使わない。 --認可に関連する情報をトランザクションに集約していく。 >という方法を提案。 -RFC化は2024年に完了したが、実際の普及はこれから(と言うがスルーされてる感もある) --ゼロからの実装が必要なため、「段階的移行」ができない。これが普及の大きな壁。 --現場の開発者が「今日困っていること」はOAuth 2.0の拡張で大体対処できてしまう。 --GNAPはアーキテクチャとして正しいのに、タイミングとエコシステムの慣性に負けている典型例になりつつある **動機 [#cf1a097c] 様々な[[OAuth 2.0 拡張]]を、 -同じような問題を解決するために -同じような不完全なコンポーネントを利用する。 と表現している。 ...確かに、最近、 -仕様が多過ぎると思い始めてきた。 -また、Clientが簡単に実装できなくなってきた。 と言う問題が目に付き始めた。 **特徴 [#v440d9e3] -[[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]]