Я создал новый проект ASP.NET MVC 5 для тестирования атрибута [Authorize]
с помощью FormsAuthentication.SetAuthCookie
. Я просто установил cookie в одном действии (в моем домашнем контроллере):
public ActionResult About()
{
FormsAuthentication.SetAuthCookie("someUser", false);
И я ограничиваю доступ к другому:
[Authorize]
public ActionResult Contact()
{
Когда я запускаю свою веб-страницу и перехожу к /home/contact
, я правильно перенаправляюсь на страницу входа. Затем я перейду к /home/about
, получу свой файл cookie и вернусь на страницу контактов. Но я все еще перенаправлен на страницу входа в систему - cookie не аутентифицирует/не разрешает мне.
В отладчике HttpContext.User.Identity.IsAuthenticated == false
, когда я загружаю страницу About несколько раз (то есть, он никогда не считает меня аутентифицированной даже после установки файла cookie auth).
Есть ли еще один шаг, который нужно сделать здесь? Мне не нужно устанавливать собственный IPrincipal для базовой проверки подлинности, должен ли я?