2011-06-29 15 views
1

Facebookを今接続しようとしています。Facebook経由でログインを保護する接続

if(isConnectedOnFacebook()){ 

    user = getUserByFBID(fbId) 

    if(user != none){ 
     user.setConnected() 
    } else { 
     showLoginForm(); 
    } 

} else { 
    showLoginForm(); 
} 

私は一種の公共「認証なしで私を接続する」方法でオープンFBのアカウントを等しくするという考え方との不安だ:次のように疑似コードではアプローチがあります。このアプローチの潜在的な欠陥は何ですか?

P.S:PHP APIを使用しています。

+2

OAuthがどのように動作するかについて詳しくは、以下を参照してください。ユーザーは、自分のアカウントにアクセスする前に自分のアカウントにアクセスする権限を与えなければならないと思います。 ?十分に承認されているのですか、またはあなた自身が左から自分自身に記録されたFacebookブックの乱用から保護したいということですか? – Rup

+0

はい、これはFacebookのアプリケーションのように動作します。私は単に有効なIDを使用してログインするパブリッククラスメソッドを持つことでサイトのセキュリティを低下させるリスクがあるかどうか疑問に思っています。見知らぬ人がユーザーの持つすべてのものにアクセスし、自分のプロフィールを破棄したり、友だちの間違いを作成したりする可能性があるので、あなたが言うように、「自分自身にログインした」というケースはおそらく考慮すべきです。 –

答えて

1

公共のコンピュータであるか、家族内で共有されていて、ユーザーがFacebookにログインしている場合、他のユーザーがあなたのアプリにアクセスできるようにすることができます。あなたのユーザーが接続して準備を整えられるようにするために、裏返しが障壁を低くしています。

ログイン機能がPHP SDK経由でどのように機能するかは、認証に使用されるUIDではありません。これはOAuthを介して行われます。 https://developers.facebook.com/docs/authentication/

関連する問題