Ejemplo n.º 1
0
 public async Task OnAuthorizationAsync(AuthorizationFilterContext context)
 {
     try
     {
         await authorizationService.AuthorizeAsync(context, options.Value, new CancellationToken());
     }
     catch (Exception ex)
     {
         context.Result = actionResultFactory.HandleException(context, ex);
     }
 }
        public static async Task AuthorizeAsync(this IAuthorizationService authorizationService, AuthorizationFilterContext context, AspNetAuthorizationOptions options, CancellationToken cancellationToken)
        {
            if (!(context.ActionDescriptor is ControllerActionDescriptor actionDescriptor))
            {
                return;
            }

            var authorizeInfo = GetAuthorizeInfo(actionDescriptor, options);

            if (authorizeInfo != null)
            {
                await authorizationService.AuthorizeAsync(new IAuthorizeInfo[] { authorizeInfo }, cancellationToken);
            }
        }