0

サインアップ フォームを通じて新規ユーザーを受け入れるか、Facebook を使用してログインするアプリケーションを設計しています。

ユーザーがサインアップすると、ユーザー レコードを作成し、暗号化されたパスワード (ハッシュ) をUSERテーブルに格納します。ユーザーが FB からサインアップした場合でも、ユーザー レコードを作成したいと考えています。

しかし、私は彼らの FB パスワードにさらされないので、パスワード列をどのように処理すればよいでしょうか。または、ユーザー ID/ログイン/パスワードをテーブルからUSER分離して、別のテーブルに保持する必要があります。FB ユーザーは、この新しいテーブルにレコードを持ちません。

4

1 に答える 1

2

どちらでも問題なく動作します。おそらく、このユーザーが好む認証プロバイダーを User テーブルに記録しておき、それをログイン方法のガイドとして使用したいだけでしょう。

ログインの詳細をユーザー アカウントとは別に保存することには利点がありますが、どちらにしてもかなり密接に関連付けられるため、多くの場合、ログインをユーザー アカウントの詳細と共に保存しても問題はありません。個別のログイン レコードを保持すると、ユーザーがいつサインインしたか、どの資格情報でサインインしたか、パスワードを過去に使用したものに変更しようとした場合などを記録しやすくなります。アプリケーションの監査は完全にあなた次第です。

標準のログイン プロセスを使用して Facebook 認証済みユーザーをシステムに強制的にログインさせようとするルートがないことを確認できる限り、user テーブル自体に空白のパスワードを設定してもリスクはありません。 . ユーザーが好むログインの種類を示し、空白のパスワードに対するログイン試行が自動的に失敗することを保証することで、これを問題として回避するのに十分なはずです。

于 2015-03-23T17:15:17.170 に答える