パスワードを忘れた場合の機能を構築しようとしているmvc3アプリケーションを構築しました。プロセスは次のとおりです。
最初に、ユーザーはユーザー名を入力するように求められます
ユーザー名が存在する場合、セキュリティの質問が表示されます
ユーザーが正解を入力すると、新しく作成されたパスワードが登録時にデータベースに保存されている電子メールに送信されます
ここでは、2番目のステップまで完了し、回答の確認も完了しました。私が知りたいのは、電子メールに送信される新しいパスワードを作成するための最良の方法は何かということです。ランダムな文字列を作成するために検索し、これを見つけました。
var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
var random = new Random();
var result = new string(
Enumerable.Repeat(chars, 8)
.Select(s => s[random.Next(s.Length)])
.ToArray());
同じランダムな文字列を再度作成する可能性があるかどうかはわかりませんが、新しいパスワードには適さない可能性があります。新しいパスワードを生成するための最良の方法は何でしょうか。どんな助けでもいただければ幸いです。ありがとう!