下の図のようなサインイン/アップページを組み合わせてコーディングしたいと思います。
私の同僚は、これによりスパマー/ハッカーが私たちのシステムに登録されているメールアドレスを確認できるようになり、これは悪いことだと言いました。
しかし、これはハッカーが通常のサインアップページで「このメールはすでに使用されている」と表示されている場合にメールアドレスを確認する方法と同じです。
私の同僚は正しいですか?私のデザインはもっと危険ですか?もしそうなら、なぜ、そしてどのようにそれを変更して、1ページのミニマリストUIを維持しながら、それでも安全なのでしょうか?
しかし、これはハッカーが通常のサインアップページで「このメールはすでに使用されている」と表示されている場合にチェックメールアドレスを取得する方法と同じです。
はい、あなたは正しいです、そしてあなたの同僚は間違っています。この問題は、サインアップページがサインインページと同じページにない場合にも発生します。
この問題の予防策は、2ページであるか1ページであるかに関係なく実装できます(たとえば、ユーザーがサインアップフィールドに何かを入力したときにキャプチャを表示して要求することができ、バックエンドでは明らかに評価できます)サインアップ時のブルートフォース攻撃を防ぐために、サインアップ時に-limitを使用しますが、サインインに対しては制限しません。
そうは言っても、デザインはかなり混乱しているようです。これもサインインページであることは明確ではありません。多くの人がフォームを正しく使用する方法がわからないため、誤って再度サインアップすることを期待します。
私の質問に対するMichaelのコメントによって提案された answer に基づいて、ページを次のように再設計しました。
悲しいことに、これにはユーザーによる追加のクリック(「サインアップ」ボタン)が必要ですが、それは世界の終わりではありません。
新しいデザイン:
フォームは次のように簡素化できると思います。
シンプルなユーザー名とパスワード、2つのボタン-それが言うことを実行する「Sign In」と「Sign Up(I'm New)」
かなり簡単です...
もう一度試すか、パスワードをリセットする機会を与えてください。同じメールアドレスで間違ったパスワードをX回以上入力しようとした場合、[パスワードのリセット]ボタンを表示するだけかもしれません。