devise / railsによる認証が必要なアプリケーションを開発しており、ユーザーが確認メールなしでサインインできるようにすることにしました。しかし、深く考えた後、この奇妙なワークフローが思い浮かびました。
誰かが私のメールに登録し、それを使い始め、後で盗んだメールでアプリに参加することにした場合はどうなりますか?男は確認しませんでしたが、私は彼のアカウントを保持するか、ブロックするか、削除する必要がありますか?(補足:電子メールは一意である必要があります)
devise / railsによる認証が必要なアプリケーションを開発しており、ユーザーが確認メールなしでサインインできるようにすることにしました。しかし、深く考えた後、この奇妙なワークフローが思い浮かびました。
誰かが私のメールに登録し、それを使い始め、後で盗んだメールでアプリに参加することにした場合はどうなりますか?男は確認しませんでしたが、私は彼のアカウントを保持するか、ブロックするか、削除する必要がありますか?(補足:電子メールは一意である必要があります)
アプリケーションの設計者は、あなたが管理します。あなたはその状況をあなたが望むように扱うことができます。
Facebookが「未確認」のアカウント作成をどのように処理するかはわかりません。登録した人なら誰でも一定時間内に確認リンクをクリックして、そのメールを他のユーザーが利用できるようになると思います。これは、人々がサイトにスパムを送信するのを防ぎ、正当なユーザーが登録するのを効果的に「電子メールでブロック」するのを防ぐので、私には理にかなっています。未確認のアカウントが電子メールを「使い切る」ことを永久に許可すると、次の状況に遭遇する可能性があります。
悪意のあるユーザーは、偽の電子メールを使用して何千もの「偽の」アカウント登録を試みます。これらの電子メールは、確認されるまで永遠に待機しますが、(まだ)存在しないため、「使用中」の電子メールとして機能することはありません。しばらくして、正当なユーザーがGMailを使用して電子メールアカウントを作成したり、悪意のあるユーザーが以前に送信した「偽の」電子メールの1つと一致する人を作成したりします。この正当なユーザーは、悪意のあるユーザーがこのアドレスを「電子メールでブロック」しているため、自分の電子メールをサービスに登録できません。
私の個人的な意見は、登録者に自分の住所が正当であると確認するための一定の時間を与えることです。その時間枠内に確認できない場合は、アカウント作成の試みを破棄してください。
私は非常によく似た問題を抱えており、私が到達した解決策(まだ実装されていません)は、その電子メールで他に確認済みのユーザーがいない場合に、ユーザーに希望の電子メールを選択させることです。
登録すると、ユーザーは非アクティブ/非アクティブになり、確認の電子メールを受信します。リンクをたどると、ユーザーは自分の電子メールを確認し、他のユーザーはそれを使用できなくなります。
これらのサイトのほとんどでは、電子メールリンクを送信して電子メールを確認する必要があります。その後、アカウントを作成できます。これは、誰かが他の人の電子メールを盗もうとする問題を簡単に回避します。彼らがあなたの電子メールアカウントにログインできない限り、彼らは単にできません。
「確認メールの再送信」アクション(必要)または「パスワードを忘れた」アクション(必要)がありますか?どちらの場合も、自分のメールにアクセスできるのは自分だけなので、自分のメールアドレスでアカウントを取り戻すことができました。
また、アカウントを作成し、それを忘れて、同じメールアドレスで別のアカウントを作成するユーザーの場合についても考えてみてください。