パスワードを忘れてパスワードをリセットした場合や、紛失したパスワードを戻す方が良いでしょうか?パスワードをリセットするか、紛失したパスワードを送り返す方が良いですか?
答えて
第三者が郵送されたパスワードを傍受する可能性があるので、パスワードをリセットする方が安全です。
編集:リセットすると、ユーザーに新しいパスワードを定義するためのトークンを送信するという共通のパターンを意味すると見なします。明らかに新しいパスワードを生成してメールで送信するだけであれば、元のパスワードを送信するのと同じように安全ではありません。もちろん、トークンは1回だけ使用可能でなければなりません。それ以外の場合は、パスワードと同じくらい良いでしょう。ここだけのリスク
は、第三者が、ユーザーが行う前にパスワードを変更トークンを傍受していることです。これはパスワードを送信するよりもリスクが低くなります。なぜなら、盗んだパスワードは、パスワードが使用されている限り有用であり、トークンは一度しか有用ではないからです。と誰かがトークンを使用したことを発見します。
リスクが最も高いのは、電子メールトラフィックの盗聴者ではなく、メールを後で見ている人やウェブメールアカウントをハッキングしている人物なので、メールボックスにはまだ有効なパスワードが残っています。
パスワードを紛失したままに送信すると、それらを平文で保管しているか、安全ではない双方向暗号化で暗号化されていることを意味します。
私はパスワードをresetingため、次のWordpressのメカニズムをお勧めしたい:
- はランダムなパスワード を生成し、それを送信しますページ へ
- フォロー確認リンクをリセット パスワードの確認とのリンクを送信ユーザに
- 新しいパスワードでユーザをログインさせ、 をより良いものに変更してください。 思い出してください。
私はリセットパスワードを送信することを考えていましたが、ユーザーが古いパスワードを送り返す方が簡単だと思われました。 –
何かあれば、それは信頼の問題です。使用しているすべてのサイトの管理者が、あなたが選んだパスワードを知りたいと思っていますか?確かに、人々はサイトごとに異なるパスワードを使用するのが理想ですが、実際にはほとんどありません。それは面倒です。 – Amber
Eimantasの返信にちょっと追加してください。セキュリティのため、サーバーは決してユーザーのパスワードをプレーンテキストで保存しないでください。一方向暗号化パスワードを保存する必要があります。ユーザーがログインすると、クライアントはjavescriptでパスワードを暗号化し、暗号化された文字列をサーバーに送信する必要があります。これは、Unixログインがどのように動作するかのようなものです。多くの場合、ユーザーは異なるWebサイトで同じパスワードを使用します。平文のままにしておくと、それらのすべてにアクセスできます。ユーザーとして、私は心配しています。 – user172818
最初にパスワードを送り返すべきではありません。あなたの最高のチャンスは、ランダムワンタイムパスワードを生成し、ユーザーの登録された電子メールアドレスに送信することです。
セキュリティに関する質問(「最初の犬の名前」など)やその他の神秘を導入することはできますが、ユーザーはパスワードよりもこれらの回答を忘れて、正方形に戻ってしまう傾向があります。
しかし、セキュリティ上の質問を使用する場合は、バックアップパスワードとして扱うことはできませんが、パスワードリセットメカニズムへのアクセスのゲートキーパーとしてのみ使用してください。そうしないと、あなたが行った高校を調べて「あなたの配偶者とどこで会いましたか」の回答としてメールアカウントを壊してしまいます。 (去年Sarah Palinに起こったように)。 –
しかし、最初の確認メールの後にランダムパスワードを送信することが重要です。あなたがこれを逃した場合、悪意のある人がパスワードを要求ボタンをクリックし、あなたのアカウントにアクセスできないままにあなたのメールアドレスを入力することができます。最初に電子メールを確認せずに元のパスワードでログインする場合は、ログインに失敗します。これは悪いユーザー体験と迷惑です。ボットスクリプトによって使用されるこの手法は、サービスを使用して既知の電子メールアドレスごとにサービス拒否を実行できます。 – DEAD10CC
多くのユーザーは、多くのWebサイトで同じパスワードを使用しています。人々のプライバシーを尊重するために、SHA-256やMD5などのハッシュ関数を使用して一方向に暗号化されたパスワードを保存することをお勧めします。しかし、辞書攻撃はこれらのパスワードで簡単に実行できるので、追加の塩なしでそれらを使用すべきではありません。ユーザーのプライバシーを守ることは、あなたとあなたの顧客との間に信頼できる関係の基礎を形成します。
Eimantesに記載されているパスワードリセットメカニズムもお勧めします。確認メールメッセージは、このプロセスの主なタスクです。偽の要求がアクセスできないアカウントにつながるのを避けるため、ユーザーにパスワードリセット要求を確認させてください。
ランダムなパスワードを計算する代わりに、新しいパスワードを入力できるページにユーザーを転送することができます。
また、sslを使用せずにhttp経由でパスワードを送信することは、特にwlanホットスポットなどの公開ネットワークでは非常に安全ではないことに注意してください。 Diffie-Hellman-Key-Exchangeと組み合わせたHMACのようなメッセージ認証方法を見てください。または、ログイン時に少なくとも追加のhash + salt関数を使用します。
SHA-256とMD5は高速すぎて安全とはみなされません。 BCryptまたはPBKDF2をチェックしてください。 –
- 1. スタンドアロンシステムのパスワードを紛失しました。ドメインコントローラがクラッシュしました。パスワードをリセットできません。
- 2. アンドロイドキーストア(.jks)からパスワードを紛失し、そのキーからパスワードを紛失する危険性はありますか?
- 3. 私はアンドロイドのキーストアファイルのパスワードを紛失しました
- 4. インポートキーファイルのパスワードを紛失しました - vs2008
- 5. パスワードをJavaでリセットする
- 6. メールでパスワードをリセットする
- 7. 署名証明書の紛失パスワード
- 8. ワードプレスプロファイルからパスワード強度チェッカーを削除し、パスワードをリセットする方法ページ
- 9. 新しいパスワードをリセットすると古いパスワードが一致する
- 10. CakePHP 3パスワードをリセットする
- 11. パスワードをリセットするpython program
- 12. パスワードをリセットする7
- 13. PHPのLDAPパスワードは、ユーザーがにリセットしようとしているパスワードを検出する方法はあり
- 14. Laravel 5.4のパスワードをリセットする方法
- 15. Apache Archivaパスワードをリセットする方法
- 16. iWikiのパスワードをリセットする方法
- 17. github push認証が失敗しました。パスワードをリセットする方法を探しています
- 18. Jenkinsのパスワードをリセットするにはどうしたらいいですか?
- 19. Codeigniter - パスワードをリセットするためのフォーム
- 20. ユーザーにパスワードをリセットする良いオプションを探してください
- 21. あるマシンではパスワードが紛失する可能性がありますが、別のマシンではパスワードがありません
- 22. が見つかりませんpowershellを使用してメールボックスのパスワードをリセットする際のパスワード引数
- 23. C#を使用してActive Directoryでユーザーのパスワードをリセットした後、古いパスワードと新しいパスワードが両方とも動作しています
- 24. Meteorアカウントのパスワードをリセットした後にログインを無効にする - パスワード
- 25. APIコールでパスワードをプレーンテキストで送信する必要がある場合、データベースにパスワードを保存する最も良い方法は何ですか?
- 26. AzureのカスタムポリシーでパスワードをリセットするB2C
- 27. Ubuntuでmysql rootパスワードをリセットする
- 28. md5()とcrypt()で生成されたパスワードをリセットする方法
- 29. AWS Redshiftでmd5のパスワードをハッシュしたときにパスワード認証が失敗するのはなぜですか?
- 30. Sql Server - 'sa'パスワードを回復する(リセットしない)方法
をご覧ください: http://stackoverflow.com/questions/647514/what-is-the-best-way-to-implement-2-way-encryption-with-php – Jacco
元のパスワードは最初は、回復不能にハッシュされる必要があります。 – Stann