public static bool HasPermission(this IPrincipal user, ApplicationPermissionNames permissionName) { var userClaims = Cache.DataCacher.FindOrCreateValWithSimpleKey( user.Identity?.Name, () => CurrentComponentContext.Resolve <ULODBEntities>().AspNetUsers.Include(u => u.AspNetUserClaims).FirstOrDefault(u => u.UserName == user.Identity.Name)?.GetClaims(), UloHelpers.ShortCacheTimeout ); return(userClaims != null && userClaims.GetApplicationPerimissionRegions(permissionName).Count > 0); }
public static bool HasPermission(ClaimsPrincipal user, ApplicationPermissionNames permission) { try { return(user.Claims.GetApplicationPerimissionRegions(permission).Count > 0); } catch (Exception) { return(false); } }
public bool HasPermission(ApplicationPermissionNames permissionName, IPrincipal user = null) { return(true); /* * user = user ?? Acc.HttpContext?.User; * if (user != null && user.Identity != null && user.Identity.IsAuthenticated) * { * return Cacher.FindOrCreateValue( * Cache.CreateKey(user.Identity.Name, permissionName), * () => * { * var claims = DB.AspNetUsers.Include(u => u.UserAspNetUserClaims).AsNoTracking().FirstOrDefault(u => u.UserName == user.Identity.Name)?.GetClaims(); * if (claims != null) * { * return claims.GetApplicationPerimissionRegions(permissionName).Count > 0; * } * return false; * }, PortalHelpers.ShortCacheTimeout * ); * } * return false; */ }
public static bool HasPermission(this System.Security.Principal.IPrincipal user, ApplicationPermissionNames permissionName) { if (!user.Identity.IsAuthenticated) { return(false); } var cp = user as System.Security.Claims.ClaimsPrincipal; return(cp != null && cp.Claims.GetApplicationPerimissionRegions(permissionName).Count > 0); }
public ApplicationPermissionRequirement(ApplicationPermissionNames permission) : base(PermissionHelpers.CreateClaimType(permission), permission.ToString()) { }
private static string CreateClaimType(ApplicationPermissionNames permissionName) => ClaimHelpercs.UloClaimTypePrefix + "ApplicationPermissionClaim";
public ApplicationPermissionAuthorize(ApplicationPermissionNames permission) : base(nameof(ApplicationPermissionNames), typeof(ApplicationPermissionNames), permission) { }
public static string GetPolicyName(ApplicationPermissionNames permission) => CreatePolicyName(nameof(ApplicationPermissionNames), typeof(ApplicationPermissionNames), permission);