[4] OAuth 1.0 は、 Web API へのアクセス権限に関するプロトコルです。
[5] 非互換で名前以外まったく違ったプロトコルである OAuth 2.0 によって形式的には廃止され、新しい実装はそちらを採用することが一般的になっていますが、 依然として OAuth 1.0 を使っている実装も少なくありません。
[6] OAuth 1.0 は3回正式な仕様書として出版されています。技術的にはほぼ同じ内容ですが、 若干の違いはあります。
[10] 最初の2つは OAuth Core Workgroup により出版されましたが、その後 IETF に移管 >>9 され情報提供RFCとして発行されました。 現在最初の2つには RFC 5849 を参照するよう注意書きが追加されています。
[11] 最初の版にはセッション固定攻撃に対する脆弱性があったため、 1.0a で修正されています。
[38] 「Core 1.0」→「Core 1.0a」→「1.0」とわけのわからないバージョンアップが行われたため、 どの版を指しているかに若干の混乱も見られました。
[14] RFC 5849 とそれ以前で用語一式が違っています。 一般には歴史がある旧来の用語が使われているケースが多いようです。
... で構成されています。
[29] その他次の概念があります。
[41] 他に次の拡張仕様があります。拡張仕様は必ずしも実装されていません (それぞれの項を参照)。
[22] リダイレクトを使った認可は、 次の3段階で行います >>20。
[26] この3段階のエンドポイントの URL を鯖はクライアントに広告する必要があります >>20。
しかしその方法は規定されていません >>20。
その URL は query を含んでいても構いませんが、
oauth_
から始まる引数を含んではなりません >>20。
[30] Google や Twitter はこの方式を 3-legged OAuth >>31, >>39 と呼んでいました。
[32] この方式は OAuth 2.0 の承諾型のうち認可符号に相当します。 ただし両者のフローは大きく異なっていて、互換性は全くありません。
[34] HTTP認証では、クライアントが要求に credentials を含めて送信し、鯖がそれを受け入れるか判断します。 OAuth 1.0 でも HTTP要求に credentials を含めます。 OAuth 1.0 では、 クライアントを表すクライアントcredentialsと、 資源所有者を表すトークンcredentialsを(両方共)使います。
[35] 詳しくは次の各項を参照。
[36] auth-scheme
OAuth
は、 OAuth 1.0 の credentials や challenge を表します。
用法については、引数 (OAuth 1.0) と challenge を参照してください。
[37] この値は RFC 5849 で規定されました。 RFC 723x で新設された IANA登録簿には RFC 7236 で登録されています >>2。
[40] OAuth 2.0 において auth-scheme
Bearer
とするべきところ、 OAuth
を使う実装もあります。
Bearer
参照。XOAUTH
[1] Gmail Platform — Google Developers ( ( 版)) https://developers.google.com/gmail/oauth_protocol
This document defines the SASL mechanism XOAUTH for use with the IMAP AUTHENTICATE and SMTP AUTH commands. It allows the use of OAuth 1.0 authentication parameters to authenticate to a user's Gmail account. The mechanism supports standard "three-legged" OAuth and non-standard "two-legged" OAuth.
[3] draft-ietf-kitten-sasl-oauth-16 - A set of SASL Mechanisms for OAuth ( ( 版)) https://tools.ietf.org/html/draft-ietf-kitten-sasl-oauth-16
[12] 元々 OAuth は OpenID とは異なるものでしたが、 OAuth を使ってログイン機能を実装するのが流行し、結果的にそれまでの (あまり普及していなかった) OpenID によるログイン機能を置き換えるものとなりました。
[16] 特定のクライアントを許可している Twitter ユーザーの Token Credentials を入手する攻撃 - ひだまりソケットは壊れない ( ( 版)) http://vividcode.hatenablog.com/entry/twitter-oauth-vulnerability
[19] oauth - API needz authorized? - Google Project Hosting ( 版) https://code.google.com/p/oauth/
[42] RFC 7628 - A Set of Simple Authentication and Security Layer (SASL) Mechanisms for OAuth ( 版) https://tools.ietf.org/html/rfc7628