public static bool CheckPermission(UserAppPermissions permission)
        {
            bool result = false;

            if (!HttpContext.Current.User.Identity.IsAuthenticated)
            {
                return(false);
            }

            if (HttpContext.Current.User.IsInRole("Admin"))
            {
                return(true);
            }

            if (HttpContext.Current.Session["PermissionList"] == null)
            {
                IEnumerable <UserPermission> userPermission = GetInstance().GetAllPermissionByUserId(HttpContext.Current.User.Identity.GetUserId());

                HttpContext.Current.Session["PermissionList"] = userPermission;

                result = userPermission.Where(x => x.PermissionID == Convert.ToInt64(permission)).Count() > 0;
            }
            else
            {
                var PermissionList = (IEnumerable <UserPermission>)HttpContext.Current.Session["PermissionList"];
                result = PermissionList.Where(x => x.PermissionID == Convert.ToInt64(permission)).Count() > 0;
            }

            return(result);
        }
Exemple #2
0
        private List <UserAppPermissions> GetUserPermission(string id)
        {
            List <UserAppPermissions> appPerm = new List <UserAppPermissions>();
            var permissions = userPermissionManagement.GetAllPermissionByUserId(id);

            foreach (var userPerm in permissions)
            {
                UserAppPermissions perm = (UserAppPermissions)userPerm.PermissionID;
                appPerm.Add(perm);
            }

            return(appPerm);
        }
 public HasPermissionAttribute(UserAppPermissions permission)
 {
     this._permission = permission;
 }