1
私のコントローラアクションの1つが認証を拒否していますが、その理由を理解できません。これは、Visual Studioでの標準的なMVC 5プロジェクトテンプレートからちょうど標準VerifyCodeアクションだし、それは次のようになります。AllowAnonymousはASP.NET MVC 5で断続的にしか動作しません
[AllowAnonymous]
public async Task<ActionResult> VerifyCode(string provider, string returnUrl, bool rememberMe)
{
if (!await SignInManager.HasBeenVerifiedAsync())
{
return View("Error");
}
return View(new VerifyCodeViewModel { Provider = provider, ReturnUrl = returnUrl, RememberMe = rememberMe });
}
私のアプリケーションは、ユーザーせずに、このコントローラは、ログインし、それが戻ってログインするユーザーを送り当たるたびそれはAllowAnonymousで装飾されています。これとは対照的に、この標準コントローラの動作:
ログインユーザーなしで直接ヒットした場合は正常に動作します。バックログインページに私を送るためにこれらの原因の最初の二つの私のアプリケーションを叩く
// to see if it's down to the parameters
[AllowAnonymous]
public ActionResult VerifyCode()
{
return View(new VerifyCodeViewModel { Provider = "", ReturnUrl = "", RememberMe = false });
}
// to see if it's down to the action name
[AllowAnonymous]
public ActionResult VerifyCod()
{
return View(new VerifyCodeViewModel { Provider = "", ReturnUrl = "", RememberMe = false });
}
// to see if it's down to the viewmodel
[AllowAnonymous]
public ActionResult ForgotPassword()
{
return View(new VerifyCodeViewModel { Provider = "", ReturnUrl = "", RememberMe = false });
}
:
ので、試してみて、何が起こっているかを把握する
は、私は次のテストの私のコントローラにアクションを追加しました。 3番目のボタンを押すと、ForgotPasswordビューが問題なくレンダリングされます。私はカスタム認証フィルターを持っていません。ここで何が起こっているのでしょうか?
彼らは説明されているように設定されます。 –
コントローラー自体にはどのようなフラグが設定されていますか? –