HomeController моего приложения mvc 5 имеет атрибут [Authorize].
[Authorize]
public class HomeController : Controller
SimpleController выглядит следующим образом (простой тест):
[AllowAnonymous]
public class SimpleController : Controller
{
// GET: Simple
public ActionResult Index()
{
return View();
}
}
Почему мне нужно входить в систему, когда я сразу перехожу на http://url/simple/index?
Мне нужно дополнительно «принудительно ввести код аутентификации» или зарегистрировать фильтры.
Когда я удаляю [Авторизацию] на HomeController, SimpleController работает нормально, без необходимости входа в систему
[AllowAnonymous]
требуется только в том случае, если вы также добавили[Authorize]
. Если контроллер или действие не требуют аутентификации, удалите атрибут[AllowAnonymous]
. - person Chris Pratt   schedule 20.11.2015HomeController
, которые вы вызываете в представлениях дляSimpleController
? Все дочерние действия либо не должны иметь[Authorize]
, либо, если они находятся в контроллере, украшенном[Authorize]
, должны быть украшены[AllowAnonymous]
. Никакие дочерние действия никогда не должны требовать авторизации. Он всегда должен быть необязательным. - person Chris Pratt   schedule 20.11.2015HomeController
изSimpleController
(дочернее действие и т. д.),HomeController
никогда даже не будет создан экземпляр, не говоря уже о том, чтобы заставить его требовать авторизации наSimpleController
. Что-то еще происходит, не охваченное вашим вопросом. - person Chris Pratt   schedule 20.11.2015