私は自分のサイトのFacebookログインを検討しています。Facebookベースの認証に基づいて、ユーザーはサイトにログインします。また、Facebookのログイン状況に関係なく、サイトからログアウトするまで使用し続けます。他のほとんどのサイトと同じように。
FBのクライアント側のログイン方法を調べていると、fbsr_{app_id}Cookieから受信したsigned_requestデータに基づいていることがわかりました。そしてFBは、認証要求を検証するために、発行から10分以内に有効な短期間のaccess_tokenと交換されることを望んでいます。(この10分は、セキュリティホールを最小限に抑えるためのFBによる最善の努力のようです。)
ただし、この10分以内に、他の誰かがCookieをコピーして、問題なく被害者としてログインを試みることができます。これは私にとって懸念事項であり、次の質問をしたいと思います。
FBのクライアント側認証のセキュリティ面に関してここで何かが欠けているのでしょうか、それとも実際にこの弱点がありますか?
ギャップを埋めるために実装でできることはありますか、それともFBのサーバー側認証に移行することが唯一の答えですか?