Пример #1
0
        public bool IsUserPermitted(Guid userGuid, EnumGlobal.ResourceType resourceType, EnumGlobal.ResourceActionPermission permission)
        {
            //Todo: Due to singleton issue, need to research

            using (var conn = new ESSSingletonDbContext(_context.ConnectionString))
            {
                var sql    = @"select gp.* from GroupPermission gp
                        inner join Resources r on r.ResourceGuid=gp.ResourceGuid
                        inner join ResourceActions ra on ra.ResourceGuid=gp.ResourceGuid and ra.ActionGuid=gp.ResourceActionGuid
                        inner join [Group] g on g.GroupGuid=gp.GroupGuid
                        inner join [GroupUser] gu on g.GroupGuid=gu.GroupGuid
                        Where gu.UserGuid=@UserGuid and r.Name=@ResourceType and ra.ResourceAction=@ResourceAction";
                var result = conn.Connection.Query <GroupPermission>(sql, new { UserGuid = userGuid, ResourceType = resourceType.ToString(), ResourceAction = permission.ToString() });
                if (result.AsList().Count > 0)
                {
                    conn.Connection.Close();
                    return(true);
                }
                else
                {
                    conn.Connection.Close();
                    return(false);
                }
            }

            // return true;
        }
Пример #2
0
 private bool IsAuthorizedForResource(EnumGlobal.ResourceType resourceType, EnumGlobal.ResourceActionPermission action)
 {
     try
     {
         var userGuid = UserHelper.CurrentUserGuid(HttpContext);
         var result   = _groupPermission.IsUserPermitted(userGuid, resourceType, action);
         return(result);
     }
     catch (Exception ex)
     {
         return(false);
     }
 }
Пример #3
0
 public IActionResult IsAuthorized(EnumGlobal.ResourceType resourceType, EnumGlobal.ResourceActionPermission action)
 {
     try
     {
         var userGuid = UserHelper.CurrentUserGuid(HttpContext);
         var result   = _groupPermission.IsUserPermitted(userGuid, resourceType, action);
         return(Json(new { status = result }));
     }
     catch (Exception ex)
     {
         return(Json(new { status = false, message = ex.Message }));
     }
 }
Пример #4
0
 public bool IsUserPermitted(Guid userGuid, EnumGlobal.ResourceType resourceType, EnumGlobal.ResourceActionPermission permission)
 {
     return(_repository.IsUserPermitted(userGuid, resourceType, permission));
 }