ア | イ | ウ | エ | オ |
カ | キ | ク | ケ | コ |
サ | シ | ス | セ | ソ |
タ | チ | ツ | テ | ト |
ナ | ニ | ヌ | ネ | ノ |
ハ | ヒ | フ | ヘ | ホ |
マ | ミ | ム | メ | モ |
ヤ | ユ | ヨ | ||
ラ | リ | ル | レ | ロ |
ワ | ヰ | ヴ | ヱ | ヲ |
ン |
A | B | C | D | E |
F | G | H | I | J |
K | L | M | N | O |
P | Q | R | S | T |
U | V | W | X | Y |
Z | 数字 | 記号 |
Webアプリケーションなどに対し、セキュアなAPIアクセス権認可を与えるための標準的手段を提供するもの。
簡単には、OAuthは次の特徴を持つ「認可情報の委譲」をするための仕様である。
全権委譲はあったが、特定の権利の委譲は従来なく、初めて実用化された標準的手段がOAuthであった。
マッシュアップされた二つのWebアプリケーションを利用する場合、従来であれば、「WebサービスA」のユーザーIDとパスワードを、WebサービスAにアクセスしたい「WebサービスB」にそのまま登録するような運用が行なわれてきた。
OpenIDもその延長線上であり、ユーザーIDとパスワードの共有が基本的機能である。仕様は明快であり、実装も簡単である。
しかし、WebサービスAのユーザーIDとパスワードがあれば、WebサービスBはユーザーから何の許可も得ることなくWebサービスAにある全情報へアクセスできたり、機能を利用できることになり、セキュリティ面で望ましいことではない。
また、WebサービスAのパスワードを変更した場合、WebサービスBもそれに合わせて登録し直す必要が発生し、手間が大きい。
Twitterは、認証機能の改善として、まずOpenIDの実装に取りかかった。
SNSのMa.gnoliaも同様に、Mac OS XのDashboardウィジェットからサービスへのアクセス方法としてOpenIDを検討し始め、Twitterなどと協議を始めたが、前述したようにOpenIDには認可機能がなく、採用するに不十分と判断された。
そこで2007(平成19)年4月、彼らが集まりOAuth標準仕様の策定が開始された。それを知ったGoogleも賛同し、支援に加わった。結果、2007(平成19)年7月に最初のドラフト仕様が発表され、2007(平成19)年12月にOAuth Core 1.0がリリースされた。
OAuthによって、ユーザーのリソースがあるサイト(サービスプロバイダー)と、その情報を利用したい別のサイト(コンシューマー)がAPI認証を成立させるまでに、大きく三段階の手順がある。
ここからOAuthの特徴は、次の二点に要約することができる。
コンシューマーは、APIを通じたアクセスに先立ち、一度だけコンシューマー登録という手順が必要となる。
この手順により、コンシューマーを表わす一意のキー「コンシューマー・キー」と、電子署名に使う「コンシューマー・シークレット」がコンシューマーに対して発行される。
これは動的に行なわれても、また電子メール等を用いて行なわれても良い。
拒否の場合は、ここで終了する。承認された場合は、次に進み実際のリソースへのアクセス権を得る。
以降は、サービスプロバイダーがアクセス・トークンに含めた条件(リソースの種類、有効期間)に応じて(3)を繰り返し、API経由でリソースへアクセスする。
一旦、サービスプロバイダーへリダイレクトし、ユーザーの承認を得る処理はOpenIDと同様で、OpenIDの影響を受けている。
OAuthは、OpenIDと違って第三者にパスワード等を預ける必要がないことと、ユーザーが、許可する権利を事前に確認できるのが利点となっている。
将来的には、OpenIDとの相互運用なども検討されているとされる。
コメントなどを投稿するフォームは、日本語対応時のみ表示されます