Почему base.IsAuthorized всегда возвращает false при создании пользовательского AuthorizeAttribute? - PullRequest
0 голосов
/ 17 апреля 2019

Этот фильтр проверяет правильность входящих аргументов.Это не делает проверки безопасности как проверка токенов сессии.

Я хотел бы сохранить любую существующую логику безопасности / авторизации на месте и просто добавить свой маленький кусочек для проверки ввода.

 public class ValidateMachineIdTokenAttribute : AuthorizeAttribute
    {
        protected override bool IsAuthorized(HttpActionContext actionContext)
        {
            var baseAuthorized = base.IsAuthorized(actionContext); // <-- always false
            CheckInput(actionContext); // throws exception if no good
            return true;
        }
       ...
   }

Я мог бы игнорировать base.IsAuthorized, но, как я уже сказалЯ хочу сохранить любую охрану на месте.

1 Ответ

0 голосов
/ 17 апреля 2019

Если вы не хотите, чтобы авторизация затрагивалась, вы должны использовать ActionFilterAttribute вместо

...