Доступ к связанной модели через AuthorizationHandler - PullRequest
1 голос
/ 06 мая 2019

Добавление дополнительных политик к авторизации позволяет последующим политикам возвращать 403 вместо 401, что работает для того, что я хочу сделать.

Однако, когда у меня есть что-то вроде:

protected override Task HandleRequirementAsync(AuthorizationHandlerContext context, MustHaveResourceAccessRequirement requirement)
{
    if (context.Resource is AuthorizationFilterContext filterContext)
    {
        var request = filterContext.RouteData.Values["request"];

        ...
    }
}

Я не могу получить доступ к request, поскольку он не является частью самого маршрута ...

Действие контроллера:

public ActionResult GetResource([FromBody] GetResourceRequest request)

Поскольку это [FromBody], а не [FromRoute], он недоступен.

Можно ли получить связанную модель в AuthorizationHandler без необходимости вручную определять, является ли она из запроса / маршрута / тела, поскольку я хочу использовать это для множества различных запросов, у меня не может быть каждого запроса, требующего указать другой аргумент на каждом маршруте.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...