1

次のロジックを実行して、Web セキュリティを使用する ASP.Net MVC ページに 2 段階認証を実装しました。

1) ユーザーが初めてログインし、[ログイン] ページで [次へ] をクリックすると、ユーザーは検証されます。

if (Membership.ValidateUser(model.UserName, model.Password))
{
    ......// Encrypt the password and storing it in a session
    ......// Then redirect to step 2 verification page...
} 

セキュリティ Q を入力するように求められる第 2 段階の検証ページにリダイレクトされます。それが正しければ、新しい Cookie (Cookie2) が作成され、ユーザーは次を使用してログインされます。

 .......//Decrypt the password
_webSecurity.Login(username, decryptedpassword, false)

その後、彼は自分のホームページにリダイレクトされます。

2) 次にアプリにログインしようとすると、2 番目のステップで作成された Cookie (Cookie2) が存在するかどうかのチェックがあります。存在する場合はホームページに直接リダイレクトされ、存在しない場合は再びセキュリティ Q を入力するよう求められます。

したがって、ここに実装が表示されている場合、実際には、ユーザーが 2 段階認証を有効にした場合にのみ、ユーザーをアプリにログインさせています。これを実装するために、Cookie を作成し、パスワードをセッションに保存しています。

これをより良い方法でコーディングできるかどうか誰か教えてもらえますか?セッションと Cookie を使用せずにこれを行うことができると思います。

どんなアイデアや提案も大歓迎です。

ありがとう、

4

0 に答える 0