私は新しい Web サイトに取り組んでおり、OAuth と OpenID と標準サイト所有のユーザー名/パスワードについてアドバイス/フィードバックが必要でした。
8 に答える
openid と oauth とは何かを説明している Malcom Tredinnick によるこの記事を読み、実行することをお勧めします。それらは異なる目的を果たします。
要約すると、openid はユーザーを一意に識別するために使用されます。これは ID ソリューションです。oAuth は、サイトのユーザーがアクセスできるデータとやり取りする手段を提供します。たとえば、ユーザーがサイトに外部サービス (flickr アカウントなど) への一時的なアクセスを許可できるようにすることで、これは認証ツールです。
もちろん、標準のサイト固有のアカウントのみを提供することは常にオプションですが、私見では、openid をサポートすることは、ユーザーと Web にとってより優れています。openid を実装している多くのサイトでは、ユーザーが openid を持っていればそれを使用できますが、ユーザーは openid なしでサインインしてアカウントを作成することもできます。したがって、必ずしもどちらかまたは両方の命題ではありません。両方できます!
サイトが他のサイト上のユーザーのプライベート データにアクセスする必要がない場合でも、ユーザーが API または別の Web サイトからアクセスする可能性のあるデータがサイトにある場合は、OAuth が適用される可能性があることに注意してください。OAuth では、どちらか一方または両方がサイトに適用される可能性があります。
私は、OpenID、Facebook、その他のオーセンティケーターを使用したユーザー認証の統合をサポートすることに賛成です。ユーザーに選択肢を与えます。
また、それらを使用しないオプションを提供します。特に成人向けのWebサイトでは、ユーザーはWebサイトにサインアップするだけのように匿名ではないものを使用しないことを選択する場合があります。パスワードの保存に関しては、ベストプラクティスを使用してください。
OAuth に対する私の印象は、一般的なユーザー アクセスではなく、API への安全な認証済みアクセスを許可するためのものであるということです。
個人的には、OpenID をサポートするサイトが増えることを期待しています。
それらすべてを組み合わせて最大限に活用することができますが、それはデザインの選択によって異なります。
たとえば、Java を使用している場合、Acegi (Spring Security) を構成して、通常の認証メカニズムとともに openID を許可できます。
openID には OAuth 拡張機能があります
OAuth には openID 拡張機能があります
それはあなた次第です...
ここに見事に明確な説明があります。OAuth ドキュメントから直接取得します。
JanRain では、ほぼすべてを受け入れることができます。大企業は常にプロバイダーになりたいが消費者にはなりたくないことを考えると、これが唯一の現実的な「普遍的な」選択肢かもしれません。
2011 年 11 月現在、 OpenID Connectと呼ばれる新しい標準が開発者向けプレビューで提供されています。これは OAuth 2.0 に基づいて構築されており、私が理解している限り、Facebook の処理方法を標準化しており、これも OAuth 2.0 に基づいています。Facebook 認証プロトコルには多くの経験があり、多くの Web 開発者が探しているソリューションになる可能性があるため、有望に見えます。まだ踏み込んでいないので誤解しているかもしれませんが、このブログ投稿を読んだ後、これが私が理解した方法です。