using System.Linq; using System.Threading.Tasks; using Admin.Core.Common.Attributes; using Admin.Core.Service.Admin.User; namespace Admin.Core.Auth { /// /// 权限处理 /// [SingleInstance] public class PermissionHandler : IPermissionHandler { private readonly IUserService _userService; public PermissionHandler(IUserService userService) { _userService = userService; } /// /// 权限验证 /// /// 接口路径 /// http请求方法 /// public async Task ValidateAsync(string api, string httpMethod) { var permissions = await _userService.GetPermissionsAsync(); //var isValid = permissions.Any(m => m.EqualsIgnoreCase($"{httpMethod}/{api}")); var isValid = permissions.Any(m => m != null && m.EqualsIgnoreCase($"/{api}")); return isValid; } } }