ユーザー名とワンタイムパスワードによる認証の別のオプションを使用して、従来のフォーム認証モードを実装しようとしました。
だから私はLogin.aspxとLoginOTP.aspxを持っています
LoginOTP では、response.redirect を Default.aspx に使用します。問題は、ユーザーが従来の方法で認証されていないと見なされるため、asp.net が Login.aspx にリダイレクトされることです。
そのビジネスユースケースを実装する方法は?
ユーザー名とワンタイムパスワードによる認証の別のオプションを使用して、従来のフォーム認証モードを実装しようとしました。
だから私はLogin.aspxとLoginOTP.aspxを持っています
LoginOTP では、response.redirect を Default.aspx に使用します。問題は、ユーザーが従来の方法で認証されていないと見なされるため、asp.net が Login.aspx にリダイレクトされることです。
そのビジネスユースケースを実装する方法は?
同じユーザー ベースを持っていると仮定していますが、1 回限りのログイン (パスワードのリセットなど) が必要な場合と、通常どおりログインする必要がある場合があります。
その場合、OTP の場合、OTP を検証したら、そのFormsAuthentication.SetAuthCookie()
メソッドを使用して、通常のパスワードに対して検証せずにログインできます。例えば
FormsAuthentication.SetAuthCookie("userA", false);
上記の例では、ユーザーは「userA」というユーザー名でfalse
ログインしており、セッション間でログインを維持するかどうか (たとえば、「Remember Me」がチェックされているかどうか) です。
FormsAuthentication.SetAuthCookie()
メソッドのドキュメントは、 http: //msdn.microsoft.com/en-us/library/system.web.security.formsauthentication.setauthcookie.aspxにあります。