Распознавание запроса усечения безопасности ASP.NET MVC в переопределении AuthorizeAttribute
У меня есть контроллер с пользовательским атрибутом Authroize для метода:
class ItemsController
[MyAuthorize]
ActionResult MyMethod()
Я также использую Kendo ASP.NET MVC для создания меню. Kendo предоставляет отличную функцию обрезки безопасности, где, если я пытаюсь добавить пункт меню в MyMethod
, поскольку Kendo создает меню, оно проверит, будет ли текущий пользователь иметь доступ к MyMethod
действие. Я не знаю, как это работает или делается.
Проблема, с которой я сталкиваюсь, заключается в том, что мой код в MyAuthorizeAttribute.AuthorizeCore()
регистрирует, когда пользователь делает запрос и не аутентифицирован или не авторизован для просмотра запрошенной страницы. Это прекрасно работает, за исключением случаев, когда пользователь не имеет доступа к одной из страниц в меню. Каким-то образом Кендо вызывает MyAuthorizeAttribute.AuthorizeCore()
код действия / контроллера, на который указывает пункт меню. Это все хорошо, но я не хочу это регистрировать. Пользователь не сделал запрос к действию / контролеру, это просто внутренняя проверка.
Итак, мой вопрос, есть ли способ для меня, чтобы определить, является ли звонок MyAuthorizeAttribute.AuthorizeCore()
запрос безопасности или фактический запрос страницы?