2012-03-01 7 views
5

私は現在取り組んでいるREST APIのOAuthバージョン1.0を調査しています。2足歩行Oauthとは何ですか

私はこれが3つの政党、サービスプロバイダ、消費者やユーザーが関与する3つの認証シナリオ

  1. を持っています。 3足歩行のOauthはこのシナリオに一致します。
  2. 2人の関係者、消費者、サービスプロバイダが関与しています。これは2足のOauthが最も適用可能なシナリオですか?それでは私の理解に基づいてこれとHTTPの基本認証との違いはほとんどないため、プロセスは何ですか?
  3. 私はまた、現在ログインしているユーザーのデータにユーザーの承認なしでいつでもアクセスできる特別なタイプのユーザーを作成しています。どのようにOAuthを実装しながら、これを画像に収めることができますか?

このシナリオを使用していますか?どのように私はOauthをきちんと実装することができますか?そして、これが3足歩行と2足歩行のOauthプロセスをどのように理解するのに役立ちますか?

+0

パスワードの代わりにアクセストークンのみを保存します。そのため、より安全な(パスワードが保存されていない)とアクセスがアプリごとに取り消される可能性があります(パスワードを変更すると、そのアカウントを必要とするすべてのアプリが壊れてしまうでしょう) – aitchnyu

答えて

1

番号1:修正してください。標準的な3足歩行を使用してください。

番号2 o-legged oauthは、http-basicとほとんど同じですが、oauthシグネチャはMITM攻撃を防御します(ただし、TLSでhttp-basicを使用する場合は同じ保護を受けます)。 2足歩行のためのプロセスは、消費者キー/秘密の要求の署名にすぎません。これは、HTTP基本のユーザー名/パスワードと同義です。

3.私はここで何を意味するのかについて100%明確ではありませんが、googleがGoogleアプリケーションドメインに2-legged oauthを使用する方法と似ています。ここでそのドキュメントをご覧ください:https://developers.google.com/accounts/docs/OAuth#GoogleAppsOAuth

OAuth 2.0を調べましたか?依然としてドラフト版ですが、シナリオごとに柔軟性があります。考慮する必要があるかもしれません。 http://oauth.net/2/

+1

ありがとうございました。私はシナリオ2の世話をする2足OauthのGoogleの実装を行った。シナリオ3については、私はちょうど消費者もプロバイダであるため、私はユーザー名とパスワード認証を使用します。私もOauth 2の仕様を調べましたが、良いPHPライブラリを見つけたり、自分自身で書くことができたら、後で2.0に移行する必要があります。 – kayfun

関連する問題