[16] OAuth 2.0 は、 Webアプリケーションの認証に関する仕様です。
[17] OAuth 1.0 を廃止し置き換える後継版ですが、 OAuth 1.0 との互換性はまったくありません。そのため OAuth 1.0 を実装していたサーバーは現在も引き続き OAuth 1.0 を使っていることが多いですし、クライアントはサーバーに応じて OAuth 1.0 と OAuth 2.0 を使い分ける必要があります。 とはいえ、新しいサーバーは、大抵 OAuth 2.0 を実装しているようです。
[10] OAuth 2.0 では当事者が次の通り名付けられています。
[11] 次のような概念が存在します。
[12] OAuth 2.0 では認可鯖からアクセストークンを得るための方法が幾つもありますが、 いずれにせよ最終的にはクライアントがアクセストークンを得ることになりますから、 資源鯖は多数の認証方式に対応せずとも、アクセストークンにさえ対応すれば良いこととなります。
[14] OAuth 2.0 には沢山のオプション機能や未定義としている部分があり、 相互運用性を妨げる虞があることを RFC も認めています >>13。
[23] RFC 7521 >>24 は OAuth 2.0 本体仕様に対する拡張として、 assertion への対応方法を規定しています。この方法にのっとった JWT (RFC 7523) や SAML 2.0 (RFC 7522) の利用方法が定義されています。
[27] HTTP認証には、Webブラウザーで使われる基本認証など、 いくつかの種類があります。 OAuth 2.0 も HTTP認証の一種として使うことができます。
[29] 名前や開発の流れを除いて、 OAuth 1.0 と OAuth 2.0 は実は無関係で、互換性もまったくありません。用語すらもそれほど同じではありません。
[30] OAuth 2.0 は OAuth 1.0 の経験から実装者が苦しめられていた機能を簡略化していますが、 一方で OAuth 1.0 の経験を踏まえてより多様な用途に適応できるようオプションを増やして複雑化もしています。 どちらがより単純とも実装しやすいとも一概には言えません。
[31] IETF の手続き上は OAuth 2.0 の出版により OAuth 1.0 は廃止されました。しかし互換性がありませんから、 既存の OAuth 1.0 の実装はただちに OAuth 2.0 に移行することもできず、数年経っても両者が共存しています。 おそらく今後数年 (もしかすると十数年) この状況は続くでしょう。
[1] OAuth 2.0 — OAuth ( 版) <http://oauth.net/2/>
[4] RFC 6819 - OAuth 2.0 Threat Model and Security Considerations ( ( 版)) <http://tools.ietf.org/html/rfc6819>
[5] draft-ietf-oauth-v2-http-mac-05 - OAuth 2.0 Message Authentication Code (MAC) Tokens ( ( 版)) <http://tools.ietf.org/html/draft-ietf-oauth-v2-http-mac-05>
[6] draft-yusef-sipcore-sip-oauth-01 - The Session Initiation Protocol (SIP) OAuth ( ( 版)) <https://tools.ietf.org/html/draft-yusef-sipcore-sip-oauth-01>
[7] draft-ietf-kitten-sasl-oauth-16 - A set of SASL Mechanisms for OAuth ( ( 版)) <https://tools.ietf.org/html/draft-ietf-kitten-sasl-oauth-16>
[22] draft-ietf-oauth-assertions-18 - Assertion Framework for OAuth 2.0 Client Authentication and Authorization Grants ( 版) <http://tools.ietf.org/html/draft-ietf-oauth-assertions-18>
[25] RFC 7628 - A Set of Simple Authentication and Security Layer (SASL) Mechanisms for OAuth ( 版) <https://tools.ietf.org/html/rfc7628>
[26] RFC 7662 - OAuth 2.0 Token Introspection ( 版) <https://tools.ietf.org/html/rfc7662>