mvc6 resulta não autorizado no redirecionamento
Eu tenho tentado impedir o redirecionamento quando retorno um NotAuthorized IActionResult de um Controller, mas, independentemente das minhas tentativas, o NotAuthorized é traduzido para um redirecionamento.
Eu tentei o que é mencionadoaqui (mesmo problema, usando a estrutura beta mais antiga, eu uso 1.0.0-rc1-final). Não tenho o espaço de nome Notificações (foi removido em rc1-final).
Este é o meu controlador de login:
[HttpPost]
[AllowAnonymous]
public async Task<IActionResult> Login(LoginViewModel model, string returnUrl = null)
{
if (ModelState.IsValid)
{
var result = await _signInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, lockoutOnFailure: false);
if (result.Succeeded)
{
return Ok(model);
}
if (result.IsLockedOut)
{
return new HttpStatusCodeResult((int)HttpStatusCode.Forbidden);
}
else
{
return HttpUnauthorized();
}
}
return HttpUnauthorized();
}
No Startup.cs, tentei variações sobre isso:
services.Configure<CookieAuthenticationOptions>(o =>
{
o.LoginPath = PathString.Empty;
o.ReturnUrlParameter = PathString.Empty;
o.AutomaticChallenge = false;
});
Sempre que um login falha (ignore que a senha é retornada em Ok) e deve resultar em uma página 401 vazia, recebo um redirecionamento para / Account / Login. Qual é o truque aqui?