xf 2 anos atrás
pai
commit
b6d8dc4638
1 arquivos alterados com 10 adições e 4 exclusões
  1. 10 4
      src/Hotline.Api/Permissions/PermissionHandler.cs

+ 10 - 4
src/Hotline.Api/Permissions/PermissionHandler.cs

@@ -2,6 +2,7 @@
 // Licensed under MIT license. See License.txt in the project root for license information.
 
 using System.Security.Claims;
+using Hotline.SeedData;
 using IdentityModel;
 using Microsoft.AspNetCore.Authorization;
 
@@ -33,11 +34,16 @@ namespace Hotline.Permissions
             if (scops.Any(d => d == "hotline_api"))
             {
                 var roles = context.User.Claims.Where(d => d.Type == ClaimTypes.Role).Select(d => d.Value).ToList();
-                var permissions = _permissionManager.RolesToPermissions(roles);
-
-
-                if (permissions.Any(d => requirement.PermissionName == d))
+                if (roles.Exists(d => d == RoleSeedData.AdminRole))
+                {
                     context.Succeed(requirement);
+                }
+                else
+                {
+                    var permissions = _permissionManager.RolesToPermissions(roles);
+                    if (permissions.Any(d => requirement.PermissionName == d))
+                        context.Succeed(requirement);
+                }
             }
 
             return Task.CompletedTask;