web-dev-qa-db-ja.com

サイトが「パスワード」と「ユーザー名」の取得を2つの別々の操作に分割するのはなぜですか?

しばらく使用していないサイトに戻ると、この方法が非常に面倒です。最初にユーザー名を取得するために電子メールを入力し、次にユーザー名and電子メールを入力してパスワードをリセットする必要があります。

サイトはなぜこのように分割するのですか?それはより良いUXと信じられていますか?より良いセキュリティ?

つまり、どちらの場合も弱点は私の電子メールなので、誰かがそれを手に入れたら、ユーザー名とパスワードの両方を取得することになります。それでは、メールを提供するだけでよい1つの機能に結合しないのはなぜですか?

12
Svish

さて、これは古いアプローチの一種です。しばらく前のユーザー名は通常、2つの目的で使用されていました。IDとして(ログオンするため)、表示するために(たとえば、コメントを投稿するとき)です。私はそれがスタンドアロンのアプリとオペレーションシステムから来たと信じています。一方、ユーザーの電子メールが通常主要なものであるWebでは機能しません。

最近のサイトでは、ログオン方法と他のユーザーとの通信方法を分離することにより、UXが向上しています。

  • 他のユーザーと通信するとき、彼らはあなたの名前を見るだけで、実際にログインする方法(メール、スマートカードなど)を知りません。
  • それがあなたの身元になると、電子メール(または同様の一意のID)が使用されます。したがって、ログイン機能を回復するには、メールアドレスを入力するだけで、パスワードの回復プロセスが始まります。名前は関係しません。

したがって、最後にあなたの質問に答えると、この間違ったログイン方法は間違った回復プロセスも引き起こします。

5
ADOConnection

その理由は、人々がパスワードを忘れたときに、パスワードを取得するために使用できる情報がいくつかあるためだと思います。

  1. ユーザー名。
  2. 彼らのメール
  3. 彼らのセキュリティの質問。
  4. 等.

ただし、ユーザー名を忘れた場合、サイトはユーザー名を知らないため、ユーザー名を使用してユーザー名を見つけることはできません。そのため、サイトはさまざまな情報を使用して、探しているものを見つける必要があります。

はい、すべての場合において、その人はまだ自分のメールを持っています。これは自分のアカウントを識別するために使用できますが、アカウントに関する情報をできるだけ多く取得することをお勧めしますので、間違いはありません。プロセスを分割することにより、サイトはアカウントに関するできるだけ多くの情報を収集し、100%確実にすることができます。

さらに、ほとんどの場合、ユーザーはパスワードを覚えていますが、ユーザー名は覚えていません。その逆も同様です。プロセスを分離することで、プロセスが簡単になります。

1
user4662

私はそれが人々が自分のパスワードを覚えることができるが自分のユーザー名を忘れてしまった場合の純粋に助けになると思います。次に、サイトはユーザー名をメールアドレスに送信するだけです。これは、プレーンテキストでパスワードを送信する必要がないため、より安全です。または、ユーザーのパスワードを不必要にリセットする必要があるため、煩わしさが軽減されます。つまり、ユーザーはパスワードを覚えているときに、パスワードのリセットプロセスを実行する必要があります。

ユーザーがパスワードを忘れた場合は、「パスワードを忘れた」というリンクと、ユーザー名と新しいランダムに生成されたパスワード(またはワンタイムトークン)が記載された電子メール(またはワンタイムトークン)をユーザーのメールアドレスに送信する必要があります。

これに加えて question のように、サイトはユーザー名の入力でユーザー名とメールの両方を受け入れることで、ユーザーがユーザー名を忘れないようにすることもできます。次に、「パスワードを忘れた」リンクのみが必要になります。

1
icc97

ワンストップショップを使用してパスワードをリセットし、ユーザーにクライアントIDとユーザー名を通知することを検討しましたが(私たちは多目的Webアプリなので、両方が必要です)、いくつかの理由でこれに反対しました。

  1. セキュリティ:1つのフィールドを使用すると、誰かがユーザー名を知ることができなくなり、アカウントのパスワードを1つのステップで変更することもできます。

  2. シンプルさ:バックエンドサービスの性質により、ログインシステムで使用される複数のサービスがあり、ユーザー名の忘れやパスワードの忘れなど、複数のフィールドを簡単に設定できます。

  3. ユーザーガイダンス:「パスワードをリセットするには、電子メールアドレスORクライアントIDとユーザー名)を入力するか、個別に入力します(ただし、非常に近接しています)。 「クライアントIDやユーザー名を忘れた場合は、メールアドレスを入力してください」というフォームは、クライアントのサービス向上に役立ちました。

1
Dave Hyman

ログイン時の「プログレッシブ開示」が理にかなっているもう1つの理由があります。ユーザーは、ログインしてアプリケーションのメイン画面を表示する前に、いくつかのタスクを完了する必要があります。

  • パスワードを変更する(例:アカウントがハッキングされ、ユーザーがパスワードを変更する必要がある場合)
  • 完全なプロファイル設定
  • セキュリティの質問に答える
  • 時々キャプチャに答える

そのような場合、「プログレッシブ開示」は、各ステップに追加の画面を追加することにより、ログインプロセス中にこのような追加のステップを1つ以上追加するのに役立ちます。

これは拡張ログインプロセスの一部であるため、そのような追加が正常に実行されない場合、ログインが妨げられる可能性があります。

利用可能な段階的な開示がない場合、このような追加の手順は、ログイン成功後の2番目の手順で実装する必要があります。また、これには追加のフォームと追加の画面も必要です。

したがって、プログレッシブ開示は、拡張可能なモジュール式のログインプロセスに適したアプローチです。

0
WeSee

これはあなたの安全のためです。

ID(ユーザー名)はパスワードから分離する必要があります。これらの2つのことは異なるシステムによって処理されるためです。

Googleは、新しいテクノロジーで2番目の部分(パスワード)を強化する方向に進んでいます。これは、すべてが1つのページにある場合は機能しません。

核となる問題は盗難です。両方が1か所にあると、簡単に盗むことができます(フィッシング、詐欺師、なりすましサイト、ミットなど)。この分離により、盗難を完全にブロックすることが可能になります(新技術により)。

0
Anon Coward