2009-03-13 9 views
5

ウェブアプリケーションで認証システムの組み合わせを使用できますか?認証の組み合わせOpenIDとFacebook

私はOpenIdを使いたいと思っていますが、潜在的な顧客は実際にはFacebook IDを持つ可能性がより高いと思います。

したがって、両方のタイプの認証を提供できるかどうかは疑問です。

+0

もちろん、ゼロから構築すれば可能です - 特定のフレームワーク内で可能かどうか尋ねていますか? –

答えて

2

ほとんどすべての言語について、フレームワークが必要です。このフレームワークの機能をチェーン化/ラップすることで、ニーズを満たすことができます。擬似コードで

:あなたは、Javaを使用している場合

if(IsUserValidViaOpenId() || IsUserValidByOwnAuthDB()) ... user auth successful 

、Acegiの/春のセキュリティは(inversiveないセキュリティ - AOPを介した)最善の方法かもしれません。ここでopenIDを使用して、自分自身のuserdbのために独自の2番目のバリデータを定義することができます!

3

Facebook has joined the OpenID foundationだから、おそらく彼らはすぐにOpenIDを実装しています(この場合、OpenIDを使う方が良いかもしれません)。フォーム処理ロジックでは、このような

0

何か:

def authenticate(form_info): 
    url = form_info['url'] 
    if (is_facebook_url(url)): 
     return perform_facebook_authentication(form_info) 
    else: 
     return perform_open_id_authentication(form_info) 
2

あなたはRPXをしたいです。それは、あなたとあなたの訪問者の両方からOpenIDの全混乱を抽象化します。また、OpenIDプロバイダに加えてFacebookやMySpaceで認証することもできます。

ここではStack Overflowでご覧になっているものとよく似たログインインターフェイスを提供しています。

+0

これはかなりクールだ - 私は次のプロジェクトで試してみるかもしれない。ありがとう! –

+0

すっきり!可能な勝者のように見えます... –

+3

そして、それはまた、あなたのすべてのユーザ認証のための単一の外部ソースに完全に依存します。使用するかどうかを決める前に、http://blog.nerdbank.net/2009/01/why-using-rpxnow-is-bad-idea.htmlの引数を読んでください。 –

関連する問題