コード例 #1
0
        protected override Task HandleRequirementAsync(AuthorizationHandlerContext context, PermissionRequirement requirement)
        {
            var endpoint = context.Resource as RouteEndpoint;

            string s = endpoint.RoutePattern.RawText;

            string disp = endpoint.DisplayName;

            List <OmsBlog> omsBlogs = OmsBlogService.GetAllAsync().Result;

            //endpoint.RoutePattern.

            var descriptor = endpoint?.Metadata?
                             .SingleOrDefault(md => md is ControllerActionDescriptor) as ControllerActionDescriptor;

            if (descriptor == null)
            {
                throw new InvalidOperationException("Unable to retrieve current action descriptor.");
            }

            var _controllerName = descriptor.ControllerName;
            var _actionName     = descriptor.ActionName;

            //blog/add

            //{blog/}

            string name = context.User.Identity.Name;

            var role = context.User.FindFirst(c => c.Type == ClaimTypes.Role);

            if (role != null)
            {
                var roleValue = role.Value;
                context.Succeed(requirement);

                context.Fail();
            }
            return(Task.CompletedTask);
        }
コード例 #2
0
 public async Task <IActionResult> List()
 {
     return(new JsonResult(await OmsBlogService.GetAllAsync()));
 }