-1

Firebase の Simple Login 機能には、メールとパスワードを使用してユーザーをログインさせる機能が含まれています。

この機能は非常に便利で、使い方も簡単です。ただし、これをクライアントのみの Web アプリに実装しようとしたときに、Firebase で簡単に対処できる問題を特定したようです。

しかし、私は自分自身をほとんど信用しておらず、いつも自分が馬鹿だと思い込んでいます。そこで、Firebase に直接連絡する代わりに、ここに質問として投稿することにしました。これにより、賢い人が私を修正し、私が遭遇したように見える問題に対処する賢い方法を提案してくれます!

ここに私の考えがあります:

Firebases のメール簡易ログインには、メール確認機能がないという大きな問題があります。これは、ユーザーが実際に電子メール アドレスを制御しなくても、電子メールとパスワードのアカウントを作成できることを意味します。

これは一般的な問題点であり、最も一般的な解決策は、ランダムなパスワードでユーザー アカウントを作成し、すぐにパスワード リセット メールを送信して、メールを制御できる場合にのみ自分のパスワードを設定できるようにすることです。

ただし、アプリはクライアント側であるため、ランダムなパスワードの割り当てもクライアント側で行う必要があります。さらに、これは誰かが javascript コマンドを使用して定義済みのユーザー アカウントを作成することを止めるものではありません。(つまり、ユーザーは自分が所有していない電子メール アドレスでアカウントを作成できます。)

電子メールの確認は、安全なクライアント側 Web アプリケーションを構築するために不可欠です。簡単な解決策を提案します。

Firebase では、簡易ログイン ダッシュボードにオプションの設定を含めることができます。これを有効にすると、有効なパスワードなしでユーザーを作成できるようになります。このように、ユーザーは JavaScript コードを使用して他の人の電子メールで自分のアカウントを作成することはできません。開発者は、有効なパスワードを持たないユーザーを作成し、パスワード リセットの電子メールを送信して、有効なパスワードを持つアカウントのみを許可することで、真に安全なクライアント側アプリを作成できます。有効な電子メール アドレス。

私の限られた理解では、これは Firebase にとっては簡単に実装できると思いますが、開発者にとっては非常に重要です。ただし、アカウントを有効な電子メール アドレスに制限する方法が既にあるとしても、私は驚かないでしょう。

教えてください!

4

1 に答える 1

-1

ここにセキュリティ リスクがあるとは思いません。Firebase は、ユーザーを一意に識別するためにメール アドレスの入力を求めるだけです。簡単にユーザー名を要求することもできましたが、そうするとユーザー名の競合がさらに発生する可能性がありました。

アプリケーションがそのアドレスでユーザーに電子メールを送信する場合は、その電子メール アドレスを確認する必要があります。このブログ投稿では、ある人がそれをどのように行ったかを説明しています。

私の Firebase アプリケーションはメールを送信しないので、メール アドレスが有効かどうかはあまり気にしません。彼らが一貫して同じユーザーを識別しているというだけで、私が知る限り、彼らはそうしています。

つまり、あなたが提案するように、Firebaseにメールアドレスを検証するオプションがあれば本当にいいでしょう. すでに彼らのレーダーに乗っているように見えるGoogleグループに関するこの議論から. しかし、冒頭で述べたように、それによって Firebase のシンプル ログインのセキュリティが向上するとは思いません。

于 2014-10-21T18:23:20.390 に答える