когда я хочу перенаправить после установки cookie, он сообщает об ошибке HTTP 401.0 — несанкционированный

#c# #asp.net-mvc #authentication #asp.net-mvc-5

#c# #asp.net-mvc #аутентификация #asp.net-mvc-5

Вопрос:

Вот мой контроллер для входа в систему:

 [HttpPost]
public ActionResult Login(LoginViewModel login, string ReturnUrl = "/Admin/pages/index")
{
    if (ModelState.IsValid)
    {
        if (loginRepository.IsUserExist(login.UserName, login.Password))
        {
            FormsAuthentication.SetAuthCookie(login.UserName, login.RememberMe);
            return Redirect(ReturnUrl);
        }
        else
        {
            ModelState.AddModelError("UserName", "Username and password is incorrect");
        }
    }
    return View();
}
 

и я перенаправляю его после установки файла cookie в область администратора, но он выдал мне ошибку:

«HTTP Error 401.0 — Unauthorized»

Мой контроллер админки:

 [Authorize]
public class PagesController : Controller
{
    public ActionResult Index()
    {
        return View(pageRepository.GetAllPage());
    }
}
 

Ответ №1:

Я обнаружил, что проблема была в web.config

необходимо добавить следующую строку в web.config:

 <authentication mode="Forms">
  <forms name="Website" loginUrl="/Account/login" timeout="43200"></forms>
</authentication>