none
Заблокировать доступ для пользователя к выполнению процедур контроллера RRS feed

  • Общие обсуждения

  • Здравствуйте. Начну с примера, есть часть процедура в которой возвращается ActionResult. Она нужна чтобы на командной панели пользователя отображались или поле для ввода или поле с именем пользователя и другой информацией. Вызывается в мастер странице. Все работает нормально, но как запретить пользователю вводить адрес напрямую к контроллеру? http://localhost:49755/Account/UserPanel. А то некрасиво получается =(

    @{Html.RenderAction("UserPanel", "Account");}  
     public ActionResult UserPanel()
            {
                if (HttpContext.User.Identity.IsAuthenticated)
                {
    
                    return View("UserLogOnPanel");
                }
                else
                {
                    return View("UserLoginPanel");
                }
            }
        

    18 сентября 2013 г. 8:38

Все ответы

  • "но как запретить пользователю вводить адрес напрямую к контроллеру" - не совсем понятна ваша идея, что вы понимаете под запретом? Запретить можно GET или POST запрос или поставить атрибут авторизации, но вот полностью запретить - тогда контроллер станет недоступным.

    Сделаем содержимое сообщества лучше, вместе!

    18 сентября 2013 г. 12:23
    Модератор
  • Можно убрать возможность пользователю переходить по ссылке /Account/UserPanel, при переходе грузится только панель, остальной сайт не грузится.
    18 сентября 2013 г. 15:33
  • Ну это логично, ведь метод контроллера доступен из вне. Если у вас нет необходимости вызывать его из вне (через HTTP), то сделайте его приватным. Вы вызываете его через AJAX?

    Сделаем содержимое сообщества лучше, вместе!

    18 сентября 2013 г. 15:53
    Модератор
  • Нет, обновляется вся страница
    18 сентября 2013 г. 17:46
  • А UserLogOnPanel это у вас что? Если частичное представление и не рендерится через AJAX, то вообще не имеет смысла вызывать его через контроллер.

    Сделаем содержимое сообщества лучше, вместе!

    19 сентября 2013 г. 5:03
    Модератор
  • Уважаемый пользователь, не оставляйте топик без ответов.

    Сделаем содержимое сообщества лучше, вместе!

    26 сентября 2013 г. 6:05
    Модератор